inspect: replace judge panel + chair with a single consolidating judge

main

Commit

dipree2mo ago

The multi-judge panel and chair-merge step added a lot of surface area (schema, panel provider, chair prompt, panel/chair pickers, scripted --set-chair, legacy master fields) without improving outcomes in testing. Step back to the simpler model the feature started from: inspectors fan out, then one judge consolidates their reports into the final verdict in a closing round.

  • settings: replace Judges/Chair + legacy Master/MasterAgent/MasterModel with a single optional Judge *ReviewConfig (json "judge").
  • profile.go: profileJudges/profileMasterIdentity -> profileJudge; defaultReviewMaster -> defaultJudge (judgeSpec); add resolveJudge (explicit judge, else auto-selected text-gen inspector).
  • delete synthesis_panel.go (PanelSynthesisProvider + composeChairPrompt); runMultiAgentPath always uses AgentSynthesisProvider for the one judge.
  • cmd.go: --set-judge is now single (drop --set-chair); update help, --list, catalog, validation.
  • picker.go: promptForJudges/chair picker -> single promptForJudge; advanced picker saves Judge instead of master.
  • update tests and docs (architecture doc, CLAUDE.md).

Note: settings parsing is strict, so profiles still using the old judges/chair/master keys (only created on this unreleased branch) must be re-saved; a multi-inspector profile with no judge now auto-selects one.

Entire-Checkpoint: 06e9093212ec

Checkpoints

Checkout the hand off doc that I just added.

PiOpus 4.8
View session
Checkpoint 1