Release 0.68.0
Pre-release
Pre-release
[0.68.0] - 2026-05-25
Added
- Core Philosophy guidance ("Build the right thing, not the easy thing") in
AGENTS.spellbook.md(mirrored to the global config). It guides both autonomous decision-making and the options develop presents to the operator: prefer the most correct, least deferred, most ergonomic, easiest-to-understand path. - Self-contained operator questions across the develop family. Every operator-facing question now restates why it is asked and defines its terms inline (with a definitions block in
feature-config), so a low-context operator can answer without reading docs. - Need-flag wizard in
commands/feature-config.md: plain-languageneeds_research/needs_design/needs_infrastructureflags plus asize_estimate, replacing the file-count classification at Phase 0.7. - develop gate ledger. develop records its progress (current phase, remaining quality gates, plan pointer) into
workflow_stateat each phase/gate transition via a newdevelop_gate_ledgerkey, so PreCompact/SessionStart recovery captures real progress. - Accountability nudge. A nudge fires when develop is the active skill past Phase 0 but no develop gate ledger has been recorded, surfacing stalled or unrecorded progress.
- Recovery directive remaining-gates rendering. The SessionStart recovery directive now re-asserts the remaining quality gates after a compaction so a resumed session cannot declare completion with gates unrun.
- Follow-up Tasks subsystem. Blocker options are annotated by alignment with the development philosophy; deferred work is captured as concrete Follow-up Tasks persisted via
memory_store, surfaced post-PR, with an open-count shown insession_init. - Grep gate under
tests/guarding against reintroduction of the removed execution-mode and tier vocabulary acrossskills/,commands/, andagents/. - Per-file schema-size exemptions for
commands/crystallize.md(the shrink tool that cannot crystallize itself) and the governance-dense central orchestratorskills/develop/SKILL.md.
Changed
- develop classifies by need-flags, not file-count tiers. Rigor is now driven by what the work actually requires (
needs_research/needs_design/needs_infrastructure+size_estimate) rather than how many files it touches. All tier names (TRIVIAL/SIMPLE/STANDARD/COMPLEX) are gone. - Zero-flag fast path. A change with no need-flags takes a fast path where develop stays resident (it never exits) under a lighter-but-non-zero review floor, so trivial work still passes a baseline review.
- Single-orchestrator execution only. develop now uses delegated or direct single-orchestrator execution exclusively.
Fixed
- develop now feeds the compact machinery. workflow_state is written at phase/gate transitions so the PreCompact/SessionStart recovery machinery captures real progress instead of empty state.
- Compact-machinery allowlist.
_ALLOWED_STATE_KEYS(spellbook/sessions/resume.py) now acceptsstint_stack,compaction_flag, anddevelop_gate_ledger, which the PreCompact hook and develop write; previously these keys failed validation and persisted nothing. - Recovery directive key mismatch. Corrected
binding_decisions→decisions_bindingso the bound-decisions section of the recovery directive renders instead of reading a non-existent key. - Atomic
workflow_state_update. The update path is now a read-merge-write transaction (CRIT-2), preventing field loss when develop and the PreCompact hook write interleaved.
Removed
- Complexity tier model. The TRIVIAL/SIMPLE/STANDARD/COMPLEX classification and all ~13 consumption sites are removed in favor of need-flags.
work_itemsandsub_orchestratorsexecution modes in develop. develop is single-orchestrator (delegated/direct) only. The forge work-packet subsystem (spellbook/forged/) is unaffected and preserved; only develop's routing intowork_itemswas severed.dispatching-sub-orchestratorsskill reduced to a deprecation stub; its cross-references indispatching-parallel-agentswere removed.- Dead
next_actiondirective block in_build_recovery_directive(the key was never allowlisted or written).
Full Changelog: v0.67.0...v0.68.0
This release was automatically created when .version was updated to 0.68.0.
The floating tag v0 now points to this release.