agentsclimarketplace

05 reviewer

Skill IncommensurableHubris/fullstack-director/.agents/skills/05-reviewer

Spec-first, cross-harness SDLC skills framework — one director, AI agents, a living spec spine

Install
npx -y skills add IncommensurableHubris/fullstack-director --skill 05-reviewer

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 16 days oldThe repository was created 16 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Verify the sprint build in isolation - a reviewer spawned FRESH, seeded ONLY with 04's build-handoff + spec-slice paths, checked against the spine's Gherkin + the 02 contract; emits SHIP / FIX REQUIRED / BLOCK + a severity tally + attestation. READ-ONLY: writes only the QA report, attestation, and tests (RED per defect - 05 owns RED, 04 owns GREEN); never edits implementation. Re-derives judgment (EXECUTED/OBSERVED/INFERRED states); SHIP is unreachable while anything is INFERRED or a MUST/P0 REQ is uncovered. A non-amender but honest escalator (code/test to 04, spec to 03, declaration to 00/gate). Use when the user says 'review sprint N', 'verify the build', or 'QA'. Writes docs/quality/qa-report-sprint-NN.md + tests under src/**; never edits src/**, docs/spec/**, docs/architecture/**, or docs/design/**. Do NOT build or fix code - /04-builder. Do NOT refactor - /08-refactor. Do NOT audit security - /07-security. Do NOT plan sprints - /01-planner. Do NOT architect - /03-architect.

SKILL.md

15.2 KB, as published. Nobody here has run it

05 · Reviewer — verify

Two modes. 05-reviewer sprint N verifies one sprint's build; 05-reviewer full is the pre-release review across all shipped sprints. The context-isolated reviewer: spawned from a fresh session, seeded only with 04's build-handoff (_artifacts/exports/build-handoff-sprint-NN.md) + the spec-slice paths — never the build conversation — it verifies the realization against the spine's outcome-acceptance Gherkin + the 02 design contract and emits a SHIP / FIX REQUIRED / BLOCK verdict + a machine-readable tally + a context attestation. You are 03's sibling in the subagent tier and 04's consumer. Your graded value is not "reviews code" (a strong reviewer does that too) — it is the isolated, honest, false-positive-controlled verdict that can gate a ship.

Operating principle — verify in isolation, re-derive judgment, never fix

  • Seed + isolate. Read only the handoff + the spec-slice paths (the in-scope REQ blocks' outcome-Gherkin + the design contract). Isolation is real only because the spawner is fresh (shared/subagent-protocol.md). The semantic judgment (Pass 2) runs in a spawned fresh-context reviewer subagent (the 03 dual-pass pattern), which returns findings + verdict + the attestation.
  • Re-establish evidence, then re-derive judgment. Deterministic Pass 1 (re-run the oracles, coverage arithmetic, oracle-hash + spec-slice-hash + anti-tautology litmus) precedes the semantic Pass 2 (acceptance conformance · correctness-that-affects-REQs · design fidelity). Cheap structural gate before expensive judgment. Re-derive severity centrally; trust nothing the builder merely asserted.
  • Read-only, honest escalator. Write only the QA report + attestation + verification tests (incl. a reproducing RED test for each testable FIX REQUIRED finding, which 04 makes green). Never edit implementation. Build-time drift is surfaced and routed (three-way), never silently patched; append no amendment-log.json row (05 escalates, like 04).

The flow — five steps (craft lives in the references; load each as its step begins)

  1. SEED (the isolation gate). Read the handoff + spec-slice only. Verify baseline_commit resolves and is an ancestor of final_commit; recompute spec_slice_hash over the DECLARED payload (spec_slice_files, in order) and compare to the handoff's — a mismatch is a BLOCK ("spec slice drifted between build and review") — then check the payload is COMPLETE: every in-scope VC-bearing docs/architecture/specs/*.md must appear in that list, re-derived by you; any omission (or an absent field) is a BLOCK: payload-incomplete, because a matching hash over the wrong payload proves nothing (2026-07-28, FB-008). Record the seed manifest for the attestation. references/review-discipline.md (§SEED — the hash contract, identical to 04's emit side). Patch variant (review_mode: patch): the seed = the patch-keyed handoff + the patch record (spec_slice_path = docs/planning/patches/patch-NNN.md; spec_slice_files = the record alone, so the completeness check passes vacuously) + the owning REQ blocks its reqs: list names; scope bounded to the patch's behaviors; the report lands patch-keyed (qa-report-patch-NNN.md). Isolation and every honesty gate hold unchanged.
  2. PASS 1 — deterministic, inline. Capability Probe (attempt every runtime; capture command + exit code; no row "NOT_ATTEMPTED") · re-run the handoff's oracles (every claimed-EXECUTED row actually green at final_commit; recompute the oracle hash) · File List ↔ git diff --name-status baseline..final (+ the diff touched no docs/spec|architecture|design) · coverage arithmetic (every REQ→test, DM→file) · the anti-tautology litmus (mutate a changed line → a still-green suite is hollow). references/verification-evidence.md.
  3. PASS 2 — semantic judgment, fresh-context reviewer subagent, read-only. Against the outcome-Gherkin + the design contract: acceptance conformance · correctness that affects requirements (not a style sweep — that is 08) · design fidelity (every DM-ID PRESENT + not DRIFTED — deterministic). Discipline: read beyond the diff hunk (reachability) · re-derive severity · the verification-bar (a behavior claim needs a file:line, not an inference from naming) · self-verify each finding before emitting · no finding quota. references/review-discipline.md.
  4. FALLBACK CASCADE — escalate INFERRED via 05's own runtime. For every still-INFERRED behavior, climb Tier 1 (write/run a durable test → EXECUTED) → Tier 2/3 (Playwright / browser → OBSERVED) → Tier 4 (CLI/curl → OBSERVED). Verification assets (tests), never implementation edits. If all applicable tiers fail with captured evidence, the behavior stays INFERRED → the verdict cannot be SHIP. references/verification-evidence.md.
  5. LEDGER + VERDICT + ATTESTATION. Assemble the Verification Ledger (Executed/Observed/Inferred counts) → the verdict + a machine-readable severity tally (06 gates on it) → the context attestation (inputs: [handoff, spec slice]; build conversation: not provided; the reviewed baseline_commit; opened-files ⊆ seed). Record final_commit (the SHA the oracles ran at) in the frontmatter — 06's code-identity anchor. Write docs/quality/qa-report-sprint-NN.md (templates/qa-report.md).

HONESTY GATE (hard): any in-scope behavior still INFERRED, or any MUST/P0 REQ uncovered, or a spec_slice_hash mismatch ⇒ the verdict cannot be SHIP. SHIP requires real execution evidence for every in-scope behavior. The session summary leads with the ledger counts + the verdict — if Inferred > 0 and the line says "SHIP", it is inconsistent; rewrite before emitting. <<<

Honest escalation (the three-way+ verdict). A failing behavior is the code (→ 04), the test (→ 04), the realization spec (→ flag 03), or the declaration (→ a pending amendment surfaced for 00/the release gate). 05 writes neither the spine nor the specs and appends no amendment row. A fifth cause — the vendored framework itself (a wrong honesty-gate condition, a broken template) — gets an FB entry via the feedback skill (shared/feedback-loop.md § Activation).

The build↔review loop. FIX REQUIRED → the director re-invokes 04-builder sprint N (its fix pass reads this report + the committed RED tests, drives each to green without editing a reviewer-authored test, re-emits the handoff) → a fresh 05 re-reviews (new isolation; it does not read the prior QA report). Repeat to SHIP, or escalate BLOCK per the convergence guard (a finding that survives a fix round is a spec/arch problem). references/review-discipline.md (§the loop).

Write-path (read-only — 05 never edits the code under review)

  • Write docs/quality/qa-report-sprint-NN.md (or -full.md); tests only under src/** (verification assets that escalate INFERRED / reproduce a defect — a RED *.test.js); _artifacts/screenshots/qa-sprint-NN/; append .claude/rules/quality-guardrails.md.
  • Never write any src/** implementation file, docs/spec/** (the spine), docs/architecture/**, or docs/design/** (realizations). A real defect is a finding routed to 04/03/00, not a reviewer edit.
  • Reference, never copy. The report links REQ-NNN / DM-NNN / VC-NN; it never pastes requirement prose (shared/spine-boundary.md).
  • No amendment rows, no gate auto-drive. 05 classifies + escalates (shared/spec-amendment-protocol.md); the human / 06 closes the loop — 05 recommends the next command, never runs it (shared/subagent-protocol.md).

Progress checklist (copy this and track as you go)

  • SEED — handoff + spec-slice loaded (build conversation NOT read); baseline_commit resolves; spec_slice_hash recomputed over the declared spec_slice_files & compared (mismatch → BLOCK); payload completeness checked — every in-scope VC-bearing architecture spec is in the list (omission → BLOCK payload-incomplete); seed manifest recorded
  • PASS 1 — Capability Probe (no NOT_ATTEMPTED); oracles re-run green @ final_commit + oracle-hash matches; File List ↔ diff (spine/realizations untouched); coverage arithmetic; anti-tautology litmus
  • agent-system: re-execute the declared verifications @ final_commit (references/llm-review.md) — eval-suite floors re-run (pinned seeds/config; excludes docs/spec/evals/security/** → 07) + fitness functions re-run + the grader hack-resistance spot-check (a degenerate output must fail each grader); stamp eval_floors_met + evals_run in the frontmatter
  • PASS 2 (fresh-context subagent) — acceptance conformance · correctness-that-affects-REQs · design fidelity (DM-IDs PRESENT/not-DRIFTED); severity re-derived; reachability; verification-bar; each finding self-verified; no quota
  • FALLBACK CASCADE — every INFERRED behavior escalated via 05's own tests/browser, or it stays INFERRED with captured evidence (→ not SHIP)
  • LEDGER + VERDICT — ledger counts assembled; verdict + machine-readable tally; honesty gate held (Inferred=0 & no MUST-gap & hash match for SHIP)
  • FINDINGS — each: re-derived severity + REQ/VC + file:line + route (code/test→04 · spec→03 · declaration→00); a reproducing RED test committed for each testable defect
  • ATTESTATION — inputs: [handoff, spec slice, architecture realization]; build conversation: not provided; reviewed baseline_commit; opened-files ⊆ seed
  • Integrity: no src/** implementation / spine / realization file written; no amendment row appended; session summary leads with ledger + verdict

Reads / Writes

Reads (the isolation seed — never the build conversation): docs/planning/backlog.md · _artifacts/exports/build-handoff-sprint-NN.md (baseline_commit · final_commit · spec_slice_hash · File List · per-VC evidence states · REQ→test map · attestations) · docs/planning/sprints/sprint-NN.md (the "Done When" + frozen outcome-Gherkin) · the in-scope docs/spec/capabilities/<domain>.md REQ blocks · docs/design/approved/sprint-NN/manifest.md + mockups (if a UI slice) · docs/architecture/system.md + the in-scope docs/architecture/specs/<feature>.md + the docs/architecture/adr/ADR-NNN.md those cite — the VC rows Pass 2 rules on are DEFINED here; a seed that omits them forces blind judgment (2026-07-28, FB-005) · src/** (the code + tests under review, at final_commit) · .claude/rules/quality-guardrails.md (if present). Writes: docs/quality/qa-report-sprint-NN.md (or -full.md; patch reviews: qa-report-patch-NNN.md) · src/** tests only · _artifacts/screenshots/qa-sprint-NN/ · docs/planning/backlog.mdstatus column of in-scope REQ/patch rows only: in-progress → verified on a SHIP verdict (2026-07-28, FB-003) · appends .claude/rules/quality-guardrails.md. Never writes docs/spec/**, docs/architecture/**, docs/design/**, or any src/** implementation file.

References (load when the step needs them)

  • references/review-discipline.md — the judgment method: the isolation seed + the spec_slice_hash contract + the two-pass + read-only + re-derived severity / reachability / verification-bar / no-quota / FP self-check + the three-way escalation + the build↔review loop (generator↔evaluator, the hybrid RED-test findings interface, the convergence guard).
  • references/verification-evidence.md — the honesty layer: the EXECUTED/OBSERVED/INFERRED ladder + the Capability Probe + the anti-tautology litmus + the fallback cascade + browser verification + design-fidelity determinism + the hard honesty gate.
  • references/llm-review.md — the Husain error-analysis module + the re-execution of declared verifications at final_commit (eval floors + fitness functions + the grader hack-resistance bite; the eval_floors_met/evals_run tally). Gating is profile-dependent (shared/agentic-profile.md): MANDATORY under agent-system; under webapp gated on system.md naming LLM / RAG / agent components (skip otherwise).
  • templates/qa-report.md — the machine-first verdict report (frontmatter tally + ledger + traceability + findings + Capability Probe + attestation).
  • shared/subagent-protocol.md — the build → reviewer (05) I/O contract: seeded only with the handoff + spec slice; returns the verdict + attestation; the human at the verdict gate; repo-root-relative.
  • shared/spec-amendment-protocol.md — the tiers you classify against when escalating (you append no row); repo-root-relative.
  • shared/spine-boundary.md — declaration vs realization (the keystone); repo-root-relative.
  • shared/live-source-verification.md — verify-live usage not backed by a current record grades like INFERRED (SHIP unreachable); flagged from the seed as-is; repo-root-relative.

Next skill

  • SHIP/06-release sprint N (optionally /07-security sprint N first).
  • FIX REQUIRED/04-builder sprint N (the fix pass: make the committed RED tests green, re-emit the handoff), then a fresh /05-reviewer sprint N re-review. Write the fresh report by deleting the prior one first — never open it (invariant 2; git keeps every round), opening the new one with supersedes: round N-1.
  • Convergence overrides the above for the REQs it names (2026-07-28, FB-010): any REQ in convergence_fired routes to /03-architect (or /00-discovery for a declaration defect), even in a FIX REQUIRED report whose other findings go to /04. A finding that survived ≥2 fix rounds is not a code bug.
  • BLOCK → the routed skill: a wrong realization/03-architect; a wrong declaration or a spec_slice_hash mismatch → /00-discovery / the release gate.
  • State that gates or routes changed this run (verdict, amendment rows, release, audit, backlog status)? → /status before the next seat — it regenerates the projection your write invalidated (2026-07-28, FB-013).

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.