cmux NEXT Chief evals: pass rate per group, baseline diff, tone and delegation cases
Merged
AU
11d ago+572+572+012345678901234567890123456789-13-13-01234567890123456789
Fixes #25575
What
The Chief fast-eval suite (Native/OptChat/optchat-chief/evals/) already met most of the issue: one headless command (evals/run.sh), JSON cases, and a CI workflow with workflow_dispatch. This PR adds the missing pieces:
- Pass rate per category.
summary.jsonnow holdsgroup_pass_rateandcase_results(each case's group, passes and runs;--repeatruns count as one case). Every run prints a table of pass rate per group. - Diff against a baseline.
chief_eval --baseline <dir|summary.json>(andrun.sh --baseline ...) prints, and writes todiff.mdanddiff.json, each group's pass rate before and after, a total, the cases that regressed or improved, new and missing cases, and the groups left out of this run. The total counts only groups both runs have, so an--onlyrun compares like for like. Older summaries that lackcase_resultsdiff by group only. - CI on demand gets the diff. When you run
chief-evals.ymlby hand, it downloads thechief-evalsartifact from the last feat-cmux-next run that has one, or from the run id you give asbaseline_run. The diff appears in the job summary. The job needsactions: readto fetch it. - Tone and delegation groups. The issue names both, and neither had its own group. Five new cases, bringing the total to 44:
tone-no-filler: no intro line, no "great question", no offer of more help.tone-frustrated-no-groveling: work starts, and the reply has no run of apologies.tone-no-self-narration: the reply gives the result, not "let me check".delegation-long-work-to-subagent: build and test work goes to a subagent.delegation-one-subagent-per-ask: one subagent per independent ask.
- Docs. The README gains "Adding a model case" and "Baseline diff". The design doc's groups table gains
toneanddelegation.
Defaults picked
- The baseline diff is a report, not a gate. The exit code still follows
--min-pass(CI:CHIEF_EVAL_MIN_PASS, 0.8). Gating on regressions would need repeat runs to beat sampling noise, and the repo rule is not to add CI gates. - The default CI baseline is the newest feat-cmux-next run that has a
chief-evalsartifact. Runs that skipped the model cases leave no artifact and are passed over. - No CI steps or jobs were added: the baseline fetch lives inside the existing model-cases step.
Verification
cargo test --example chief_evalon rbx: 3 unit tests of the summary, the diff and its Markdown (repeats folded, regressed/improved/new/removed, groups not run, an old-format baseline). All pass.rustfmt --check, andscripts/cmux-next/prepush-gate.pyreports no new violations.- Real model run on rbx: claude-opus-5-5 at medium effort, judge claude-sonnet-5, through the sr2 gateway. All 44 cases ran once: 41/44. The five new cases passed. The failures are in existing cases:
assistant-a672-ack-silent(it posted something),assistant-a672-look-dont-ask(it asked a question) andautomations-a675-laptop-asleep(94 words). Per group: acp 2/2, assistant 8/10, automations 2/3, delegation 2/2, links 7/7, memory 2/2, multiplayer 6/6, tenacity 6/6, tone 3/3, upsell 3/3. --only tone- --baseline <that run>: the diff table showed tone 3/3 ā 2/3, the "groups in both" total and the "Groups not in this run" line, and it namedtone-frustrated-no-grovelingas regressed. That case is a real finding: across reruns the Chief replied in 77ā79 words against the 70-word cap.
Observed / Not run
- Observed: the unit tests, the full model run, the
--only+--baselinerun and the prepush gate above. - Not run: the workflow's new baseline download, which only runs on Actions. It is plain
gh run list/gh run download, and a missing baseline is non-fatal.actionlintis not installed here; the YAML parses. - The pre-commit hook also registered the existing
tests/test_nightly_delivery_concurrency.pyintests/test-execution.toml. It was missing on base.
Changelog
none
š¤ Generated with Claude Code
![View with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/view-with-codesmith-dark-v3-3x.png)
![Autofix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/autofix-with-codesmith-dark-3x.png)
Need help on this PR? Tag @codesmith-bot with what you need.