Checklists
requirements.md
Specification Quality Checklist: Charter offering, activation presets and the doctrine-to-charter cutover
Purpose: Validate specification completeness and quality before proceeding to planning Created: 2026-10-06 Mission: spec.md
Content Quality
- ✅ No implementation details (languages, frameworks, APIs) — commands, keys and paths named are the product surface being renamed, not implementation choices
- ✅ Focused on user value and business needs
- ✅ Written for non-technical stakeholders (domain-language table defines every term)
- ✅ 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-###, C-### and SC-### entries, and match the requirement-ID grammar
- ✅ All requirement rows include a non-empty Status value
- ✅ Non-functional requirements include measurable thresholds
- ✅ Every FR row and success criterion carries a delivery label and no-op mark (FR-003 is [ratchet], no-op passable yes, paired with FR-002's check on the same fixture)
- ✅ Success criteria are measurable
- ✅ Success criteria are technology-agnostic (no implementation details)
- ✅ All acceptance scenarios are defined
- ✅ Edge cases are identified
- ✅ Scope is clearly bounded (C-005 names what is out)
- ✅ Dependencies and assumptions identified (FR-015 before FR-002; Assumptions section)
Mission Readiness
- ✅ All functional requirements have clear acceptance criteria
- ✅ User scenarios cover primary flows
- ✅ Mission meets measurable outcomes defined in Success Criteria
- ✅ No implementation details leak into specification
Notes
- Bulk-edit mission:
occurrence_map.yamlis produced during plan from the #3732 classification ledger. - Edge-case resolutions (directory merge, canonical-key precedence, preset naming a missing artifact) are proposed defaults; the post-spec squad reviews them.