merge: main (7d) into 7c

Union of the two new Skills rows in CLAUDE.md and README.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Kjell Tore Guttormsen 2026-10-17 17:39:09 +02:00
commit 692f528a5c
Signed by: ktg
SSH key fingerprint: SHA256:JakMjO6FTBBzN0Bhfj9saOoEjaFxlSdYuZQQpM/lF9Q
26 changed files with 601 additions and 67 deletions

View file

@ -381,6 +381,15 @@ message, multiple tool calls.
Reviewers run independently. Do NOT pre-feed findings between them.
**Reviewer stance: the `reviewing-adversarially` skill.** Both reviewers and
the coordinator have `voyage:reviewing-adversarially` preloaded through their
`skills:` line. Name it in every reviewer prompt anyway, so the rules hold even
where preloading did not happen: "Follow the reviewing-adversarially skill: no
praise; every finding cites file:line or quotes the line; no downgrade without
a reason; say what you read in full and what only as a summary; list what you
did not judge under ### Declined to Judge; check claims against the diff, not
a report."
| Agent | Mode-gated | Purpose |
|-------|------------|---------|
| `brief-conformance-reviewer` | Skipped in `quick` | Trace each Success Criterion + Non-Goal to delivered code. Emits findings tagged with rule_keys from the conformance/scope categories. |
@ -478,7 +487,11 @@ forbids `ALLOW` (`lib/review/coordinator-contract.mjs`, `missing_reviewers`).
Launch `review-coordinator` (Agent tool) with the merged findings array
from Phase 5 AND the Phase 4.7 engine payloads, plus the triage map, brief
metadata, SHA range, the expected reviewer set (engines included), and each
not-run engine with its reason.
not-run engine with its reason. Name `voyage:reviewing-adversarially` in the
coordinator's prompt as in Phase 5, and pass each reviewer's
`### Declined to Judge` lines verbatim from its saved
`{project_dir}/.review-out-{reviewer}.md`: the coordinator copies them into
`## Declined to Judge`, so nothing a reviewer set aside disappears.
**Brief choices.** Next to the brief metadata, pass the brief's choices
verbatim: extract the `## Non-Goals`, `## Constraints` and `## Preferences`