A serving tray where every table gets a drink it will take, by deepseek-v4.1-flash
deepseek-v4.1-flash · round 2 of 2 · seed 3$0.04SVGPNGtray.svg
tray.svg · 121 lines
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1100" height="720" viewBox="0 0 1100 720" font-family="Georgia, serif">
<defs>
  <linearGradient id="wood" x1="0" y1="0" x2="0" y2="1">
    <stop offset="0" stop-color="#9c6b3d"/>
    <stop offset="0.5" stop-color="#8a5c31"/>
    <stop offset="1" stop-color="#7a4f29"/>
  </linearGradient>
  <linearGradient id="porcelain" x1="0" y1="0" x2="1" y2="0">
    <stop offset="0" stop-color="#ffffff"/>
    <stop offset="0.5" stop-color="#fbfbf8"/>
    <stop offset="1" stop-color="#e7e7e1"/>
  </linearGradient>
  <linearGradient id="saucerGrad" x1="0" y1="0" x2="0" y2="1">
    <stop offset="0" stop-color="#ffffff"/>
    <stop offset="1" stop-color="#dfe0da"/>
  </linearGradient>
  <!-- cup body: top rim at (0,0), bottom at y=150 -->
  <g id="body">
    <path d="M -70 0 L -54 128 Q -52 150 -32 150 L 32 150 Q 52 150 54 128 L 70 0 Z"
          fill="url(#porcelain)" stroke="#c8c8c0" stroke-width="2"/>
  </g>
  <g id="saucer">
    <ellipse cx="0" cy="0" rx="98" ry="17" fill="url(#saucerGrad)" stroke="#c8c8c0" stroke-width="2"/>
  </g>
  <g id="handle">
    <path d="M 66 34 C 118 30 122 104 62 112" fill="none" stroke="#d8d8d2" stroke-width="14" stroke-linecap="round"/>
    <path d="M 66 34 C 118 30 122 104 62 112" fill="none" stroke="#fbfbf8" stroke-width="7" stroke-linecap="round"/>
  </g>
  <g id="steam" stroke="#b9b9b3" stroke-width="3" fill="none" stroke-linecap="round" opacity="0.8">
    <path d="M -26 -18 q 12 -16 0 -32 q -12 -16 0 -32"/>
    <path d="M 0 -14 q 12 -16 0 -32 q -12 -16 0 -32"/>
    <path d="M 26 -18 q 12 -16 0 -32 q -12 -16 0 -32"/>
  </g>
