Skip to content

v0.1.0 — first proven release

Choose a tag to compare

@pjpoulose pjpoulose released this 07 Aug 19:55
· 197 commits to main since this release
98cbd63

First tagged release of adversarial-review: multi-model adversarial code review with a deterministic, machine-computed PASS / FAIL / BLOCKED release verdict.

What's in it

  • Deterministic gates (scripts/gate.py): tri-state PASS/FAIL/BLOCKED recording with exit codes; "couldn't verify" is never "passed".
  • Independent reviewer panels (scripts/panel.py): 3–5 roles resolved at runtime from the router's live catalog; every provider family that authored the change is excluded, with independence computed from model IDs. Injection-hardened prompts, strict JSON schemas (inlined in-prompt and via response_format), malformed-output retry, dead-provider substitution, rebuttal and concurrence rounds.
  • A computed verdict (scripts/aggregate.py): the only thing that can emit PASS/FAIL/BLOCKED (exit 0/1/2), from immutable JSON artifacts.
  • Four transports: OpenRouter key, key file, LiteLLM/any OpenAI-compatible proxy, or keyless MCP (prepare/ingest, e.g. Composio) — with tier-based privacy routing (data_collection: deny, ZDR).
  • Portable: one folder, Python 3.9+ stdlib only. Claude Code, Claude (Cowork), OpenAI Codex CLI, and any SKILL.md-compatible agent.
  • 24-scenario mocked E2E suite, green on Python 3.9 and 3.12, no network or keys needed.

Proven on itself

Every substantive change in this release was gated by the skill: the panel found a real transport bug in its own plumbing (#2), reviewed the fix with a 3-family panel (7 findings, 6 confirmed, 0/2 → 2/2 first-attempt A/B, $0.038), and blocked its own author once for skipping a protocol step — receipts in #1, #2, #3, and the README's Proven on itself section.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Ew3SEPazGWdgYcCrvQes7X