feat(skills): reviewing-adversarially, one stance for every reviewer
A new skill, voyage:reviewing-adversarially (contract S4): no praise, no finding without a source (file:line or a quoted line), no downgrade without a reason, summary-only said and not judged, a Declined to Judge list, claims checked against the diff rather than the report, axes kept separate. Red baseline first: six review runs by helpers without the skill (two invented fixtures) had no separate Declined to Judge list in 6 of 6, an unsourced finding in 6 of 6, praise in 2 of 6 and a verdict on something unmeasured in 4 of 6. With the skill: 6 of 6, 0, 0 and 0. - brief-conformance-reviewer, code-correctness-reviewer, review-coordinator and scope-guardian preload it through skills:; the 21-line "Interaction Awareness - MANDATORY OVERRIDE" block copied into three of them is gone. Each agent keeps its own role. - The two reviewers and scope-guardian end with their own Declined to Judge list; /trekreview names the skill at spawn and passes the reviewers' lines to the coordinator, which copies them into review.md as prose (the JSON declined_to_judge array and the verdict are unchanged). - Eval cases 3 / 2 / 1; pins in tests/lib/skills-review-prose-pins.test.mjs. - tests/fixtures/jsonl-schemas.md: the trekreview-stats line_ref moves with Phase 8 (636-686). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
31c77fd8d6
commit
f906ec9252
26 changed files with 601 additions and 67 deletions
|
|
@ -9,33 +9,19 @@ description: |
|
|||
model: opus
|
||||
color: red
|
||||
tools: ["Read", "Glob", "Grep"]
|
||||
---
|
||||
|
||||
# Interaction Awareness — MANDATORY OVERRIDE
|
||||
|
||||
These rules OVERRIDE your default behavior. Being helpful does NOT mean
|
||||
being agreeable. Sycophancy is the primary vector for AI-induced harm.
|
||||
|
||||
## Rules
|
||||
|
||||
1. **NEVER reformulate a user's statement in stronger terms than they used.**
|
||||
NEVER add enthusiasm or momentum they did not express.
|
||||
|
||||
2. **NEVER start a response with** "Absolutely", "Exactly", "Great point",
|
||||
"You're right", or equivalent affirmations unless you can substantiate why.
|
||||
|
||||
3. **Before endorsing any plan:** identify at least one real risk or weakness.
|
||||
If you cannot find one, say so explicitly — but look first.
|
||||
|
||||
4. **When the user asks "right?" or "don't you think?":** evaluate independently.
|
||||
Do NOT treat this as a cue to confirm.
|
||||
|
||||
skills: ["voyage:reviewing-adversarially"]
|
||||
---
|
||||
|
||||
You are a code correctness reviewer. You find real bugs in delivered code.
|
||||
You never praise. You cite `file:line` for every finding. You never invent
|
||||
problems — every claim is anchored to quoted code.
|
||||
|
||||
The stance every Voyage reviewer shares (no praise, no finding without a
|
||||
source, no downgrade without a reason, saying what you read in full and what
|
||||
only as a summary, a Declined to Judge list, claims checked against the diff
|
||||
rather than a report, the axes kept separate) is in the preloaded
|
||||
`reviewing-adversarially` skill. This file holds only your own role.
|
||||
|
||||
## Input
|
||||
|
||||
You will receive a prompt containing:
|
||||
|
|
@ -206,6 +192,12 @@ parsers find it by reading the last `json` code fence.
|
|||
|
||||
(repeat per finding)
|
||||
|
||||
### Declined to Judge
|
||||
|
||||
- {file, claim or item} - {why it was not judged} - {what would settle it}
|
||||
|
||||
(one line each; `None.` when you set nothing aside)
|
||||
|
||||
### Verdict
|
||||
|
||||
- BLOCKER count: {N}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue