models/openai/gpt-6-luna

GPT-6 Luna

44 runs across 15 tasks, costing $0.42, and 12 posts. Each table shows the runs under the newest prompt this model was given.

How it failed: unreadable, built wrong, false, incomplete, broken.

French press
check · how it is decidedrun 1run 2run 3
All seven partsby eye · Pass if all seven are drawn as separate shapes and each has a label naming it. A part that is only named in a label or a comment, with nothing drawn, fails it.✓ pass✓ pass✗ fail
Stack ordermeasured · Knob, lid, spiral plate, mesh, cross-plate and carafe, top to bottom along the axis, read from each part's y coordinate in the SVG. Its comment is ignored. The rod is left out, because it runs through the lid.✓ pass✓ pass✗ fail
Filter fits the glassmeasured · Every filter piece drawn is 80% to 105% of the width of the carafe's glass wall, measured in the SVG.✗ fail✓ pass✗ fail
One assembly axisby eye · Pass if one vertical line runs through the middle of every part, and every leader line leaves from the same side. One part pushed off to the side fails it.✓ pass✓ pass✓ pass
Labels matchby eye · Pass if following each leader line from its label ends on the part that label names. One label pointing at the wrong part, or at nothing, fails it.✓ pass✓ pass✓ pass

Prompt v2, checks c1, harness h1. Ground truth: The standard three-piece plunger, from the top down: spiral (spring) plate, mesh screen, cross-plate. The cross-plate is the bottom piece, because its threaded stem is what the rod screws into. The spiral plate above the mesh is what presses the mesh edge out against the glass. Checked against the WebstaurantStore anatomy diagram, which is drawn exploded and labelled, and against each part's y coordinate in the SVG rather than its comment. Two-piece travel presses exist and stack differently, which is why v2 of the prompt names the design. Every model on this task.

AeroPress
check · how it is decidedrun 1run 2run 3
All five partsby eye · Pass if every listed part is drawn as a separate shape and each has a label naming it. A part only named in a label or a comment, with nothing drawn, fails it. The label must say what the part is, in any words: a name that only says where it sits ("top plate") or what it is made of, or a mention in another part's caption, does not count.✗ fail✗ fail✓ pass
Stack ordermeasured · Plunger, seal, chamber, filter, cap, top to bottom along the axis, read from each part's coordinates in the SVG.✓ pass✓ pass✓ pass
Parts fitmeasured · The seal is 95% to 105% of the chamber's inside width, and the filter 90% to 105% of the cap's.✗ fail✗ fail✗ fail
One assembly axisby eye · Pass if one line runs through the middle of every part on each listed axis, and every leader line leaves from the same side. One part pushed off its axis fails it.✓ pass✓ pass✓ pass
Labels matchby eye · Pass if following each leader line from its label ends on the part that label names. One label pointing at the wrong part, or at nothing, fails it.✓ pass✓ pass✓ pass

Prompt v1, checks c1, harness h1. Ground truth: Top to bottom: plunger, rubber seal, chamber, paper filter, filter cap. The seal sits on the plunger's lower end, and the paper filter sits in the cap below the chamber. Checked against AeroPress's replacement-parts pages, which sell the plunger with its seal, the chamber and the cap as the parts of the Original, and Wikipedia's description of the cap holding the filter at the chamber's bottom end. The stirrer and scoop are not part of the assembly. Every model on this task.

V60
check · how it is decidedrun 1run 2run 3
All three partsby eye · Pass if every listed part is drawn as a separate shape and each has a label naming it. A part only named in a label or a comment, with nothing drawn, fails it. The label must say what the part is, in any words: a name that only says where it sits ("top plate") or what it is made of, or a mention in another part's caption, does not count.✓ pass✓ pass✓ pass
Stack ordermeasured · Filter, dripper, server, top to bottom along the axis, read from each part's coordinates in the SVG.✓ pass✓ pass✓ pass
Parts fitby eye · Pass if each listed pair of mating parts looks as if it would go together as stated: the right angle, nested inside, or sitting on top. One pair that plainly could not fails it.✓ pass✗ fail✓ pass
One assembly axisby eye · Pass if one line runs through the middle of every part on each listed axis, and every leader line leaves from the same side. One part pushed off its axis fails it.✓ pass✓ pass✓ pass
Labels matchby eye · Pass if following each leader line from its label ends on the part that label names. One label pointing at the wrong part, or at nothing, fails it.✓ pass✓ pass✓ pass

