Crux audit viewer

A mediator that names the one unlooked-up fact that would settle a disagreement — and says so plainly when it can't yet issue a verdict.

Crux itself is a command-line tool with no UI of its own. This page is a static replay of the 2 real live runs this project has ever executed — not a live or interactive demo, and nothing here calls an API. Pick a run on the left to see its actual gate log.

What am I looking at?

Crux takes a decision with no ground truth — just a question, some evidence, and a deadline — and runs two isolated debaters against it before a third model mediates. The point isn't who "wins." It's that the mediator is forced to name the crux: the single fact nobody has looked up yet that would actually settle the argument, instead of quietly averaging two positions into a mushy middle.

parallel · isolated
Optimist Sonnet never sees the pessimist
Pessimist Sonnet never sees the optimist
Mediator Opus different model family · no search tools
verdict_withheld is a success outcome, not indecision. The mediator's job is to find the crux, not to force a lean. If the honest answer is "this comes down to one unknown number," withholding a verdict and naming that number is the correct output — a mediator that always issues a lean is just averaging two arguments.
REJECTED here is a real infrastructure bug, not a design choice. One of the 2 runs below failed because the pessimist's reply was truncated exactly at the old MAX_TOKENS=8000 ceiling — extended thinking on Claude 5 models draws from the same output budget as the visible reply. Crux's own rule is that malformed output is rejected outright, never retried, so nothing was recovered or backfilled for that run. It's shown here with its real, empty position fields rather than hidden or faked. Fixed the same session by raising the budget to 16000.

Two real runs. That's the whole body of live evidence. Not a measured success rate, not a sample anything can be inferred from statistically — one real bug this pipeline hit against a live model, and one complete, honest demonstration of what it does when nothing breaks. See docs/evidence/README.md in the repo for the unedited source.