| name | A2 — Spec Review |
| description | Mechanical FR/AC compliance. Walk every functional requirement and acceptance criterion and render a binary Pass/Fail with evidence. No judgment about quality, direction, or architecture. |
| argument-hint | <group-number> [feature-name] |
A2 — Spec Review (FR/AC Compliance)
The mechanical compliance check. A2 walks every Functional Requirement (FR) and every Acceptance Criterion (AC) in the master spec and renders a binary verdict — Pass or Fail — against the implementation, with evidence. It makes no judgment about code quality (that is A3), direction (A4), or architecture (A1). Exhaustive and non-judgmental: each requirement either is satisfied by the code or it is not.
Inputs
spec.md (required — the source of all FRs/ACs) · all micro specs in scope · the actual code files they reference
- The constitution · prior audit reports for this scope (e.g. the A1 report) for cumulative context · the project mode
Process
- Build the requirement checklist: extract every FR and AC that applies to this scope (for a group, the FRs/ACs its micro specs cover).
- Scan each file against each requirement — an exhaustive file-by-file pass. Produce a per-requirement verdict (Pass/Fail) with specific evidence.
- Review the scan for accuracy — correct false positives and false negatives, add context. (Two stages: a fast exhaustive pass, then a careful review pass.)
- (Brownfield) same File-Operations-table scoping and Inherited/Introduced classification as A1.
- Write the report to
audits/{scope}-a2.md: a coverage table listing every FR/AC with Pass/Fail and its evidence, a finding per failure with reasoning trace, and an overall verdict.
Discipline
A2 is binary and evidence-bound. A well-formed finding cites (1) the exact FR/AC ID with its wording, (2) the implementation evidence that fails it, and (3) a Pass/Fail verdict with no ambiguity. If a requirement is itself ambiguous, A2 flags the ambiguity rather than guessing intent — it never invents a passing or failing interpretation to resolve unclear spec language.
Shared machinery
Finding format, the zero-tolerance loop (loops to zero findings), and conviction scoring are shared across all lenses — see docs/the-audit-system.md. A2 may run alongside A1, but A3 still waits on A1 being clean.
Natural language triggers
- "a2 audit group 1"
- "spec review"
- "check FR/AC compliance"