Astra vs DeepSeek 4.1 Flash both build a boiler

In short

All checks out with temps 92–96 °C

One run

Every result in this post comes from a single run, so it reports what happened once. What the model usually does needs more runs. Three runs is the bar for a pattern.

ngspice: espresso boiler thermostat, by gpt-6-astra
gpt-6-astra · round 1 · seed 1$0.16SVGboiler.cir
ngspice: espresso boiler thermostat, by deepseek-v4.1-flash
deepseek-v4.1-flash · round 2 of 2 · seed 1$0.03SVGboiler.cir

Finding

Both models passed all five checks.

The prompt, v1, frozen

Model an espresso machine's boiler in ngspice as an electrical analogue — heater, thermal mass, heat loss — with a thermostat that holds it between 92 and 96 °C, and simulate the first 20 minutes from cold. In a .control block, save the boiler temperature with wrdata to a .txt file so it can be plotted.
This is the wording these runs were given. The task has since moved to v2, and the task page carries both.
tierTier 1 · one run per modelroundsAstra 1, DeepSeek 4.1 Flash 2cost$0.19what the tiers let me claim

Both models used a voltage-controlled switch with a hysteresis voltage of 2, around an error signal of 94 minus the temperature.

checks
check · how it is decidedAstraDeepSeek 4.1 Flash
Complete analoguemeasured · The node the temperature is written from has a capacitor on it, a resistor to a node a DC source holds fixed, and a third element feeding it. The resistor times the capacitor has to be under a day, so a leak nobody meant does not count as the loss.✓ pass✓ pass
Real hysteresismeasured · Re-run, once in band the heater switches on low and off high, at least 1 °C apart and at least 2 s per cycle, and the netlist has a switch that remembers: a SW model with a hysteresis voltage, or a source that reads its own output. A single-threshold switch sits at the set point with a swing near zero.✓ pass✓ pass
Starts coldmeasured · Initial condition at ambient, and the transient run with uic so it is honoured.✓ pass✓ pass
Holds 92–96 °Cmeasured · The written temperature re-read: once in band it never leaves it.✓ pass✓ pass
Writes the .txtmeasured · A wrdata line in .control, and the file actually appears.✓ pass✓ pass

Ground truth: The netlist itself: re-run in ngspice offline, and the temperature it writes out read back. A thermostat with a dead band is a stateful thing, so a bare comparator on one threshold is wrong however plausible the plot looks. Every model on this task.

What's jagged here

No failure here, so not much to report. DeepSeek cost $0.03 against Astra's $0.16, so about 5.8× cheaper for the run. You can find the netlist file and the schematic in the download.

Older, 14 Sept

Qwen3.8 Max builds a caffeine molecule

Newer, 17 Sept

Union Alpha spells COFFEE on the streets of melbourn