You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[finding] create-objectstack's runtime-image test hard-codes minor 4, so it goes red on any minor bump — it blocks the 17.5.0 Version Packages PR (Test Core 1/6) #20560
The scaffolded package.json asks for ^<own version>. While the train sits at 17.4.x, 17.4.2 satisfies ^17.4.0 and the test passes. Once pnpm run version moves the train to 17.5.0, the same test asserts:
scaffolded Dockerfile pins :17.4.2 but the scaffolded package.json asks for "^17.5.0"
On main the literal is still there (line 98), and packages/create-objectstack/package.json is at 17.4.0. So main is green only because the bump has not happened yet.
Repro on main: set packages/create-objectstack/package.jsonversion to 17.5.0 (what pnpm run version does), then run pnpm --filter create-objectstack test. The test goes red.
Fix
Derive resolved from the package's own version so that it always satisfies the caret floor (same major, a minor above the floor). Then the test no longer depends on where the train is. The fix has to land on main. changeset-release/main is regenerated from main by the version-pr lane (git reset --hard), so a commit made there would be overwritten.
The class-level gap (a version-sensitive regression is only exercised after pnpm run version) is filed separately.
What happens
packages/create-objectstack/src/runtime-image.test.ts:98builds the CLI version the scaffold is expected to resolve as a literal minor:The scaffolded
package.jsonasks for^<own version>. While the train sits at 17.4.x,17.4.2satisfies^17.4.0and the test passes. Oncepnpm run versionmoves the train to 17.5.0, the same test asserts:Evidence
c3e7fddc, required checkTest Core (1/6).mainthe literal is still there (line 98), andpackages/create-objectstack/package.jsonis at17.4.0. Somainis green only because the bump has not happened yet.main: setpackages/create-objectstack/package.jsonversionto17.5.0(whatpnpm run versiondoes), then runpnpm --filter create-objectstack test. The test goes red.Fix
Derive
resolvedfrom the package's own version so that it always satisfies the caret floor (same major, a minor above the floor). Then the test no longer depends on where the train is. The fix has to land onmain.changeset-release/mainis regenerated frommainby theversion-prlane (git reset --hard), so a commit made there would be overwritten.The class-level gap (a version-sensitive regression is only exercised after
pnpm run version) is filed separately.Generated by Claude Code