-
iw-cli v0.6.1 Stable
released this
2026-06-11 07:53:09 +00:00 | 337 commits to main since this releaseiw-cli v0.6.1
Internal release — test suite rebalance. No user-facing CLI changes.
What changed
The test pyramid was reshaped from a BATS-dominant suite (~27.8 min) to three tiers:
- Unit + harness — 22/22 commands now have in-VM harness tests against
FakeCommandEnv(capability-trait composition of fake console / fs / git / tracker / process / server / tmux / prompt / config / clock / etc.). ~185 new in-VM test scenarios. Detailed exit-code, error-routing, and tracker-dispatch coverage moved off scala-cli + tmpdir round-trips. - Tool contract — new
test/contract/tier pins external-tool assumptions (git, gh, glab, scala-cli, mill, tmux). Gated to nightly cron +contract-labeled PRs. - E2E smoke — BATS reduced to 1–2 round-trip tests per command (~1010s of BATS → ~36s + 36 new munit tests on previously-untested rendering / schema validity).
Coverage is now visible: scoverage 2.1.0 instrumented on
core+dashboard, with per-module XML + aggregated HTML uploaded by CI (14-day retention).Embedder-visible notes
- Command-script shape:
commands/<name>.scalais now a 7-line shim that delegates toiw.core.commands.<Name>.run(args, env). Logic lives incore/commands/against theCommandEnvcapability traits. Existing./iw <command>invocations and behavior are unchanged. - New
./iw ./test contractrunner subcommand.
Resolved
- #357 — superseded; bloop cold-start cost eliminated by Phase 3 dead-setup removal (no longer the bottleneck).
- #304 — superseded; PTY-bound tmux assertions moved to the gated contract suite.
Detail
Plan and per-phase log:
docs/plans/2026-06-03-test-rebalance.md. Implementation PR: #377.Downloads
-
Source code (ZIP)
2 downloads
-
Source code (TAR.GZ)
2 downloads
- Unit + harness — 22/22 commands now have in-VM harness tests against