Checklists

requirements.md

Specification Quality Checklist: Terminus-Safety Invariant

Purpose: Validate specification completeness and quality before proceeding to planning Created: 2026-09-19 Feature: spec.md

Content Quality

  • ✅ No implementation details (languages, frameworks, APIs) — behaviors described as user-observable (exit codes, no-mutation, no fabricated record); code seams live in the design brief/plan, not the spec
  • ✅ Focused on user value and business needs
  • ✅ Written for non-technical stakeholders (Summary + Success Criteria are outcome-framed)
  • ✅ All mandatory sections completed

Requirement Completeness

  • ✅ No [NEEDS CLARIFICATION] markers remain
  • ✅ Requirements are testable and unambiguous
  • ✅ Requirement types are separated (Functional / Non-Functional / Constraints)
  • ✅ IDs are unique across FR-###, NFR-###, and C-### entries
  • ✅ All requirement rows include a non-empty Status value
  • ✅ Non-functional requirements include measurable thresholds (0 manual steps; < 2s; no regression verified against named suites)
  • ✅ Success criteria are measurable (0 wedged / 0 fabricated / 0 split-brain / red-before-green-after)
  • ✅ Success criteria are technology-agnostic
  • ✅ All acceptance scenarios are defined
  • ✅ Edge cases are identified (all-cancelled-unmerged, vacuous-resume, softened-quality-gate, teardown-before-rollback, --force)
  • ✅ Scope is clearly bounded (4 tickets folded; sibling clusters explicitly out)
  • ✅ Dependencies and assumptions identified (D1–D5 recorded)

Feature Readiness

  • ✅ All functional requirements have clear acceptance criteria
  • ✅ User scenarios cover primary flows (merge safety, close safety, rollback, consolidation)
  • ✅ Feature meets measurable outcomes defined in Success Criteria
  • ✅ No implementation details leak into specification

Notes

  • D4 (close guards on merged not completed) and D5 (direct-on-target rollback scoping) are agent-decided defaults flagged for operator veto in the spec's Assumptions section; both are captured in the ADR authored post-spec.
  • All items pass on iteration 1.