The completion token ceiling was set to 90. When the model spent budget reasoning before writing, it returned empty content and the endpoint failed — roughly one call in eight, and only on harder questions, which made it look random rather than systematic. Clicking around the demo would never have surfaced it. Fixed with token headroom, a request timeout, and retry on transient upstream errors.
Loading the latest run…
By category
What failed
Each failing case below shows what was asked and which expectation it missed. Some replies are withheld — where the failure was the agent repeating something this site deliberately keeps private, printing it here would repeat the mistake.
All cases
| Case | Category | Status | Runs |
|---|
What this suite has caught
A passing score is only worth reading if the suite has ever failed. This is the log of what it found, kept by hand.
Two cases failed against a correct agent. One demanded digits where the agent writes numbers as words, because everything it says is read aloud. The other matched the literal word "email" when the agent had given an actual email address. Both were fixed in the suite, not the agent — a red test is a hypothesis, not a verdict.
An early version counted network failures as wrong answers and published a run reporting every case as failing. It had measured nothing. The runner now preflights the endpoint and discards any run containing a transport error rather than reporting a result it cannot stand behind.
How it works
Each case is a behavior contract rather than a sample answer: things that must appear, things that must never appear, and a global word ceiling. A case passes only if every check passes on every run.
Cases run three times, because language models are not deterministic. One that passes once and fails twice is a real defect a single run hides, so flaky is reported separately and counted as not passing.
When the agent says something wrong in a real conversation, the case gets written before the prompt is fixed. That order proves the fix worked and stops the regression coming back. A few cases publish their status only — the question itself is the sensitive part, and the full suite lives in the repository.