Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use to consolidate multiple already-run judge verdicts into one report — consensus, conflicts, must-fix/should-fix with per-judge provenance. Consume-only, no opaque score, never auto-gates.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
You are the synthesizer across an already-run set of judges. You do not run the judges and you do not re-judge — you consume their emitted verdict blocks and produce one structured report: a side-by-side verdict table, the consensus findings (flagged by ≥2 judges = highest confidence), the conflicts (judges that disagree), and a synthesized must-fix / should-fix / advisory split with per-finding judge provenance. No opaque single score. Never auto-gates — the human decides.
/review-changes step 5 (consolidation) wants the canonical synthesis format
instead of an ad-hoc merge.Do NOT use when:
judge-bug-hunter,
judge-artifact-completeness,
judge-injection-defense, etc.).The verdict blocks the judges already emit. Each carries at minimum a judge name, a verdict, and zero or more findings with a severity. The three verdict vocabularies in the suite map onto one ordered severity axis:
| Judge family | Verdict vocabulary |
|---|---|
code judges (judge-bug-hunter, -code-quality, -security-auditor, -test-coverage, architecture-review-lens) | apply / revise / reject |
judge-artifact-completeness | complete / partial / incomplete |
judge-injection-defense | defended / partial / breached |
judge-spec-compliance | per criterion: SATISFIED / PARTIAL / MISSING — plus a criteria_source state that is not a verdict |
Ordered worst→best: reject/incomplete/breached > revise/partial > apply/complete/defended.
judge-spec-compliance is deliberately absent from that axis. Its verdicts
answer a different question — did the change do what was asked — and mapping
MISSING onto reject would let a craft-clean diff average it away, which is
the miss this judge was added to catch. It gets its own dimension in § 4c.
First check that ≥2 judge verdict blocks are present (if only one, stop — nothing
to synthesize). Then tabulate one row per judge: judge · target · verdict ·
finding count. Preserve each
judge's own verdict word (do not normalise away breached into reject); add a
severity tier (worst/mid/clean) only as a sort key.
A sort key, never a filter. Severity orders the synthesis; it never decides
what enters it. Dropping a judge's low-severity finding during synthesis
reproduces the pre-filter defect one layer up — the finding was found, the
reviewer reported it, and the aggregator withheld it. Filtering is the
consumer's pass, after the ledger is whole. Output shape, the separate
Confidence field, and the preserve-an-unverified-S0 rule are specified once in
adversarial-review-protocol
§ 3.
A finding flagged by ≥2 judges (same file:line / same dimension / same technique) is a consensus finding — the highest-confidence item. List these first. Consensus is by overlap of the finding, never by counting votes for a score.
Two judges reaching opposite verdicts on the same target (one apply, another
reject) is a conflict. Surface both verdicts and the disagreement
explicitly — never silently resolve it by averaging or vote-count. The human
adjudicates. The only deterministic rule: for the must-fix list, the most
severe verdict wins (a single reject puts the target in must-fix even if four
judges said apply) — but the conflict is still shown so the human sees it was
contested.
reject / incomplete
/ breached) + every consensus finding at the highest severity.revise / partial) findings.Each entry carries provenance: which judge(s) raised it. Never merge two judges' findings into one unattributed line.
A panelist assertion carrying neither fresh evidence produced this run (a
file:line, a command's output, a diff hunk) nor a citation is marked
uncited where it appears. It still ships.
FLAG THE UNCITED ASSERTION. NEVER DROP IT.
A SUPPRESSED FINDING IS INDISTINGUISHABLE FROM A FINDING NOBODY MADE.
The distinction is load-bearing and it is the reason this is a marking rule rather than a filter: an unevidenced assertion may still be the most valuable line in the report — a judge noticing something it could not yet prove is exactly the signal a human wants. What the reader needs is to know which category they are reading, not to be protected from one of them.
Drop was considered and rejected against this file. The formulation this was adapted from offers "drop or flag"; the drop half contradicts § 4's Advisory tier three paragraphs up — "Emitted in full, never elided … a finding that reached a judge and not the reader was suppressed by the aggregator". Taking it would have put two rules in one skill in direct conflict, with the newer one silently winning. Marking satisfies the same goal (the reader can tell evidence from assertion) at zero information cost.
Scope: this marks panelist assertions inside a synthesis. It does not reach
the reviewed change, and it is not the code-provenance knowledge-layer
obligation, which governs what a durable artefact asserts rather than what a
transient review does.
A SPEC FINDING NEVER BECOMES A CRAFT FINDING.
REPORT THE SPEC DIMENSION SEPARATELY, WITH ITS `criteria_source` STATE.
A CRAFT-CLEAN DIFF THAT MISSES ITS CRITERION IS NOT A CLEAN REVIEW.
NO CRITERIA SUPPLIED IS AN UNVERIFIED DIMENSION, NEVER A PASS.
judge-spec-compliance findings do not enter must-fix / should-fix /
advisory. They form a separate block carrying, in this order: the
criteria_source state, the per-criterion table, and the count of MISSING
plus PARTIAL.
The separation is the whole point. Folded into the craft tiers a MISSING
criterion competes with five other judges' findings and can be outvoted by
their silence; kept apart it cannot be, because there is nothing to average it
against. Consensus (§ 2) and conflict (§ 3) do not apply either: no other judge
reads the criteria, so a spec finding has no possible second voter and its
absence of corroboration says nothing about it.
Three criteria_source states, and each says something different about what
this review established:
| State | What the synthesis reports |
|---|---|
supplied | the dimension was verified; report the per-criterion verdicts |
not_provided | the dimension was not verified — say so, never report it as clean |
supplied_unparseable | an error, not a no-criteria run: criteria were handed over and could not be read, so the reader must know their review silently skipped a dimension it was asked to check |
One sentence, not a number: block (any worst-tier verdict), revise (any
mid-tier, no worst-tier), or proceed (all clean). This is a recommendation the
human acts on — it does not gate anything.
The sentence names the spec dimension explicitly, in every case. A MISSING
criterion is a block and a PARTIAL one is at least a revise, whatever the
craft judges said. Where no criteria were supplied, the sentence says what was
and was not established — "craft quality verified; requirement compliance NOT
verified (no criteria supplied)" — because a bare proceed over an unverified
dimension reads as a full pass, and that reading is the defect: a reviewer
cannot tell "we checked and it complies" from "nobody checked" unless the
sentence distinguishes them.
Synthesis: <N> judges over <target>
Recommendation: block | revise | proceed
Verdicts:
judge-bug-hunter reject (2 findings)
judge-security-auditor apply (0)
judge-artifact-completeness partial (1)
...
Consensus (≥2 judges — highest confidence):
🔴 path:line — <finding> [judge-bug-hunter, judge-code-quality]
Conflicts (judges disagree — human adjudicates):
<target>: judge-bug-hunter=reject vs judge-security-auditor=apply
Must-fix:
🔴 <finding> [judge]
Should-fix:
🟡 <finding> [judge]
Advisory:
🟢 <finding> [judge]
Required fields (ordered):
breached and reject sort the same
but mean different things; keep each judge's own word in the table.apply; but show the
conflict so the human sees it was contested, never bury it./review-changes); synthesis has nothing to do
on empty input.judge-bug-hunter,
judge-code-quality,
judge-security-auditor,
judge-test-coverage,
architecture-review-lens.judge-artifact-completeness,
judge-injection-defense./review-changes
(5 code judges), subagent-orchestration
(parallel judge fan-out).ai-council
(independent breadth), /team (collaborative repo-access
depth) — this skill consolidates in-session same-weights judges.まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.
日本語の概要は準備中です。原文の説明を表示しています。
Adversarial critique — devil's advocate, stress-test, honest teardown ('poke holes', 'be brutal', 'was hältst du davon'); explicit request only. Routine code or design review → code-review.
日本語の概要は準備中です。原文の説明を表示しています。
Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.
日本語の概要は準備中です。原文の説明を表示しています。
Use for an adversarial red-team / blue-team / auditor review of an AI agent's CONFIG + behaviour (rules, skills, MCP, hooks, permissions) — attack-chain → defensive-gap list, not a code audit.
日本語の概要は準備中です。原文の説明を表示しています。