ワンクリックで
adversarial-collision
Use when attacking branches to find what the verifier cannot catch.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Use when attacking branches to find what the verifier cannot catch.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Use when flagging branch conviction or calibrating instinct against outcomes.
Use when budgeting, routing, and scaling a run to fit the ask.
Use when selecting the surviving branch on verifier evidence after collision.
Use when recording dead branches so future runs avoid re-litigating them.
Use when isolating branches in git worktrees and reconciling the survivor.
Use when verifying a branch with any stack's real test toolchain.
| name | adversarial-collision |
| description | Use when attacking branches to find what the verifier cannot catch. |
The collide step applies P-deepen to every live branch: refuse the surface answer and find what tests, types, and lint cannot see. The adversary breaks; it never fixes — fixing your own findings is self-grading, the test-gaming failure mode.
decide mode — there is no adversary pass on a question; the judge weighs
idea digests directly.uv run ruff check . && uv run pyright) BEFORE dispatching any model. A
branch that fails static checks is recorded to the failure taxonomy
(death_reason: "failed static checks before collision") and excluded. The
adversary is the most expensive judgment pass; it only attacks branches that could
possibly win.fable Task per
live branch, each given .pqa/branches/bN/ (or its worktree) — the adversary Reads
the code and notes.md in its own context. Never inline branch code into dispatch
prompts.{branch_id, severity, category, title, detail, resolved: false} — detail names the trigger input/condition and why the
verifier misses it. resolved is always false from the adversary.conviction: high protects a branch
from early pruning — it buys attention, not leniency. "High-conviction branch
failed under attack" is the best calibration row the system records.return None? Do they assert
values or just shapes? Tests that would survive mutation are a critical finding —
they compromise the verifier signal itself.pqa.collision.score_all. A
critical unresolved finding is a deadly hit.| Severity | Meaning | Effect at collapse |
|---|---|---|
| critical | fails its purpose in a way the verifier misses (corruption, bypass, deadlock, silently wrong output) | unresolved = branch dies regardless of tests |
| high | real bug a competent reviewer blocks on | weighs against; not fatal |
| medium | suboptimal in a way that matters | tie-break material |
| low | style, naming | surface it; spend no budget |
Critical inflation destroys the gate: if everything is critical, the orchestrator learns to discount the adversary, and the one finding that matters drowns.
Branch b0, fixed-window rate limiter. Verifier: green, 91% coverage. The finding:
{"branch_id": "b0", "severity": "critical", "category": "correctness",
"title": "burst-at-boundary admits 2x the limit",
"detail": "Two windows sharing an edge each admit a full quota: 100 requests at
09:59:59.9 plus 100 at 10:00:00.1 — 200 admitted in 200ms against a 100/min limit.
No test exercises a window edge, so the verifier stays green.",
"resolved": false}
b0's defense pass cannot resolve it without changing topology (sliding window), so the finding stands and b0 dies despite passing verification. That is the gate working: green tests are necessary, never sufficient.
low in volume crowds out the one
critical that decides the run.