audit-verification
An agent finishes a task and says βdone β tests pass.β It never ran them. Or it
writes code that calls a function nobody defined. audit-verification is the
signal that catches exactly that: a completion claimed without the work being
verified.
What it solves
Octopus already guards two of the three ways an agentβs βdoneβ can be a lie:
- the syntactic block (the
guardrailsbundle) stops unformatted, untyped, or secret-bearing code β but only at commit, and an agent can stop without committing; - the semantic signal (
audit-grounding) flags invented conventions and unsupported domain facts β but it judges meaning, not whether the work was run.
That leaves the third gap: claimed done without running. The type checker
would catch a call to a function that doesnβt exist β but only if it is actually
invoked. audit-verification is the side of the triad that asks βwas this
verified?β and reports when the answer is no.
How it works
The design keeps the recurring cost at zero.
- A pure-bash Stop hook (
verification-check) runs at the end of every task β no LLM, no tokens. On a code diff it scans the session transcript for run evidence (did atest/build/typecheckactually execute?), detects missing-file references deterministically, and queues a proposal to.octopus/proposals/only when the work looks unverified. - The fuzzy
unverified-completion-claimjudgment β comparing what the session claimed against what actually ran β is this skill, run on demand via/octopus:review-proposals, on the cheapest model tier. Confronting a claim with evidence is mechanical, not reasoning.
It is signal-only β it never blocks a commit, task, or merge. The syntactic gate already blocks; this surfaces the gap and leaves the call to you.
Usage
The trigger is automatic β the verification-check Stop hook queues a
*-verification.md proposal whenever a task ends with unverified work. You reach
the audit through the proposal queue:
/octopus:review-proposalsThere is no per-task LLM call: the hook is deterministic, and the skill runs only when you review the queue.