What
1.6.0 is a minor bump, not a patch: lumen doctor, lumen show and the in-app degraded banner are new user-facing features, so shipping this under a patch number would understate it. This issue is the release checklist. It also carries a problem: two of the statements that will appear in the CHANGELOG and README are absolute claims with no check behind them, so the released wording may promise more than the code enforces.
Evidence
Shipping in 1.6.0, from the source tree:
- Release-build logging. The logger was previously registered only under
cfg!(debug_assertions), so every log call in a shipped binary went to a no-op sink.
- The persisted hidden-icon preference is cleared and announced.
- Post-build tray visibility verification with a bounded re-check.
- No
? or expect anywhere in startup.
- The leak-versus-scope metric.
- A universal guard preventing any tool from returning more than the file it was asked about.
No counts, ratios or percentages were measured for this release, so none are stated here.
The last two items are universally quantified ("anywhere", "any tool") and nothing currently fails when they are violated. That is the weak point of this release, not a detail.
Release tooling present in the repo: scripts/release.sh, scripts/verify-install.sh, .github/workflows/verify-install.yml.
Acceptance criteria
How to test
The local gate must be green before pushing. A red main ships broken versions.
cargo fmt --all --check
cargo clippy --workspace --all-targets --exclude Lumen -- -D warnings
cargo test -p lumen-core -p lumen-cli -p lumen-daemon -p lumen-mcp -p lumen-stats --all-targets
node --version # must be >= 22.22.3 (Angular 22's floor)
cd lumenator && pnpm install --frozen-lockfile && pnpm build && pnpm test && cd ..
bash lumenator/build-sidecar.sh # the Tauri crate's build script needs the sidecars
cargo clippy -p Lumen --all-targets -- -D warnings
./scripts/release.sh minor # requires main and a clean tree; tags v1.6.0
./scripts/verify-install.sh --expect 1.6.0
The Tauri crate (Lumen) is excluded from the workspace clippy and test runs on purpose — its build script resolves the four externalBin sidecars, so it is checked separately after build-sidecar.sh.
Expect: cargo fmt prints nothing; both clippy runs finish with no warnings; cargo test reports zero failures; pnpm build and pnpm test exit 0; release.sh minor bumps 1.5.1 to 1.6.0 and produces the v1.6.0 tag; verify-install.sh reports the installed version as 1.6.0 and exits 0, and exits non-zero on any mismatch. After publishing, run the Verify install workflow via workflow_dispatch with tag: v1.6.0 so it checks the published artifacts, and confirm it passes.
What
1.6.0 is a minor bump, not a patch:
lumen doctor,lumen showand the in-app degraded banner are new user-facing features, so shipping this under a patch number would understate it. This issue is the release checklist. It also carries a problem: two of the statements that will appear in the CHANGELOG and README are absolute claims with no check behind them, so the released wording may promise more than the code enforces.Evidence
Shipping in 1.6.0, from the source tree:
cfg!(debug_assertions), so every log call in a shipped binary went to a no-op sink.?orexpectanywhere in startup.No counts, ratios or percentages were measured for this release, so none are stated here.
The last two items are universally quantified ("anywhere", "any tool") and nothing currently fails when they are violated. That is the weak point of this release, not a detail.
Release tooling present in the repo:
scripts/release.sh,scripts/verify-install.sh,.github/workflows/verify-install.yml.Acceptance criteria
?orexpectis reintroduced in startup — or the CHANGELOG/README wording is narrowed to what is actually checked../scripts/verify-install.sh --expect 1.6.0exits 0.v1.6.0tag.How to test
The local gate must be green before pushing. A red main ships broken versions.
The Tauri crate (
Lumen) is excluded from the workspace clippy and test runs on purpose — its build script resolves the fourexternalBinsidecars, so it is checked separately afterbuild-sidecar.sh.Expect:
cargo fmtprints nothing; both clippy runs finish with no warnings;cargo testreports zero failures;pnpm buildandpnpm testexit 0;release.sh minorbumps 1.5.1 to 1.6.0 and produces thev1.6.0tag;verify-install.shreports the installed version as 1.6.0 and exits 0, and exits non-zero on any mismatch. After publishing, run the Verify install workflow viaworkflow_dispatchwithtag: v1.6.0so it checks the published artifacts, and confirm it passes.