Skip to content

chore: refresh curated scaffold versions to the v0.95.0 release wave (#646) - #647

Merged
apotema merged 1 commit into
mainfrom
chore/646-curated-versions
Jul 19, 2026
Merged

chore: refresh curated scaffold versions to the v0.95.0 release wave (#646)#647
apotema merged 1 commit into
mainfrom
chore/646-curated-versions

Conversation

@apotema

@apotema apotema commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

Refresh the stale build.zig curated scaffold defaults — the orelse fallbacks a fresh labelle init stamps into project.labelle (and the upgrade all compatible set; there is no separate versions.zon file, the historical comment name maps to these build options).

Old → new

package old new
core 1.26.0 1.26.0 (unchanged)
engine 2.5.0 2.7.0
gfx 1.28.1 1.28.2
cli 1.57.0 1.59.0

engine 2.5.0 was stale — behind even the released 2.6.0. All four target tags are live (v0.95.0 release wave): labelle-engine v2.7.0, labelle-gfx v1.28.2, labelle-core v1.26.0, labelle-cli v1.59.0.

Coherence verification (init → generate → build green on the new set)

Built the assembler from this branch and ran the full released-path flow with no local overrides, so it fetched the real remote releases:

  1. init test_game --backend=raylib --ecs=zig_ecsproject.labelle stamped core=1.26.0 / engine=2.7.0 / gfx=1.28.2 / labelle=1.59.0
  2. installfetching engine 2.7.0 (remote), fetching gfx 1.28.2 (remote) — real GitHub releases
  3. generate → generated .labelle/raylib_desktop/ + .labelle/tests/
  4. zig buildexit 0, produced a real test_game binary

No MAJOR-mismatch compat gate tripped. Pin-level agreement confirmed from the tags: engine v2.7.0 floors core >= 1.24.0 and gfx >= 1.28.0; gfx v1.28.2 pins core v1.26.0 exactly. The trio is mutually compatible.

Assembler test suite: 2219/2225 pass; the only 2 failures are the pre-existing env-dependent flow_catalog sidecar lanes (flow_catalog sidecar emission failed: FileNotFound, a labelle-scripting cache dependency) — unrelated to version strings.

Smoke-gap finding (why the stale 2.5.0 was never caught)

The issue flags that the released-path init smoke should have caught engine 2.5.0 < released 2.6.0. Investigated labelle-cli/.github/workflows/ci.yml: every init that goes on to generate + zig build (the Docker lane and the "Init, generate, and build a project" lane) passes --core-version=local:… --engine-version=local:… --gfx-version=local:… --labelle-version=local:… — i.e. it overrides all four curated defaults with sibling checkouts. The only no-override labelle init (init test_project) is a clean --dry-run context test that never generates or builds.

So no released-path lane ever resolves the curated orelse defaults from real releases — the curated set is never exercised end-to-end in CI, which is exactly why the stale engine default drifted behind the release without failing anything. Worth a labelle-cli follow-up: add a no-override init → generate → zig build lane (optionally asserting the curated defaults equal the latest released tags) so curated-vs-latest drift fails CI. Not fixed here (separate repo, out of this PR's scope).

Closes #646

https://claude.ai/code/session_011szWvquoss1yNX7KWSKCaM


View with Codesmith Autofix with Codesmith
Need help on this PR? Tag /codesmith with what you need. Autofix is disabled.

Summary by CodeRabbit

  • Chores
    • Updated the default CLI version to 1.59.0.
    • Updated framework versions used in newly created projects for improved compatibility.
    • Refreshed related version documentation and comments.

…646)

Bump the build.zig curated scaffold defaults that a fresh `labelle init`
stamps into project.labelle. These are also the `upgrade all` compatible
set — there is no separate versions.zon file; the historical comment name
maps to these build options.

  package  old       new
  core     1.26.0    1.26.0 (unchanged)
  engine   2.5.0     2.7.0
  gfx      1.28.1    1.28.2
  cli      1.57.0    1.59.0

engine 2.5.0 was stale — behind even the released 2.6.0. All four target
tags are live (v0.95.0 release wave). Coherence verified end-to-end:
init (new defaults) → install (fetched engine 2.7.0 + gfx 1.28.2 from real
remote releases) → generate → `zig build` = exit 0, real game binary. No
MAJOR-mismatch compat gate tripped. engine v2.7.0 floors core >= 1.24.0 and
gfx >= 1.28.0; gfx v1.28.2 pins core v1.26.0 — the trio agrees.

Closes #646

Claude-Session: https://claude.ai/code/session_011szWvquoss1yNX7KWSKCaM
@coderabbitai

coderabbitai Bot commented Jul 19, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 19f27b76-762e-40d0-a8fc-35ce325931c2

📥 Commits

Reviewing files that changed from the base of the PR and between 89a78ce and c8c5fb1.

📒 Files selected for processing (1)
  • build.zig

📝 Walkthrough

Walkthrough

Updates build.zig defaults to CLI 1.59.0 and framework versions engine 2.7.0, gfx 1.28.2, and core 1.26.0.

Changes

Version defaults

Layer / File(s) Summary
Release-wave version defaults
build.zig
The default CLI version changes to 1.59.0, while generated project defaults use engine 2.7.0, gfx 1.28.2, and core 1.26.0.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Possibly related PRs

Poem

A bunny bumps the versions bright,
CLI hops to a newer flight.
Engine grows, gfx follows near,
Core stays steady, crystal clear.
Fresh scaffolds bloom—what cheer!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: refreshing curated scaffold versions for the v0.95.0 release wave.
Linked Issues check ✅ Passed The version bumps match #646's scaffold refresh: engine 2.7.0, gfx 1.28.2, and the CLI/core defaults stay current.
Out of Scope Changes check ✅ Passed The PR stays focused on scaffold version defaults in build.zig and only adjusts related comments.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/646-curated-versions

Comment @coderabbitai help to get the list of available commands.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the default dependency versions in build.zig to align with the v0.95.0 release wave. Specifically, it bumps cli_version to 1.59.0, engine_version to 2.7.0, and gfx_version to 1.28.2, while updating the associated compatibility comments. There are no review comments, so no feedback is provided.

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.

@apotema
apotema merged commit 38c9233 into main Jul 19, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refresh curated scaffold versions to the v0.95.0 release wave (engine 2.5.0→2.7.0, gfx→1.28.2)

1 participant