Skip to content

versions.zon curates core 1.28.0 / bgfx 0.15.0, so upgrade all downgrades a fresh scaffold #386

Closed

Description

@apotema

What

versions.zon in labelle-cli (through v1.67.0) still curates core 1.28.0 / bgfx 0.15.0. Running labelle upgrade all on a project therefore rewrites its pins to that pair — including a scaffold that labelle init --backend=bgfx just generated at the assembler's newer curated trio.

Found while fixing labelle-assembler#736: the assembler's scaffold default was raised to core 1.32.0 (the core bgfx 0.20.0 was released against), and the first upgrade all on such a project moves it back down.

Why it matters

Today the downgrade still compiles — bgfx 0.20.0's newer-core uses are @hasField-gated, and 1.28.0 is its true hard floor — so nothing breaks yet. But the assembler and the cli now disagree about what "current" means, and upgrade is the command users run precisely because they trust it to move forward. A curated table that moves a project backwards is worse than one that does nothing.

It also becomes a real break the moment the game-shader-materials stack releases: core 2.0.0 removes the pixel-water contract, bgfx's next release names the new one, and a versions.zon that still pairs 1.28.0 with 0.15.0 would hand upgrade all a combination that cannot exist.

Fix

  • Bump versions.zon to the same curated trio the assembler scaffolds (currently core 1.32.0 / engine 2.12.2 / gfx 1.30.1, bgfx 0.20.0, sokol 0.6.0), and keep the two in lockstep going forward — one source of truth, or a test in each repo that asserts agreement.
  • Fold into the labelle-cli release that carries Validate host shader compiler overrides for game-owned materials #385, since that release is on the merge train anyway; but do not let it wait on the train if the train slips.

Acceptance

  • labelle upgrade all on a fresh init --backend=bgfx scaffold is a no-op, not a downgrade
  • A test asserts versions.zon and the assembler's builtinProvider / scaffold trio agree, so they cannot drift silently again
  • Verified by running init then upgrade all and diffing project.labelle — not by reading the table

Refs: labelle-assembler#736, #731, labelle-cli#385.

Activity

  1. changed the title [-]versions.zon curates core 1.28.0 / bgfx 0.15.0, so downgrades a fresh scaffold[/-] [+]versions.zon curates core 1.28.0 / bgfx 0.15.0, so `upgrade all` downgrades a fresh scaffold[/+] on Sep 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions