Skip to content

feat(engine): boot pipeline — Step 0 checks in one decision-ready call#389

Open
leeovery wants to merge 2 commits into
feat/engine-drop-map-viewfrom
feat/engine-boot
Open

feat(engine): boot pipeline — Step 0 checks in one decision-ready call#389
leeovery wants to merge 2 commits into
feat/engine-drop-map-viewfrom
feat/engine-boot

Conversation

@leeovery

Copy link
Copy Markdown
Owner

What

PR 7 of the engine stack (on #388). The boot check pipeline (moment-class 11 in the design log) becomes code.

  • engine boot — runs migrate.sh + knowledge check + knowledge compact (when ready) in one call, returning {migrations:{changed, output}, knowledge, compacted, warnings}. migrate.sh failure is a hard error (migrations never half-run silently); compact failures warn-don't-block. changed is derived from migrate.sh's own stop-gate marker, deliberately not git status (pre-existing session dirt under .workflows would false-positive — reasoning documented in boot.cjs).
  • engine commit --workflows — whole-.workflows scope for the migration commit.
  • workflow-start Step 0 — 0.2/0.3 rewritten around the one boot call; the migration summary + gate and the knowledge terminal stop move in verbatim. Tool calls per boot: happy path 3 → 1, migrations-applied path 7 → 3. ~197 lines of runtime-loaded instruction (migrate SKILL.md + knowledge-check.md) no longer load.
  • /workflow-migrate retired to an internal note — survey confirmed workflow-start was its sole invoker; scripts/migrate.sh + migrations/ stay (now invoked by boot). CLAUDE.md/CONVENTIONS.md dev docs re-pointed.
  • allowed-tools audit: git add/git commit/git rm dropped from workflow-start (zero call sites — routed through the engine since feat(engine): transaction family — topic cancel/reactivate, inbox lifecycle, scoped commit #386); git diff added.

Flags for review

  • knowledge-check.md now has zero skill loaders (left intact per scope; candidate for retirement in a later cleanup).
  • README's Utilities listing still mentions workflow-migrate (user-facing; left).
  • Compact's chunks-removed display is no longer shown (boot reports compacted: bool only) — minor informational loss.

Tests

117/117 (10 new boot tests — hermetic stub-script layout exercising real __dirname resolution, plus one real-migrations integration test asserting idempotent changed: false on second run); start 56/56 and epic 98/98 unchanged; typecheck clean.

🤖 Generated with Claude Code

leeovery and others added 2 commits June 12, 2026 18:11
…ne call

engine boot runs migrate.sh (hard error on failure — migrations never
half-run silently), then knowledge check, then compact when ready
(warn-don't-block), answering with one decision-ready JSON line.
migrations.changed mirrors migrate.sh's own files-updated stop-gate
signal; the trimmed report keeps the update counts. commit gains a
--workflows scope staging the whole tree — migrations touch many work
units plus .workflows/.state.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… stop inline

Steps 0.2 (migrations) and 0.3 (knowledge check) now branch on one
engine boot call instead of orchestrating migrate.sh, knowledge check,
and compact across separate commands. The conversational pieces keep
their exact display formats and STOP semantics: the migration summary
and review gate move in from the migrate skill (commit lands via
engine commit --workflows), the not-ready terminal stop moves in from
knowledge-check.md. The migrate skill's SKILL.md becomes an internal
note — its scripts stay, invoked by engine boot. Allowed-tools: git
add/commit/rm dropped (no call sites remain), git diff added for the
migration review.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant