prosecute
A P5 review-evidence recorder. It validates, hashes, and records ticket- and revision-bound reviewer findings, and passes only after two dry passes across three lenses.
prosecute
ADLC phase: P5 Prosecute · Gate: two consecutive dry passes across at least three distinct lenses are recorded before a change may merge.
What it defends against
prosecute is a recorder, not a reviewer. It makes zero model calls and finds no bugs
of its own. The model-judged skeptical review is a separate tool (npx adversarial-review,
which adlc review wraps); adlc prosecute consumes that review's output as evidence.
It validates the findings, hashes and binds them to the ticket and reviewed revision, and
appends normalized pass records to .adlc/manifest.jsonl. It passes only after two
consecutive dry passes covering three distinct lenses, so a single sycophantic "looks good"
cannot stand in for a real prosecution. The recorded evidence is what P6 later checks.
Note the binary is adlc-prosecute (registry binName) but it dispatches as adlc prosecute.
Usage
adlc-prosecute --input <passes.json> --ticket id [--target label] [--revision rev] [--dir .adlc] [--json]| Flag | Description |
|---|---|
--input <passes.json> | (required) Normalized reviewer-produced pass evidence to record. |
--ticket id | (required) Ticket the evidence is bound to; must be referenced by the transcript. |
--target label | Human-readable label for what was reviewed (e.g. feature branch). |
--revision rev | Reviewed revision string; defaults to git-worktree:<hash>. |
--dir path | Ledger directory (default .adlc). |
--json | Machine-readable result. |
--help | Show usage and exit 0. |
Evidence files (transcript, prompt, inputs) that resolve inside the worktree must live under
.adlc/ or .omo/evidence/, and the transcript must reference both the ticket and the
resolved revision. These are trust-boundary controls against faked review evidence.
Exit codes
--ticket, bad evidence path).2: verified or needs-human findings remain, or the convergence budget ended before two dry passes.Example
$ adlc-prosecute --input p5-passes.json --ticket T1 --dir .adlc
recorded 2 consecutive dry passes across 3 lenses (security, correctness, tests)
exit 0Go deeper
- packages/prosecute
- Why prosecution beats code review: Prosecution, Not Code Review.