fix: the gate installs a fresh machine as the stable room it is

A fresh device.conf says CHANNEL=stable, and the gate asked the fresh
install's updater about canary's manifest, which that machine never reads.
Found running the gate on 0.2.6.6: the updater check failed before any
upgrade was tried. The package was not at fault.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
ekklesia
2026-09-29 18:16:10 -05:00
co-authored by Claude Opus 5.5
parent 1a338b2d38
commit 897a5f28ed
2 changed files with 9 additions and 3 deletions
+5 -2
View File
@@ -272,8 +272,11 @@ check("the repository copy is proven to be the gated file",
gate = (root / "tools/release-gate.sh").read_text() gate = (root / "tools/release-gate.sh").read_text()
gate_code = "\n".join(line for line in gate.splitlines() gate_code = "\n".join(line for line in gate.splitlines()
if not line.lstrip().startswith("#")) if not line.lstrip().startswith("#"))
check("the gate runs a fresh install", check("the gate runs a fresh install, as the stable room a new machine is",
'"$ROOT/tools/validate-trixie-release.sh" "$candidate"\n' in gate_code) 'env VALIDATION_CHANNEL=stable \\\n "$ROOT/tools/validate-trixie-release.sh" "$candidate"\n'
in gate_code)
check("which is what a fresh device.conf says",
"CHANNEL=stable" in (root / "lib/classroom_config.py").read_text())
check("and the upgrade from what canary and stable serve, as rooms of each", check("and the upgrade from what canary and stable serve, as rooms of each",
"for channel in canary stable" in gate_code "for channel in canary stable" in gate_code
and 'VALIDATION_CHANNEL="$channel"' in gate_code) and 'VALIDATION_CHANNEL="$channel"' in gate_code)
+4 -1
View File
@@ -118,7 +118,10 @@ run() {
record "PASS $label ($(( (SECONDS - started) / 60 )) min)" record "PASS $label ($(( (SECONDS - started) / 60 )) min)"
} }
run "fresh install of $version" \ # A new machine is a stable room: that is what a fresh device.conf says,
# so that is the manifest its updater is asked about.
run "fresh install of $version (a new machine, on stable)" \
env VALIDATION_CHANNEL=stable \
"$ROOT/tools/validate-trixie-release.sh" "$candidate" "$ROOT/tools/validate-trixie-release.sh" "$candidate"
for channel in canary stable; do for channel in canary stable; do