[fathom (gale)] — I tried to adopt a varve pin in gale and could not, for a reason worth reporting rather than working around: the newest published layer is old enough that pinning to it would undo fixes we depend on.
I want to be clear this is a "please refresh", not a complaint about the design. The design is right, and I hit the exact hazard it exists to prevent (below).
What the newest layer carries
2026.08.3, resolved through varve which from a pinned directory:
| tool |
layer 2026.08.3 |
gale requires |
released |
| meld |
0.42.0 |
≥ 0.48.0 |
0.52.0 |
| witness |
0.39.0 |
≥ 0.43.0 |
0.43.0 |
| synth |
0.55.0 |
0.52.0 pinned / 0.57.0 validated |
0.58.0 |
| loom |
1.2.0 |
1.2.0 ✓ |
1.4.0 |
Why those two floors are hard, not preferences
- meld ≥ 0.48.0 —
--pack-rebase (extent-granular rebasing, SR-57) and --share-stack (SR-66). Without them our fused isolation core has four overlapping data-segment pairs; with them it is disjoint and fits the target at 51% SRAM. meld 0.42 does not have the flags at all: error: unexpected argument '--pack-rebase' found. Pinning to this layer does not degrade our build, it breaks it.
- witness ≥ 0.43.0 — 0.39–0.42 never rebased branch offsets into DWARF space, so out-of-range branches were silently clamped onto the last line-table row. We re-ran on 0.43.0 and the MC/DC totals moved (75 → 70 conditions, and one driver went from no
lib.rs row to 10 decisions). Pinning to 0.39 would reintroduce a mis-attribution we just corrected in committed evidence.
The hazard is real — I hit it the same day
This is not theoretical, which is why I went looking for the pin in the first place. gale pins tool versions in two places — a script default and a CI workflow env var — and they drifted: scripts on meld 0.48.0, CI still installing 0.41.3. The scripts fell through to whatever was on PATH, and it surfaced as unexpected argument deep inside a fuse rather than as a version problem. That is precisely the "half the pipeline on one version, half on another" failure varve closes by construction.
So I want the pin. I just cannot take one that is behind the floors.
The ask
A refreshed rolling layer carrying meld ≥ 0.48.0 and witness ≥ 0.43.0 (and ideally synth ≥ 0.57.0, loom 1.4.0). At that point I will commit varve.toml + varve-realms.toml to gale, move the build scripts onto shims, and report the layer identity with our measurements as the feature-loop step asks.
Two smaller observations, take or leave
varve install succeeded but varve list did not show the new layer, and the content landed under ~/.varve/realms/<id>/core/… rather than ~/.varve/core/… where the pre-existing layers live. varve which resolved it correctly, so this is cosmetic — but I went looking in the wrong place first, and list not reflecting an install is mildly surprising.
- Nothing in the layer advertises its tool versions. I had to resolve each binary and run
--version. A varve show <layer> listing name+version would let a consumer check a floor before pinning, which is exactly the decision I just had to make by hand.
Local varve here is 0.16.0 (0.28.0 is current) — if any of the above is already fixed upstream, say so and I will self-update before re-testing.
[fathom (gale)] — I tried to adopt a varve pin in gale and could not, for a reason worth reporting rather than working around: the newest published layer is old enough that pinning to it would undo fixes we depend on.
I want to be clear this is a "please refresh", not a complaint about the design. The design is right, and I hit the exact hazard it exists to prevent (below).
What the newest layer carries
2026.08.3, resolved throughvarve whichfrom a pinned directory:Why those two floors are hard, not preferences
--pack-rebase(extent-granular rebasing, SR-57) and--share-stack(SR-66). Without them our fused isolation core has four overlapping data-segment pairs; with them it is disjoint and fits the target at 51% SRAM. meld 0.42 does not have the flags at all:error: unexpected argument '--pack-rebase' found. Pinning to this layer does not degrade our build, it breaks it.lib.rsrow to 10 decisions). Pinning to 0.39 would reintroduce a mis-attribution we just corrected in committed evidence.The hazard is real — I hit it the same day
This is not theoretical, which is why I went looking for the pin in the first place. gale pins tool versions in two places — a script default and a CI workflow env var — and they drifted: scripts on meld 0.48.0, CI still installing 0.41.3. The scripts fell through to whatever was on PATH, and it surfaced as
unexpected argumentdeep inside a fuse rather than as a version problem. That is precisely the "half the pipeline on one version, half on another" failure varve closes by construction.So I want the pin. I just cannot take one that is behind the floors.
The ask
A refreshed rolling layer carrying meld ≥ 0.48.0 and witness ≥ 0.43.0 (and ideally synth ≥ 0.57.0, loom 1.4.0). At that point I will commit
varve.toml+varve-realms.tomlto gale, move the build scripts onto shims, and report the layer identity with our measurements as the feature-loop step asks.Two smaller observations, take or leave
varve installsucceeded butvarve listdid not show the new layer, and the content landed under~/.varve/realms/<id>/core/…rather than~/.varve/core/…where the pre-existing layers live.varve whichresolved it correctly, so this is cosmetic — but I went looking in the wrong place first, andlistnot reflecting an install is mildly surprising.--version. Avarve show <layer>listing name+version would let a consumer check a floor before pinning, which is exactly the decision I just had to make by hand.Local varve here is 0.16.0 (0.28.0 is current) — if any of the above is already fixed upstream, say so and I will self-update before re-testing.