voyage/commands
Kjell Tore Guttormsen c23b009738
fix(review): run the success-criteria commands and hand the reviewer the result (D-04)
The rubric required `brief-conformance-reviewer` to classify a Success
Criterion as Full only when "its verification command/test exists and passes".
Its tools are `Read`, `Glob`, `Grep`. It cannot run anything, so "passes" was
either guessed from the command's mere existence or quietly downgraded to
"exists" — a BLOCKER-tier rule key resting on an impression.

The reviewer stays read-only — a reviewer that executes the code it reviews is
not an independent reviewer. The command does the running instead:

- `/trekreview` Phase 4.5 runs the brief's `## Success Criteria` commands
  through `lib/verification/criteria-runner.mjs --brief --evidence` and captures
  the block as `sc_evidence_block`, pasted verbatim into the reviewer prompt in
  Phase 5. The exit code does not stop the review — a failing criterion is
  exactly what the review exists to find.
- `formatCriteriaEvidence` builds that block in code: one row per criterion with
  the command, the exit code and the first output line. Chose a code-built block
  over an orchestrator-written summary so the orchestrator cannot narrate a pass
  that never happened.
- The rubric now judges the supplied result: `PASS` supports Full, `FAILED` /
  `BLOCKED` is `Broken` with the exit code cited, and `NOT RUN` is the absence
  of a measurement — never evidence in either direction.
- Phase 4.5 is skipped in `quick` mode: that mode does not launch the
  conformance reviewer, so there is nobody to hand the result to.

Red first: seven tests in `tests/lib/criteria-runner.test.mjs` against a
committed brief fixture whose three criteria pass, fail, and are prose-only.
The two doc pins were verified red against the pre-fix files (rubric asked
"exists and passes"; no Phase 4.5; the block reached nobody).

Suite: 1117 (1115/0/2), up 9.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 01:34:18 +02:00
..
trekbrief.md release(v5.10.1): drop gemini-bridge from the pipeline; correct the T1 §6 PoC status 2026-09-03 20:29:39 +02:00
trekcontinue.md feat(commands): drop orchestrator model pins - inherit session model 2026-07-02 17:09:49 +02:00
trekendsession.md fix(trekendsession): release v5.9.1 - eager-exec blocks crashed command load 2026-07-03 01:11:02 +02:00
trekexecute.md fix(execute): run the plan's Verification on the single-session path (D-03) 2026-09-18 01:30:57 +02:00
trekplan.md fix(trekplan): drop TaskCreate/TaskUpdate from the tool lists - measured dead weight 2026-09-17 15:34:50 +02:00
trekresearch.md fix(docs): no doc claims an opus orchestrator any more; research spawns use the resolved model 2026-09-17 17:00:30 +02:00
trekreview.md fix(review): run the success-criteria commands and hand the reviewer the result (D-04) 2026-09-18 01:34:18 +02:00