Crucible's draft implementation specification is divided into the authoritative slices below. This index and the listed slices jointly form the complete specification. Each numbered section has exactly one owning slice; the organizational slice titles are not additional specification sections.
Section numbers are stable cross-reference identities. A reference such as §12.2 continues to
name the same requirement after this split. Delivery order and current implementation status remain
in ROADMAP.md, which summarizes but does not replace or narrow these requirements.
| Sections | Authoritative slice |
|---|---|
| 1–5 | Mission, Scope, and Principles |
| 6–9 | Architecture and Domain Model |
| 10–11 | Targets, Execution, and Isolation |
| 12 | Configuration and Crucible YAML |
| 13–29 | Campaigns, Oracles, and Bug Model |
| 30–42 | Engines, Generation, and Corpus |
| 43–53 | Findings, Replay, and Minimization |
| 54–70 | Repair, Verification, and Agents |
| 71–80 | Scheduling, Storage, CLI, and Reporting |
| 81–83 | Phases, MVP, and Acceptance |
| 84–93 | Runtime Operational Contracts |
| 94–97 | Expansion and Completion Standard |
- Change normative text only in its owning slice.
- Preserve numbered section identities unless an approved specification change explicitly migrates every affected reference.
- Do not duplicate requirements between slices; use section references or links instead.
- Keep roadmap status, delivery sequencing, and incomplete-work tracking out of normative sections unless they are themselves product requirements.
- Run
bash scripts/check-docs.shafter structural changes. The check rejects missing, duplicated, reordered, or incorrectly owned numbered sections.