Summary
Follow-up closing the one #666 review finding deliberately left out of that PR: post-GA staleness of the version embed. Two related gaps:
- Stale embed.
stash has no publishable dependency edge to the runtime packages, so a runtime-only release would not republish stash. The live CLI tarball keeps embedding (and init keeps pinning/recommending) outdated versions.
- Directionless skew.
versionSkew is a bare !== with no direction, so the skew warning tells users on correctly-newer versions to downgrade.
Expected
- Any release should republish the whole release train so the embed can never go stale against the packages it pins.
- Skew detection should be direction-aware: behind → align/reinstall guidance; ahead → recommend updating the
stash CLI, never a downgrade. Malformed/unreadable versions should be treated as not-comparable → safe reinstall guidance.
Resolution
Fixed in #669:
- Changesets
fixed group couples the release train (stash, @cipherstash/stack, @cipherstash/stack-drizzle, @cipherstash/stack-supabase, @cipherstash/prisma-next, @cipherstash/wizard) in lockstep, with a test asserting fixed group == RELEASE_TRAIN_MANIFESTS.
- Direction-aware skew via a prerelease-aware comparator with a strict shape gate (closes the whole malformed-version family), plus direction-aware
skills/stash-cli skew guidance.
Summary
Follow-up closing the one #666 review finding deliberately left out of that PR: post-GA staleness of the version embed. Two related gaps:
stashhas no publishable dependency edge to the runtime packages, so a runtime-only release would not republishstash. The live CLI tarball keeps embedding (andinitkeeps pinning/recommending) outdated versions.versionSkewis a bare!==with no direction, so the skew warning tells users on correctly-newer versions to downgrade.Expected
stashCLI, never a downgrade. Malformed/unreadable versions should be treated as not-comparable → safe reinstall guidance.Resolution
Fixed in #669:
fixedgroup couples the release train (stash,@cipherstash/stack,@cipherstash/stack-drizzle,@cipherstash/stack-supabase,@cipherstash/prisma-next,@cipherstash/wizard) in lockstep, with a test assertingfixed group == RELEASE_TRAIN_MANIFESTS.skills/stash-cliskew guidance.