v3.2.1 — forbiddenPaths + alias-pin fixes, e2e harness, coverage
Patch release: two bug fixes surfaced by a new end-to-end test harness, plus a comprehensive test-coverage lift.
Fixed
forbiddenPathsbypass via new directories (security). The implement step listed worker output withgit status --porcelain, which collapses a brand-new untracked directory todir/. A worker writing a forbidden file into a new subdirectory (e.g.vault/leak.secret) was reported asvault/, slipped past theforbiddenPathsglob, and integrated. Now uses-uallso files are listed individually and enforced correctly. (Regression test proven to fail without the fix.)- Aliases could not be pinned in a plan.
validatePlanvalidatedtask.cliagainst the built-in registry only, rejecting user-defined alias names even though routing supports explicit alias selection. It now validates against the effective registry (built-ins + configured aliases).
Added
- Deterministic, network-free end-to-end test harness driving the real runner in-process (
ULTRASWARM_BRAIN=mockseam + fake worker fixtures): complex multi-wave run → status → logs → export → merge, plus approval-gate and failure/retry paths. - Broad unit-coverage lift: suite 178 → 309 tests; overall line 90.6% → 96.8%, branch 77.3% → 87.3%.
Full diff: v3.2.0...v3.2.1