feat(dev): port dev workflow to compiled spec→plan→run.js (v5.56.0)#8
Merged
Conversation
Replace the generic-interpreter dev-implement.js (LLM "discovery" → per-level → heavyweight verifier) with a deterministic compiler + a per-plan compiled runner — the second concrete instance of the spec→plan→compile pattern after ds (PR #7). Built parallel to ds (own scripts/dev/), NOT a premature shared-core extraction (that is the explicit next pass, now that ds + dev triangulate the real seams). New: - scripts/dev/dev_plan_table.py — tolerant parser for dev columns (Task|Deps|Files|Failing Test|Verify Command|Implements) + lifts ## Global Constraints and per-task ## Task Interfaces. 32/32. - workflows/templates/dev-run-template.js + scripts/dev/dev_compile.py — sequential-within-level driver (shared tree, no worktree-merge), TDD test-first implementer that INHERITS the session model (no tier), independent probe gating on the REAL Verify Command exit code ({exit0, filesPresent, testPresent}), R4/declared/hybrid-fullsuite pauses, stale-gate backstop, no-phantom-RED rule. Driver 35/35. - docs/DESIGN-dev-spec-plan-compile.md — design + full parity log (§8c). Changed: - hooks/dev-plan-executable-guard.py reconciled to import the shared parser (compiles ⇔ passes gate); fixes the LLM-discovery format-drift mask. - skills/dev-implement/SKILL.md slimmed to COMPILE → run/pause; G6 doc-drift fixed (guard docstring + plan-template no longer claim worktree/parallel/merge). Removed: - workflows/dev-implement.js — retired after parity proven; no live caller. Honesty fix (wc-audit G1): the old gate keyed on the implementer's self-reported verifyPassed + a non-executing corroboration; the independent probe actually runs the command. Parity PROVEN on the real hylo-tauri repo: idempotent skip, R4 stale-gate backstop + edit→recompile→green round-trip, payload-with-numbers, and both hybrid-cadence cases (terminal→suppress, non-terminal→pause→resume→advance). ds suites unaffected. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UBQQ5zUqZYQjHuZaCrgbkJ
This was referenced Jun 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Ports the dev workflow to the compiled
spec → plan → run.jspattern — the second concrete instance after ds (#7). Replaces the generic-interpreterdev-implement.js(LLM "discovery" → per-level → heavyweight verifier) with a deterministic compiler + a per-plan compiled runner. Built parallel to ds (ownscripts/dev/), not a premature shared-core extraction (that is the explicit next pass — ds + dev now triangulate the real seams).What changed
New
scripts/dev/dev_plan_table.py— tolerant parser, dev columns (Task|Deps|Files|Failing Test|Verify Command|Implements) + lifts## Global Constraints+ per-task## Task Interfaces. 32/32.workflows/templates/dev-run-template.js+scripts/dev/dev_compile.py— sequential-within-level driver (shared tree, no worktree-merge), TDD test-first implementer that inherits the session model (no tier), independent probe gating on the real Verify Command exit code ({exit0, filesPresent, testPresent}), R4 / declared / hybrid-fullsuite pauses, stale-gate backstop, no-phantom-RED rule. Driver 35/35.docs/DESIGN-dev-spec-plan-compile.md— design + full parity log (§8c).Changed
hooks/dev-plan-executable-guard.pyreconciled to import the shared parser (compiles ⇔ passes gate) — closes the LLM-discovery format-drift mask.skills/dev-implement/SKILL.mdslimmed to COMPILE → run/pause; G6 doc-drift fixed (guard docstring + plan-template no longer claim worktree/parallel/merge).Removed
workflows/dev-implement.js— retired after parity proven; no live caller.Why (wc-audit, baseline 7.5/10)
G1 honesty fix: the old gate keyed on the implementer's self-reported
verifyPassed+ a non-executing corroboration — no component ever ran the Verify Command into the gate. The independent probe actually runs it, making "real exit codes, not self-judgment" true for the first time.Parity — PROVEN on the real hylo-tauri repo
levelDidWork=false)[object Object]bug that tsc+unit pass but integration breaks — live evidence for keeping the adversarial layer outsiderun.jsAll ds safety invariants carried; ds suites unaffected (15/15, 28/28, grain-pause 12/12).
🤖 Generated with Claude Code
https://claude.ai/code/session_01UBQQ5zUqZYQjHuZaCrgbkJ