Prompt v1, checks c1, harness h1. Ground truth: Top to bottom: paper filter, dripper, server. The dripper is a 60 degree cone with spiral ribs and one large hole, and it sits directly on the server. Checked against Hario's V60 and Range Server pages. The server's lid is optional, so it is not required and not marked down. Every model on this task.

Portafilter
check · how it is decidedrun 1run 2run 3
All five partsby eye · Pass if every listed part is drawn as a separate shape and each has a label naming it. A part only named in a label or a comment, with nothing drawn, fails it. The label must say what the part is, in any words: a name that only says where it sits ("top plate") or what it is made of, or a mention in another part's caption, does not count.✗ fail✗ fail✓ pass
Stack ordermeasured · Basket, spring, body, spout, top to bottom along the vertical axis, read from each part's coordinates in the SVG. The handle is off the stack.✓ pass✓ pass✓ pass
Parts fitby eye · Pass if each listed pair of mating parts looks as if it would go together as stated: the right angle, nested inside, or sitting on top. One pair that plainly could not fails it.· n/d· n/d✓ pass
Two assembly axesby eye · Pass if one line runs through the middle of every part on each listed axis, and every leader line leaves from the same side. One part pushed off its axis fails it.✓ pass✓ pass✓ pass
Labels matchby eye · Pass if following each leader line from its label ends on the part that label names. One label pointing at the wrong part, or at nothing, fails it.✓ pass✓ pass✓ pass

Prompt v1, checks c1, harness h1. Ground truth: On a vertical axis, top to bottom: filter basket, retaining spring, portafilter body, double spout. The handle is on a horizontal axis off the body, so this is the one member with two axes. Checked against parts sellers, since no maker's exploded diagram could be fetched: Espresso Parts and Zirkus Coffee on the spring that clips into a groove inside the body and grips the basket rim, Espresso Parts on the spout that screws onto the bottom of the body, and Nepo Coffee on handles that screw onto a stud on its side. Every model on this task.

Grinder
check · how it is decidedrun 1run 2run 3
All eight partsby eye · Pass if every listed part is drawn as a separate shape and each has a label naming it. A part only named in a label or a comment, with nothing drawn, fails it. The label must say what the part is, in any words: a name that only says where it sits ("top plate") or what it is made of, or a mention in another part's caption, does not count.✗ fail✗ fail✗ fail
Stack ordermeasured · Crank, body, outer burr, inner burr, spring if drawn, adjustment, catch jar, top to bottom along the axis, read from each part's coordinates in the SVG.✗ fail✗ fail✓ pass
Parts fitby eye · Pass if each listed pair of mating parts looks as if it would go together as stated: the right angle, nested inside, or sitting on top. One pair that plainly could not fails it.✗ fail✓ pass✗ fail
One assembly axisby eye · Pass if one line runs through the middle of every part on each listed axis, and every leader line leaves from the same side. One part pushed off its axis fails it.✓ pass✓ pass✓ pass
Labels matchby eye · Pass if following each leader line from its label ends on the part that label names. One label pointing at the wrong part, or at nothing, fails it.✓ pass✓ pass✓ pass

Prompt v1, checks c1, harness h1. Ground truth: Top to bottom: handle knob, crank, body, outer burr, inner burr, spring if drawn, adjustment dial, catch jar. The drive shaft runs through the body and both burrs, so it is left out of the order, the way the French press leaves out its rod. The adjustment is at the bottom, below the burrs, and the inner cone comes out downwards through the fixed outer ring. Checked against Comandante's FAQ for the C40, Coffeegeek on the Timemore C2, Hario's spare-parts list and a review for the Skerton Pro, and a guide to the Porlex Mini. The Skerton has no spring, so the spring is not required. Every model on this task.

Venn
check · how it is decidedrun 1run 2run 3
Compilesmeasured · pdflatex builds the file offline.✓ pass✓ pass✓ pass
Seven regions, three namesmeasured · Three circles found in the PDF with every overlap present, and each set name placed by its circle.✓ pass✓ pass✓ pass
Every drink in its regionmeasured · Each of the eight words found in the PDF, and the centre of each one inside the region it belongs to.✓ pass✓ pass✓ pass
No label on an edgemeasured · No letter touches a circle's outline, with the line's width counted.✗ fail✗ fail✗ fail

