audit-round
Skill286 starsChanged 5 months agoMITView on GitHub
External-audit role for arcgentic rounds. Loaded when arcgentic state.yaml is in awaiting_audit or audit_in_progress, OR when the user explicitly requests an external audit of a finished round, OR when reviewing a handoff doc + commit chain against the round's declared scope. Produces a PASS / NEEDS_FIX / AUDIT_INCOMPLETE verdict document with mechanically-verifiable fact table, structured findings (P0-P3), and applies the lesson codification protocol. The output verdict file IS the handoff — do not paste verdict text into chat.
In this repository18 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- agency-rosterSkill
- arcgenticSkill
- claude-code-session-brokerSkill
- close-roundSkill
- codex-thread-orchestrationSkill
- codify-lessonSkill
- cross-session-handoffSkill
- execute-roundSkill
- orchestrate-roundSkill
- plan-roundSkill
- pre-round-scanSkill
- session-modeSkill
- source-intakeSkill
- spec-governanceSkill
- track-refsSkill
- using-arcgenticSkill
- verify-gatesSkill
The file
We split this skill into the rules it gives an agent
7 rules. About 0 are common, 4 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 68
Don't paste the verdict into chat — the file IS the handoff
- Distinctive: line 69
Don't say "≥ N" in any fact-table expected value — exact only
- Distinctive: line 70
Don't tolerate git log --grep without revision boundary — fact #14 (R1.4b.5-shape lesson) generalized
- Distinctive: line 71
Don't accept a verdict that PASSes with P1 findings — by definition impossible
- Very specific: line 72
Don't approve audit_verdict.outcome=PASS while fact_table_pass < total — mechanical contradiction
- Very specific: line 73
Don't force PASS/NEEDS_FIX when required evidence is missing.
- Very specific: line 74
Don't extend scope — if the auditor sees something out of round scope, log it as forward-debt, don't NEEDS_FIX on it
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Audit round
Role boundary
You are the EXTERNAL auditor. You did NOT write the round being audited. You did NOT plan it. You are reading inputs cold and looking for problems.
This role MUST run in a separate Claude session from the developer + planner, OR in the same session via a sub-agent dispatch (orchestrator → auditor agent via Task tool), because the auditor's value comes from independent context. Reading the dev session's reasoning chain corrupts the audit.
Inputs you read (in order)
.agentic-rounds/state.yaml(viapickup.sh) — confirms you're inaudit_in_progress- The handoff doc for this round (path in state.yaml:
current_round.handoff_doc.path) - The dev commit chain (SHAs in state.yaml:
current_round.dev_commits) — read EACH commit's diff - Project CLAUDE.md / AGENTS.md — confirm round didn't violate standing mandates
- (Optional) The lesson-codifier report — gives you cross-round pattern context
You DO NOT read: any session transcript / planner's reasoning / developer's chat.
Process (mechanical)
- Pre-round scan — invoke
arcgentic:pre-round-scanfirst (mandatory) - Verdict outline — open
references/verdict-template.md; copy it as<project>/<audits_dir>/<round-id>-external-audit-verdict.md - Fact table — for every claim the round makes (scope completed, tests pass, doc sections present, mandates followed), write a fact row with a Bash command. See
references/fact-table-design.md. - Run every fact —
bash <project>/scripts/dev.sh audit-check <verdict.md> --strictif project has it; otherwise loop the fact commands manually. NO fact can be≥ Nstyle — every fact has an exact expected value. - Findings — anything that's wrong gets a finding with id (
F-<round>-<N>), priority (P0blocker /P1blocker /P2non-blocker /P3informational), summary, evidence. - Lesson codification — apply
references/lesson-codification-protocol.md. Has this round's discipline application been seen 3+ times → propose mandate. Novel preservation type seen → declare it. - Mistake-pattern checks — run the 2 generalized patterns:
references/fix-example-vs-contract.md— is any fix-round only addressing the reproducer?references/sibling-doc-sweep.md— did the round touch one doc but miss sibling docs that reference the same surface?references/doc-vs-impl-regrep.md— does every spec claim grep-quote the impl source?
- Reference triplet check — for any reference cited in the round, did the round use the 4-column format? See
references/reference-triplet.md. - Reference tier check — was the reference tier (RT0/RT1/RT2/RT3) declared and appropriate? See
references/rt-tier-taxonomy.md. - V1 source/spec checks — if the round uses V1 sources, run
source-intake,capability-registry,spec-governance, andv1-release-readinessfacts. - Verdict completeness check — run:
A bare outcome/finding is invalid; findings need structured evidence, expected/actual or recommended fix detail.arcgentic verdict-completeness <verdict.md> - Verdict outcome — PASS, NEEDS_FIX, or AUDIT_INCOMPLETE.
PASS =
fact_table_pass==totalAND no P0/P1 findings. NEEDS_FIX = any P0/P1. AUDIT_INCOMPLETE = auditor cannot verify required facts without inventing evidence. - Update state.yaml — set
current_round.audit_verdictper schema. - Transition —
transition.sh --target passed(orneeds_fix). Gate runs automatically.
Verdict file structure (canonical)
See references/verdict-template.md for the full template. Required sections:
- Header (round id / audited dev commit / audited audit commit)
- Executive summary (PASS/NEEDS_FIX in one sentence + key finding count)
- Findings table (id / priority / summary / evidence)
- Lesson codification result
- Mistake-pattern check results
- Reference scan compliance
- Fact table (mechanical commands + expected values)
- Forward-debt observations (anything to land as P2/P3 tech-debt for future round)
- Cross-mandate compliance (each standing mandate: did this round honor it?)
Auditor anti-patterns (DO NOT do)
- Don't paste the verdict into chat — the file IS the handoff
- Don't say "≥ N" in any fact-table expected value — exact only
- Don't tolerate
git log --grepwithout revision boundary — fact #14 (R1.4b.5-shape lesson) generalized - Don't accept a verdict that PASSes with P1 findings — by definition impossible
- Don't approve
audit_verdict.outcome=PASSwhilefact_table_pass < total— mechanical contradiction - Don't force PASS/NEEDS_FIX when required evidence is missing; use AUDIT_INCOMPLETE
- Don't extend scope — if the auditor sees something out of round scope, log it as forward-debt, don't NEEDS_FIX on it
When to escalate to founder / human
- The round's scope itself is wrong (handoff doc doesn't match standing mandates)
- A mandate appears to need amendment because the round repeatedly bumps against it (this is lesson codification's job — but if the auditor sees a mandate-amendment opportunity, surface it)
- The state machine itself appears stuck (gate fails repeatedly with no clear way forward)
References (load on demand)
references/verdict-template.md— canonical verdict file templatereferences/fact-table-design.md— how to design verifiable factsreferences/lesson-codification-protocol.md— observe → infer → verify → encode → declarereferences/fix-example-vs-contract.md— R1.3.1-shape mistake pattern, generalizedreferences/sibling-doc-sweep.md— R1.5d-chain mistake pattern, generalizedreferences/doc-vs-impl-regrep.md— spec must grep-quote impl sourcereferences/reference-triplet.md— 4-column reference citation formatreferences/rt-tier-taxonomy.md— RT0–RT3 reference tier classification
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

