fix: stop tag-stamping scaffold versions in release builds (labelle-cli#322) - #629
Conversation
…li#322) The release workflow passed -Dcli_version/-Dcore_version/-Dengine_version/ -Dgfx_version all set to the ASSEMBLER TAG, so every released binary's `init` scaffolded nonsense pins (core_version = "0.91.0", etc. — the "0.40.0-era everything" in labelle-cli#322 was this same bug at an older tag). Meanwhile -Dassembler_version was NOT stamped, so releases scaffolded the stale build.zig.zon fallback (0.77.0) there. - release.yml: stamp ONLY -Dassembler_version="$VERSION"; the cli/core/ engine/gfx defaults come from build.zig's curated set. - build.zig: cli_version default "dev" → "1.57.0" (a scaffold pin must be a real released CLI version; curated with the trio); trio bumped to core 1.26.0 / engine 2.5.0 / gfx 1.28.1 — set verified end-to-end (init → generate → full compile with released tarballs). Local probe of the fixed binary scaffolds: .y_axis = .down, core 1.26.0, engine 2.5.0, gfx 1.28.1, labelle 1.57.0 Paired CLI fix (DEFAULT_ASSEMBLER_VERSION bump + released-path smoke test) follows in labelle-cli#322 once this ships in a release. Claude-Session: https://claude.ai/code/session_011szWvquoss1yNX7KWSKCaM
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThe build defaults now use a validated CLI and component version set. Release builds stamp only the assembler version, leaving scaffolded component versions at their configured defaults. ChangesVersion stamping alignment
Estimated code review effort: 2 (Simple) | ~10 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Code Review
This pull request updates the default versions of the CLI and framework libraries (core, engine, and gfx) in build.zig to a mutually compatible set (cli 1.57.0, core 1.26.0, engine 2.5.0, and gfx 1.28.1). It also updates the accompanying comments to document this verified combination. There are no review comments, and I have no additional feedback to provide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Assembler half of labelle-toolkit/labelle-cli#322.
Root cause (deeper than the ticket)
The release workflow built with
-Dcli_version="$VERSION" -Dcore_version="$VERSION" -Dengine_version="$VERSION" -Dgfx_version="$VERSION"— the assembler tag stamped into every scaffold field. A released binary'sinittherefore scaffoldscore_version = "0.91.0"etc. (the ticket's "0.40.0-era everything" was this bug at an older tag). And-Dassembler_versionwas never stamped, so releases scaffolded the stalebuild.zig.zonfallback (0.77.0).Empirical probe of the released v0.91.0 binary,
initwith no flags:Five broken pins out of five.
Fix
-Dassembler_version="$VERSION"(the one field that should carry the tag). The cli/core/engine/gfx scaffold defaults come from build.zig's curated set.cli_versiondefault"dev"→"1.57.0"(a scaffold pin must be a real released CLI version; now curated with the trio); trio bumped1.24.0/1.78.0/1.23.0→ core 1.26.0 / engine 2.5.0 / gfx 1.28.1.Verified
init → generate → zig build=build ok(raylib desktop scaffold)..y_axis = .down+ the curated pins.zig build test: same 2 pre-existing environmental failures as main, nothing new.Follow-up
The CLI half (bump
DEFAULT_ASSEMBLER_VERSIONpast 0.40.0 to the release carrying this fix + a released-path init smoke test so neither can rot invisibly again) lands against labelle-cli#322 once this ships in a release.https://claude.ai/code/session_011szWvquoss1yNX7KWSKCaM
Need help on this PR? Tag
/codesmithwith what you need. Autofix is disabled.Summary by CodeRabbit
New Features
Bug Fixes