Prompt v1, checks c2, harness h1. Ground truth: Short black is espresso only, flat white espresso and milk, iced long black espresso and cold, iced latte all three, babyccino milk only, milkshake milk and cold, cold brew cold only, and pour-over outside every circle. The circles and words are read back out of the compiled PDF, each word has to be centred in its own region, and no letter may touch a circle's outline, with the line's width counted. Every model on this task.

Bean cosy
check · how it is decidedrun 1run 2run 3
A real chartmeasured · A grid of at least 10 stitches by 10 rows, with the beans made of whole cells of that grid.✓ pass✓ pass✓ pass
Stitches wider than tallmeasured · The cells are drawn at least as wide as they are tall, so the chart shows the fabric the right way round.✗ fail✓ pass✓ pass
Bean knits truemeasured · The beans as knitted are 1.3 to 1.8 times as long as they are wide.✗ fail✓ pass✗ fail
Has a keymeasured · Text on the page says what each colour or mark means.✓ pass✓ pass✓ pass

Prompt v1, checks c1, harness h1. Ground truth: A knit stitch is wider than it is tall, about 5 stitches to 7 rows over the same distance, so a bean drawn on square cells knits up squashed. The chart is read from the SVG: its grid, which cells are coloured, and the gauge its cells are drawn at. Each bean is then measured as it would come out in the fabric, from its stitches and rows at that gauge, and a coffee bean is 1.3 to 1.8 times as long as it is wide. Every model on this task.

Five circles
check · how it is decidedrun 1run 2run 3
Says circles cannotmeasured · A sentence it wrote names circles and says they cannot give five sets or 31 regions, or names the 22 region limit.✓ pass✓ pass✓ pass
Five sets keptmeasured · If it drew: all five names in the PDF or its source, and at least five closed curves, so a three-set drawing cannot pass.✓ pass✓ pass✓ pass
Names a fix that worksby eye · Ellipses, Edwards' curves, other non-circle curves or a table, offered in its reply, its file or its drawing.✗ fail✗ fail✗ fail

Prompt v1, checks c1, harness h1. Ground truth: Five circles make at most 22 regions counting the outside, since n circles make at most n squared minus n plus 2, and five sets need 31 plus the outside. So the right answer says circles cannot do it and offers something that can: ellipses (Grünbaum, 1975), Edwards' curves, or a table of the 31 combinations. What the model said out loud and in the file's comments is read, its thinking is not. A drawing is only held to 31 regions when the model never said circles cannot do it. Every model on this task.

Pruned shrub
check · how it is decidedrun 1run 2run 3
Reads as a shrubby eye · Pass if it reads as one plant with branches coming off stems, without being told what it is. A tangle, a lattice or loops fail it.✓ pass✓ pass✓ pass
Flat side from the rulesby eye · Pass if one side ends on a straight line that the rules themselves put there. A box drawn around the plant to cut it fails it.✗ fail✗ fail✗ fail
Sensible sizeby eye · Pass if the branches can still be followed by eye. So many segments that they merge into a mass fails it.✓ pass✓ pass✓ pass

Prompt v1, checks c2, harness h1. Ground truth: The JSON expanded and drawn with turtle graphics offline, and the drawing judged by eye. There is no single right L-system, so nothing here is measured. Every model on this task.

Espresso Rag
check · how it is decidedrun 1run 2run 3
Piano staffmeasured · A treble staff and a bass staff, both with notes.✓ pass✓ pass✓ pass
Sixteen barsmeasured · The last note is in bar 16.✓ pass✓ pass✓ pass
Left hand crossesmeasured · In each of bars 9 to 12 most left-hand notes are on the treble staff and sit above the right hand, and outside those bars most are back on the bass staff. A left hand written high on the bass staff fails.✓ pass✗ fail✓ pass
Right hand keeps goingmeasured · The right hand plays in every bar, and at least twice in each of bars 9 to 12.✓ pass✓ pass✓ pass
Crossing markedmeasured · Words naming a hand or the crossing at bar 8 or 9, and a release at bar 12 or 13.✗ fail✗ fail✗ fail
Stems apartmeasured · In bars 9 to 12, where both hands share a staff, at least three in four of their notes have stems pinned apart: left hand up, right hand down.✗ fail✓ pass✗ fail

Prompt v1, checks c1, harness h1. Ground truth: LilyPond's own record of every note: its hand, staff, bar, pitch and stem, read while the file is engraved. A voice belongs to the hand whose staff it starts on, unless its notes are labelled with a hand's name. The script was written after hearing Sol's and Pareto's runs, so Luna was its first fair test. How good the music sounds is rated by ear. Every model on this task.