</defs>
<rect width="1100" height="720" fill="#f4efe6"/>
<rect x="30" y="30" width="1040" height="660" rx="34" fill="#5f3d20"/>
<rect x="46" y="46" width="1008" height="628" rx="24" fill="url(#wood)"/>
<rect x="46" y="46" width="1008" height="628" rx="24" fill="none" stroke="#4a2f18" stroke-width="3"/>
<line x1="70" y1="90" x2="1030" y2="90" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="136" x2="1030" y2="136" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="182" x2="1030" y2="182" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="228" x2="1030" y2="228" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="274" x2="1030" y2="274" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="320" x2="1030" y2="320" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="366" x2="1030" y2="366" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="412" x2="1030" y2="412" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="458" x2="1030" y2="458" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="504" x2="1030" y2="504" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="550" x2="1030" y2="550" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="596" x2="1030" y2="596" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<line x1="70" y1="642" x2="1030" y2="642" stroke="#7d4f27" stroke-width="2" opacity="0.35"/>
<g transform="translate(210,120)">
<use xlink:href="#saucer" y="158"/>
<use xlink:href="#body"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#c9a06a"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#f0e2cc" opacity="0.55"/>
<ellipse cx="0" cy="4" rx="52" ry="9" fill="#c9a06a"/>
<ellipse cx="0" cy="0" rx="70" ry="14" fill="none" stroke="#c8c8c0" stroke-width="3"/>
<use xlink:href="#handle"/>
<use xlink:href="#steam" y="-6"/>
<text x="0" y="212" text-anchor="middle" font-size="25" font-weight="bold" fill="#fdf6e8">Table 1</text>
<text x="0" y="244" text-anchor="middle" font-size="21" fill="#f0dfc2">Vanilla Cortado</text>
</g>
<g transform="translate(550,120)">
<use xlink:href="#saucer" y="158"/>
<use xlink:href="#body"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#b98a55"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#efdfc6" opacity="0.55"/>
<ellipse cx="0" cy="4" rx="52" ry="9" fill="#b98a55"/>
<ellipse cx="0" cy="0" rx="70" ry="14" fill="none" stroke="#c8c8c0" stroke-width="3"/>
<use xlink:href="#handle"/>
<use xlink:href="#steam" y="-6"/>
<text x="0" y="212" text-anchor="middle" font-size="25" font-weight="bold" fill="#fdf6e8">Table 2</text>
<text x="0" y="244" text-anchor="middle" font-size="21" fill="#f0dfc2">Decaf Cortado</text>
</g>
<g transform="translate(890,120)">
<use xlink:href="#saucer" y="158"/>
<use xlink:href="#body"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#dcc7a4"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#f3e9d7" opacity="0.55"/>
<ellipse cx="0" cy="4" rx="52" ry="9" fill="#dcc7a4"/>
<ellipse cx="0" cy="0" rx="70" ry="14" fill="none" stroke="#c8c8c0" stroke-width="3"/>
<use xlink:href="#handle"/>
<use xlink:href="#steam" y="-6"/>
<text x="0" y="212" text-anchor="middle" font-size="25" font-weight="bold" fill="#fdf6e8">Table 3</text>
<text x="0" y="244" text-anchor="middle" font-size="21" fill="#f0dfc2">Decaf Oat</text>
<text x="0" y="270" text-anchor="middle" font-size="21" fill="#f0dfc2">Vanilla Latte</text>
</g>
<g transform="translate(210,415)">
<use xlink:href="#saucer" y="158"/>
<use xlink:href="#body"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#e2d3ba"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#f7f0e2" opacity="0.55"/>
<ellipse cx="0" cy="4" rx="52" ry="9" fill="#e2d3ba"/>
<g fill="#ffffff" opacity="0.55"><rect x="-34" y="-8" width="26" height="20" rx="4" transform="rotate(-14 -21 2)"/><rect x="6" y="-6" width="24" height="19" rx="4" transform="rotate(12 18 3)"/></g>
<ellipse cx="0" cy="0" rx="70" ry="14" fill="none" stroke="#c8c8c0" stroke-width="3"/>
<use xlink:href="#handle"/>
<text x="0" y="212" text-anchor="middle" font-size="25" font-weight="bold" fill="#fdf6e8">Table 4</text>
<text x="0" y="244" text-anchor="middle" font-size="21" fill="#f0dfc2">Iced Oat Latte</text>
</g>
<g transform="translate(550,415)">
<use xlink:href="#saucer" y="158"/>
<use xlink:href="#body"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#3b2314"/>
<g fill="#ffffff" opacity="0.55"><rect x="-34" y="-8" width="26" height="20" rx="4" transform="rotate(-14 -21 2)"/><rect x="6" y="-6" width="24" height="19" rx="4" transform="rotate(12 18 3)"/></g>
<ellipse cx="0" cy="0" rx="70" ry="14" fill="none" stroke="#c8c8c0" stroke-width="3"/>
<use xlink:href="#handle"/>
<text x="0" y="212" text-anchor="middle" font-size="25" font-weight="bold" fill="#fdf6e8">Table 5</text>
<text x="0" y="244" text-anchor="middle" font-size="21" fill="#f0dfc2">Cold Brew</text>
</g>
<g transform="translate(890,415)">
<use xlink:href="#saucer" y="158"/>
<use xlink:href="#body"/>
<ellipse cx="0" cy="4" rx="64" ry="12" fill="#4a2c17"/>
<ellipse cx="0" cy="0" rx="70" ry="14" fill="none" stroke="#c8c8c0" stroke-width="3"/>
<use xlink:href="#handle"/>
<use xlink:href="#steam" y="-6"/>
<text x="0" y="212" text-anchor="middle" font-size="25" font-weight="bold" fill="#fdf6e8">Table 6</text>
<text x="0" y="244" text-anchor="middle" font-size="21" fill="#f0dfc2">Filter Coffee</text>
</g>
</svg>
round 1 of 2
A serving tray where every table gets a drink it will take, by DeepSeek 4.1 Flash, the render after round 1
12What the model saw after each round. The picture above is the round that was scored, round 2.

A serving tray where every table gets a drink it will take: DeepSeek 4.1 Flash

modeldeepseek/deepseek-v4.1-flashtaskcup-allocation@v2, checks c1, harness h1date2026-11-08rounds2 of 8 allowed, 12 minutes on the clockcost$0.0411thinkingmediumtokens102,634 in, 9,034 out, of which 5,637 reasoningtime31 s
Serves all sixdecided by a number, from the filepass

There is no post about this one, since only some results need one, so the picture, the source and the scoring are here instead.

its other runs
the prompt it was given
I'm a barista and I have six drinks ready to go out: - Vanilla cortado: dairy milk, vanilla syrup, hot - Decaf cortado: dairy milk, decaf, hot - Decaf oat vanilla latte: oat milk, decaf, vanilla syrup, hot - Iced oat latte: oat milk, cold - Cold brew: black, cold - Filter coffee: black, hot There are six tables, and each one has asked for something: - Table 1 only drinks dairy milk - Table 2 wants decaf - Table 3 wants vanilla - Table 4 wants oat milk - Table 5 wants something cold - Table 6 wants black coffee Each table gets one drink. Each drink goes to one table. Draw the tray as tray.svg. Label every cup with its table number and the drink's name.
Frozen at v2. This model got this and nothing else.
ground truth

Six drinks with fixed attributes, six tables with fixed notes, one tray. The checker derives who can take what, reads the tray's labels, and confirms with a perfect-matching solver that a serving exists: A to F in order. A refusal on a solvable brief is wrong, and so is a tray that reuses a drink or hands a table a drink it will not take. Whether a drawn cup really holds what its label says is the eye's. How it is scored, and this run's files on GitHub.