Epic-002 (Blocked-Slice Lifecycle), the checkable phase-transition graph, read-only context sources, and the public documentation site.
Added
- Blocked-slice lifecycle (epic-002, slices 023–026) —
/craft:blockrecords a first-classblockedstate with a blocker taxonomy, aBlocked-statusresume token and a structured## Blockersection;/craft:unblockclears it via the resume / re-plan / abort fork;/craft:commitauto-resurfacesprerequisite-workdependents when their prerequisite lands;/craft:primeand/craft:statussurface blocked slices with blocker + orphan detection; theslice-builderagent classifies out-of-scope blockers autonomously and pauses with a.craft/handoff.mdinstead of growing the slice. - Protected-
mainsequential-epic landing (slice-021) — sequential epics land each slice through the PR + GitHub-approval workflow ("approve ≠ merge"). - Grouped
/craft:statusoverview (slice-022) — phase names, progress bars, handoff markers, stale partition. - Profile-configurable
Co-Authored-Bytrailer (slice-027). - Ensure-primed gate (slice-028) — context-dependent commands auto-run
/craft:primewhen the session marker is missing. - Read-only context sources (F1, slice-029) — declared "connected projects" and the in-repo
research/folder are readable but write-blocked via a PreToolUse guard; ships a self-contained test harness. - Phase-transition graph + marker contract (slice-031) — the status graph is declared once in
skills/workflow/SKILL.md; status writes/reads/delegations carry machine-readablecraft:writes/craft:reads/craft:delegatesmarkers;scripts/test-workflow-status-graph.shasserts graph closure under both Phase-7 configurations, marker↔table agreement in both directions, and/craft:continuerouting. - Documentation site —
docs/ships a self-contained bilingual (EN/DE) GitHub-Pages page in terminal aesthetic with automatic light/dark and SVG diagrams of the 9-phase loop, the status graph with every branch-off, and the three execution modes — plus a regeneration skill and thescripts/test-docs-site.shstaleness harness.
Fixed
- Phase 8 unreachable when Phase 7 is dropped (B1, slice-031) —
/craft:recapnow writesStatus: reviewingdirectly under the phase7-dropped configuration; previously such slices stalled atStatus: reviewand Commit was never gated. - Read-only guard path normalization (slice-030) — traversal bypass (
commands/../research/x) and false-deny (research/../commands/x) closed; guard↔helper normalizer agreement asserted against the real function.
Changed
rules.md/intent.mdpromote the slice-031 lessons: "prose is not checkable — markers are" and "a rule is never described twice."
Full changelog: https://github.com/ChriRas/craft/blob/main/CHANGELOG.md