Skip to content

ultraswarm v2.4.1 — Runner Hardening (closes #6–#12)

Choose a tag to compare

@fubak fubak released this 12 Jun 20:05
· 64 commits to main since this release
ec22036

The standalone runner now works end-to-end through its CLI entry path, with every runner issue (#6#12) closed and the bin seam under test. Started from a grok-CLI WIP branch (that made the runner executable); this finishes the job.

Fixed

  • #6--decompose produces valid plans (model_tier/risk enums + CLI roster in the prompt, plus normalization so model_tier:"haiku"simple, risk:"low"routine). The documented enabled+overrides config shape resolves worker commands — no hand-crafted registry needed.
  • #7 — external workers get the clean task prompt, not the orchestration wrapper.
  • #8 — worker launch failures classified (auth/transport/not-installed/timeout) with actionable hints (worker grok failed (auth) — run `grok login` ); worktree-auth limitation documented.
  • #9 — no-op / scaffolding-only worker output can no longer pass review or merge.
  • #10 — dependents of a failed task are reported blocked (dependency X did not merge) and never run blind; cascades across waves.
  • #11 — reports show per-task attempts, a merged/failed/blocked summary with success rate, and token-capture coverage.
  • #12 — host scaffolding (.ultraswarm-plan.json, config, .ultraswarm/, .grok/) no longer leaks into feature commits (mergeWave drops the redundant git add -A); .gitignore updated.
  • Silent-task-loss guard — an unknown CLI returns a loud cli_failed instead of throwing; bin prints a clean error + exit 1 on an invalid plan instead of a stack trace.

Added

  • End-to-end-through-bin seam tests (the coverage the v2.4.0 break slipped through), +13 tests overall (96 total).

Verified live: a real task runs worktree → worker → gates → live claude QA review → merge, the report shows the new metrics, and host scaffolding stays out of the commit.