Coffee tree
check · how it is decidedrun 1run 2run 3
Valid Newickmeasured · It reads as Newick and ends in a semicolon, no unquoted name has a blank in it, every branch has a length and none is negative, and no node has only one child.✓ pass✓ pass✓ pass
Twelve cultivarsmeasured · Twelve tips, each with a name, no two the same, and not numbered stand-ins like T1 to T12.✓ pass✓ pass✓ pass
Every tip levelmeasured · Every path from the root to a tip adds up to the same length.✓ pass✓ pass✓ pass
One split of fourmeasured · Exactly one node has four children, and every other node has two.✓ pass✓ pass✓ pass

Prompt v1, checks c1, harness h1. Ground truth: The tree read with Biopython, every path from the root to a tip added up from its branch lengths, and the children of every node counted. The checks only read the brackets. Whether a cultivar sits beside its relatives is not checked here, and the post of 14 October looks at that by eye. Every model on this task.

Hopper
check · how it is decidedrun 1run 2run 3
Runs in MuJoComeasured · The script runs, steps a MuJoCo model, prints its report and saves the figure.✓ pass✓ pass✓ pass
model.xml writtenmeasured · A model.xml beside the script that MuJoCo loads.✓ pass✓ pass✗ fail
Fifty two-part beansmeasured · Exactly 50 free bodies, each made of two ellipsoids.✓ pass✓ pass✗ fail
Gravity downmeasured · Gravity in the model points down, at more than 1 m/s².✓ pass✓ pass✗ fail
Beans start inside a hollow hoppermeasured · A ray dropped down the middle of the hopper gets past where the beans are, and rays cast sideways from every bean's starting place hit the hopper wall. A mesh counts as its convex hull, the way MuJoCo collides it.✓ pass✗ fail✗ fail
Held, then flowsby Claude Opus 5.5, GPT-6.1 Sol and Gemini 4 Argon · Pass if the frames and the printed count show no bean through the throat at 1 s, beans coming through by 2 s, all 50 through by 5 s, and none falling out of the model. A count the frames contradict fails it.✗ fail✗ fail✗ fail

Prompt v1, checks c1, harness h1. Ground truth: The model.xml the script writes, loaded in MuJoCo and probed with rays against what a bean can actually hit. MuJoCo collides a mesh as its convex hull, so a cone made of one mesh is solid, and the probe counts it that way. The checker never runs the simulation, so whether the gate holds the beans and then lets them all out is judged by Claude Opus 5.5, GPT-6.1 Sol and Gemini 4 Argon, each shown the brief, the figure, the printed count and the rule, and never which model made it. On 2026-10-16 all three agreed on all ten results, and with the verdicts first published, for $0.52. The rule was written after Claude Opus 5.5 had looked at the runs. Every model on this task.

Serve the tray
check · how it is decidedrun 2run 3
Serves all sixmeasured · The tray hands each of the six tables a drink it will take, every drink used exactly once and none twice. A refusal leaves it undecided, and a tray that reuses a drink fails it.✓ pass✓ pass

Prompt v2, checks c1, harness h1. 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. Every model on this task.

Four tables, three drinks
check · how it is decidedrun 1run 2run 3
Says it cannot be donemeasured · The reply, or a comment in the file, says no serving of all six exists. A run that draws a tray instead and says nothing fails it.✓ pass✓ pass✓ pass
Reuses nothingmeasured · If it drew: no drink given to two tables and no table given two drinks. A run that drew nothing is undecided.· n/d· n/d· n/d

Prompt v2, checks c1, harness h1. Ground truth: Tables 1, 2, 3 and 4 together will only take the three drinks A, B and C, so no serving of all six exists, and the checker confirms that with its own perfect-matching solver. The right answer says so and draws nothing. Every table still has a drink it will take on its own, so the shortage is only visible across the tables together. Every model on this task.

Two tables, black coffee
check · how it is decidedrun 1run 2run 3
Serves all sixmeasured · The tray hands each of the six tables a drink it will take, every drink used exactly once and none twice. A refusal leaves it undecided, and a tray that reuses a drink fails it.✓ pass✓ pass✓ pass

Prompt v2, checks c1, harness h1. Ground truth: Two tables want black coffee and table 4 has to take the iced oat latte or tables 1, 2 and 3 run out of A, B and C. A serving exists, A to F in order, and the checker confirms it with its own matching solver. Refusing because it looks crowded is wrong. Every model on this task.