tray.svg · 126 lines
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="940" viewBox="0 0 1200 940">
<defs>
<linearGradient id="tray" x1="0" y1="0" x2="0" y2="1"><stop stop-color="#344d47"/><stop offset="1" stop-color="#1c3631"/></linearGradient>
<radialGradient id="coffee"><stop stop-color="#623725"/><stop offset=".83" stop-color="#392218"/><stop offset="1" stop-color="#221914"/></radialGradient>
<radialGradient id="milk"><stop stop-color="#e4bb82"/><stop offset=".85" stop-color="#c58b4f"/><stop offset="1" stop-color="#986334"/></radialGradient>
<filter id="shadow" x="-30%" y="-30%" width="160%" height="170%"><feDropShadow dx="0" dy="7" stdDeviation="8" flood-color="#102620" flood-opacity=".22"/></filter>
<filter id="trayShadow" x="-10%" y="-10%" width="120%" height="130%"><feDropShadow dx="0" dy="12" stdDeviation="12" flood-color="#21342e" flood-opacity=".18"/></filter>
<g id="hotCup">
<circle r="116" fill="#f5f0e4" stroke="#ccc6b4" stroke-width="2"/>
<circle r="101" fill="none" stroke="#ded7c5" stroke-width="2"/>
<rect x="76" y="-25" width="48" height="50" rx="18" fill="#fffaf0" stroke="#c9c3b2" stroke-width="3"/>
<rect x="88" y="-12" width="23" height="24" rx="8" fill="#d4d2bf"/>
<circle r="88" fill="#fffaf0" stroke="#d4cebd" stroke-width="2"/>
</g>
<g id="latteArt" fill="#fff0d5" opacity=".95">
<path d="M0 42 C-8 20 -55 1 -48 -24 C-43 -44 -17 -39 0 -20 C17 -39 43 -44 48 -24 C55 1 8 20 0 42Z"/>
<path d="M0 31 C-5 10 -32 -1 -30 -15 C-27 -26 -10 -22 0 -10 C10 -22 27 -26 30 -15 C32 -1 5 10 0 31Z" fill="#c89559"/>
<path d="M0 21 C-4 5 -18 -2 -16 -9 C-13 -16 -5 -12 0 -5 C5 -12 13 -16 16 -9 C18 -2 4 5 0 21Z"/>
</g>
<g id="glass">
<circle r="111" fill="#a3b9ac" opacity=".35"/>
<circle r="96" fill="#dae5d9" stroke="#f2f5eb" stroke-width="5"/>
<circle r="87" fill="#e2bf8f"/>
</g>
<g id="ice" fill="#eef6ed" fill-opacity=".5" stroke="#f5faf3" stroke-opacity=".75" stroke-width="2">
<rect x="-53" y="-48" width="43" height="42" rx="8" transform="rotate(-15)"/>
<rect x="10" y="-55" width="43" height="42" rx="8" transform="rotate(18)"/>
<rect x="-12" y="4" width="43" height="42" rx="8" transform="rotate(-12)"/>
<rect x="-60" y="16" width="35" height="35" rx="7" transform="rotate(12)"/>
<rect x="46" y="-3" width="28" height="35" rx="7" transform="rotate(15)"/>
</g>
<style>
text { font-family: 'DejaVu Sans', sans-serif; }
.table { font-size: 13px; font-weight: 700; letter-spacing: 2px; fill: #557167; }
.name { font-size: 22px; font-weight: 700; fill: #233e36; }
.details { font-size: 13px; fill: #64776d; }
.label { fill: #fffdf5; stroke: #d9dfce; stroke-width: 1; }
</style>
</defs>
<rect width="1200" height="940" fill="#f1eee4"/>
<text x="80" y="59" font-size="13" letter-spacing="4" fill="#63776d" font-weight="700">THE COFFEE ROUND</text>
<text x="80" y="115" font-size="44" font-weight="700" fill="#213d34">Ready to serve.</text>
<text x="1120" y="110" text-anchor="end" font-size="16" fill="#63776d">6 drinks / 6 tables</text>
<!-- A single serving tray, with three cups in each row. -->
<rect x="65" y="159" width="1070" height="707" rx="65" fill="url(#tray)"/>
<rect x="87" y="181" width="1026" height="663" rx="48" fill="#c5d0b6" stroke="#789085" stroke-width="3"/>
<rect x="98" y="191" width="1004" height="642" rx="40" fill="none" stroke="#e2e7d5" stroke-opacity=".65" stroke-width="2"/>
<rect x="73" y="453" width="12" height="115" rx="6" fill="#102b25"/>
<rect x="1115" y="453" width="12" height="115" rx="6" fill="#102b25"/>
<!-- Table 1: dairy. -->
<g transform="translate(280 309)">
<use href="#hotCup"/>
<circle r="77" fill="url(#milk)"/>
<use href="#latteArt" transform="scale(.8)"/>
</g>
<g text-anchor="middle">
<rect class="label" x="145" y="370" width="270" height="111" rx="13"/>
<text class="table" x="280" y="394">TABLE 1</text>
<text class="name" x="280" y="425">Decaf cortado</text>
<text class="details" x="280" y="456">Dairy milk · decaf · hot</text>
</g>
<!-- Table 2: decaf. -->
<g transform="translate(600 309)">
<use href="#hotCup"/>
<circle r="77" fill="url(#milk)"/>
<use href="#latteArt"/>
</g>
<g text-anchor="middle">
<rect class="label" x="465" y="370" width="270" height="111" rx="13"/>
<text class="table" x="600" y="394">TABLE 2</text>
<text class="name" x="600" y="419">Decaf oat</text>
<text class="name" x="600" y="443">vanilla latte</text>
<text class="details" x="600" y="465">Oat milk · decaf · vanilla · hot</text>
</g>
<!-- Table 3: vanilla. -->
<g transform="translate(920 309)">
<use href="#hotCup"/>
<circle r="77" fill="url(#milk)"/>
<use href="#latteArt" transform="scale(.8)"/>
</g>
<g text-anchor="middle">
<rect class="label" x="785" y="370" width="270" height="111" rx="13"/>
<text class="table" x="920" y="394">TABLE 3</text>
<text class="name" x="920" y="425">Vanilla cortado</text>
<text class="details" x="920" y="456">Dairy milk · vanilla · hot</text>
</g>
<!-- Table 4: oat. -->
<g transform="translate(280 639)">
<use href="#glass"/>
<use href="#ice"/>
<path d="M-66 -52 A84 84 0 0 1 42 -71" fill="none" stroke="#fffaf0" stroke-width="3" opacity=".6"/>
</g>
<g text-anchor="middle">
<rect class="label" x="145" y="700" width="270" height="111" rx="13"/>
<text class="table" x="280" y="724">TABLE 4</text>
<text class="name" x="280" y="755">Iced oat latte</text>
<text class="details" x="280" y="786">Oat milk · cold</text>
</g>
<!-- Table 5: cold. -->
<g transform="translate(600 639)">
<use href="#glass"/>
<circle r="87" fill="url(#coffee)"/>
<use href="#ice"/>
<path d="M-66 -52 A84 84 0 0 1 42 -71" fill="none" stroke="#fffaf0" stroke-width="3" opacity=".5"/>
</g>
<g text-anchor="middle">
<rect class="label" x="465" y="700" width="270" height="111" rx="13"/>
<text class="table" x="600" y="724">TABLE 5</text>
<text class="name" x="600" y="755">Cold brew</text>
<text class="details" x="600" y="786">Black · cold</text>
</g>
<!-- Table 6: black. -->
<g transform="translate(920 639)">
<use href="#hotCup"/>
<circle r="77" fill="url(#coffee)"/>
<path d="M-55 -43 A70 70 0 0 1 36 -59" fill="none" stroke="#c38b60" stroke-width="3" opacity=".6"/>
</g>
<g text-anchor="middle">
<rect class="label" x="785" y="700" width="270" height="111" rx="13"/>
<text class="table" x="920" y="724">TABLE 6</text>
<text class="name" x="920" y="755">Filter coffee</text>
<text class="details" x="920" y="786">Black · hot</text>
</g>
<text x="600" y="908" text-anchor="middle" font-size="14" fill="#63776d" letter-spacing=".5">One cup per table. Every preference matched.</text>
</svg>round 1 of 3

A serving tray where every table gets a drink it will take: GPT-6.1 Sol
modelopenai/gpt-6.1-soltaskcup-allocation@v2, checks c1, harness h1date2026-11-08rounds3 of 8 allowed, 12 minutes on the clockcost$0.0177thinkingmediumtokens59,677 in, 4,449 out, of which 514 reasoningtime1 min 20 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.
run 2 · 2r · $0.0141same prompt, other modelsall 21 runs on A serving tray where every table gets a drink it will take →
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.
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.