Skip to content

v0.7.1 — Release toolchain + hygiene cleanup

Latest

Choose a tag to compare

@screenleon screenleon released this 30 Jun 08:27
99910c8

Highlights

Two parallel tracks: (1) complete the /pre-release Layer 2 semantic diff coverage, upgrading the audit report from tracking-hygiene checks to requirement-vs-implementation traceability; (2) clear accumulated P3 guard / test / ops debt from v0.4.0–v0.7.0.

Added

  • /pre-release Layer 2 — semantic diff coverage (CC-430, PR#339). Per-ticket Requirement section (read from BACKLOG.md) is compared against the PR diff via gh api. Outputs a coverage table (Covered / Partial / Gap / N/A) with Confidence and Flag columns. No sub-job dispatch; no GO/NO-GO verdict — judgement stays with the user.

  • pm-write-guard hook: three new allow rules with cross-rule symlink escape prevention (CC-258, PR#342). Added /tmp/<slug>/*.md, docs/spikes/{CC-NNN*,*-scope,*-rfc}.md, and symlink-normalized memory double-canonicalization allow rules. Added ~15 regression tests for cross-rule symlink escape edge cases. Total test count reaches 193.

  • doctor.shinstall-hooks.sh hook-profile parity test (CC-224, PR#341). Added scripts/test-hook-profile.sh asserting that the minimal hook sets listed in both files match exactly, preventing silent drift when a new hook is added to one file but not the other.

  • Shared adapter lib: scripts/lib/model-aliases.sh (CC-420, PR#345). Extracted the model-alias TSV parser shared by the claude, codex, and opencode adapters (~30 duplicate lines eliminated).

  • Shared adapter lib: scripts/lib/timeout-resolve.sh (CC-421, PR#346). Extracted the timeout-precedence resolution logic (brief > adapter default > system default) shared by three adapters and dispatch-post-verify.sh (~15 lines × 4 eliminated).

  • Shared adapter lib: scripts/lib/dispatch-common.sh (CC-422, PR#347). Extracted five shared adapter init helpers (require_brief_file, require_working_dir, load_model_aliases, resolve_timeout, init_run_dir) into a single sourced lib. All three adapters now share one init sequence.

Fixed

  • uninstall.sh blast-radius guard: exact managed-root path rejection (CC-210, PR#340). Added a precise path check to prevent the managed root itself from being deleted during uninstall. Added regression test.

  • test-portable.sh lock contention: FIFO-gated IPC replaces fixed sleep 1.2 (CC-240, PR#344). case_mkdir_lock_contention now uses a FIFO release signal for cross-process synchronization, eliminating CI flakiness on slow runners.

  • Archiver safe-drop: terminal row preserved when body is absent everywhere (CC-285, PR#343). When a terminal row's body section is absent from both BACKLOG.md and BACKLOG-ARCHIVE.md, the archiver now preserves the row and emits a warning instead of silently dropping it. Added regression fixture.


Full changelog: CHANGELOG.md