inspect: make default judge output minimal · Entire

inspect: make default judge output minimal

14ba59fmain·

dipree·1mo ago·3 files·+39 added/-37 removed

Replace the section-menu judge/chair instructions with a strict minimal format: a one-line verdict plus a short bullet list of only the actionable findings, and nothing else — no preamble, headings, diff restatement, or filler. A clean change collapses to a single line. Update the synthesis-prompt tests to assert the minimal instructions and the absence of the old fixed sections.

Sessions

546dbff56055View transcript

[?
Checkout the hand off doc that I just added.Pi·Opus 4.8·1 step](/content/gh/entireio/cli/session/019eca64-8c2c-7b00-90c6-3aa49738c497#timeline-546dbff56055/index.html)

Changes

3

95 unmodified lines

func composeChairPrompt(verdicts, labels []string, ok []int) string {
    var b strings.Builder
    b.WriteString("You are the presiding judge on a panel reviewing a code change. " +
        "Several judges independently evaluated the inspectors' reports and produced the verdicts below. " +
        "Write a single, concise final verdict that reconciles them:\n" +
        "  - Open with the decision and a one-sentence rationale.\n" +
        "  - Note only the substantive points of agreement and disagreement; resolve each disagreement on the merits (which judge is right and why).\n" +
        "  - Merge duplicates and drop unsupported claims. Do not concatenate the verdicts or repeat findings verbatim.\n" +
        "  - Keep it proportional to the change; do not pad.\n\n")
        "The judges' verdicts are below. Write the single final verdict, nothing else:\n" +
        "  - One line: the decision and a one-sentence reason.\n" +
        "  - Then a short bullet list of the agreed actionable findings, most important first, one line each. " +
        "Note a disagreement only when it changes the decision, and resolve it (which judge is right and why).\n\n")
        "Merge duplicates, drop unsupported claims, don't concatenate or repeat the verdicts. " +
        "No preamble or headings; be proportional to the change.\n\n")
    for _, i := range ok {
        label := fmt.Sprintf("judge %d", i+1)
        if i < len(labels) && strings.TrimSpace(labels[i]) != "" {

Mcmd/entire/cli/review/synthesis_panel.go+6/-6

Critically evaluate the worker reports. Do not blindly summarize.
Critically evaluate the worker reports — judge, don't summarize.
  - Keep only findings backed by concrete evidence (file, function, behavior, test, or diff detail).
  - Drop unsupported or speculative claims. Merge duplicates. Resolve contradictions on the merits.

Rules:
  - Prefer findings backed by concrete evidence (file, function, behavior, test, or diff detail).
  - Discard unsupported or speculative claims unless they are clearly labeled as needing verification.
  - Identify contradictions between workers and decide which claim is better supported.
  - Merge duplicate findings.
Output exactly this, nothing else:
  - One line: the verdict (approve / approve with nits / request changes) and a one-sentence reason.
  - Then a short bullet list of actionable findings, most important first, one line each with a file/symbol pointer. Omit the list entirely when nothing is actionable.

Write a tight final report:
  - Open with a one-line verdict (approve / approve with nits / request changes) and a one-sentence rationale.
  - Then list only the findings that matter, highest priority first, each as a single bullet with an evidence pointer.
  - Include a section only when it has real content; omit empty sections instead of writing "none". Use these as needed, in this order: Common findings, Unique findings, Disagreements (or rejected false positives), Priority order / next actions.

Be brief and proportional to the change: a small or clean change should get a verdict and a few bullets, nothing more. Do not pad, restate the diff, or invent findings to fill a template.`