Tags: tonioloewald/haltija
Tags
1.12.0-rc.1 — trustworthy by default + layout-faithful schematics
test: distribution-parity lane — the two hj artifacts must be one CLI haltija ships the same CLI twice (bin/hj.mjs in the npm package; dist/hj.js as a lone bundled file in ~/.local/bin) reporting the same version, so nothing signalled when they diverged. In 1.11.0 they did: the bundle read hints from a sibling hints.json that isn't installed beside it, so the npm CLI appended a hint to stdout and the bundle didn't — and an adopter's `JSON.parse($`hj windows`)` worked on a maintainer's machine while being inert on every npm install (#14). They verified behaviourally, against a real repro, and still shipped a no-op, because the binary they verified against is not the one users get. The lane runs BOTH artifacts and diffs what a consumer can observe: version, command list, stdout bytes, exit codes, and the teachable hint on an error. Same lesson as the adopter-context lane — test the artifact people receive, not the one that's convenient — applied to packaging. MUTATION-TESTED, because a regression test that has never failed is unproven: reintroducing the bundle-without-hints bug fails 1 assertion, and putting advisory text back on stdout fails 3 (and 2 more in the adopter-context lane on the npm side). Both mutations reverted; build verified clean. 616 unit + 93 e2e pass. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
PreviousNext