cmd/kai/main.go:92 declares:
This is the fallback for builds where the release ldflags stamp isn't applied. It is a hardcoded real version number, so an unstamped binary — built from any commit, however new or old — confidently reports 0.34.5 and prints Update available: 0.34.5 → 0.35.39.
That makes the version in any log untrustworthy: 0.34.5 means either "genuinely v0.34.5" or "unstamped build of unknown provenance", with no way to tell them apart.
How this bit
Diagnosing marketing-site run #122 (see #58), the job log showed 0.34.5. The obvious read — CI is running an old binary missing the 2026-08-26 conclusion-deadline fix (f20db8a, released in v0.35.34) — is unfalsifiable, because an unstamped build of current main prints exactly the same string. The diagnosis is stuck on it.
Note that v0.34.5 is itself the release tagged "ci: stamp CLI version from the git tag (fix stale kai version)" — the stamping was fixed then, but the fallback constant was left frozen at that number and has drifted ~35 releases out of date since.
Fix
cmd/kai/main.go:92declares:This is the fallback for builds where the release ldflags stamp isn't applied. It is a hardcoded real version number, so an unstamped binary — built from any commit, however new or old — confidently reports
0.34.5and printsUpdate available: 0.34.5 → 0.35.39.That makes the version in any log untrustworthy:
0.34.5means either "genuinely v0.34.5" or "unstamped build of unknown provenance", with no way to tell them apart.How this bit
Diagnosing marketing-site run #122 (see #58), the job log showed
0.34.5. The obvious read — CI is running an old binary missing the 2026-08-26 conclusion-deadline fix (f20db8a, released in v0.35.34) — is unfalsifiable, because an unstamped build of currentmainprints exactly the same string. The diagnosis is stuck on it.Note that v0.34.5 is itself the release tagged "ci: stamp CLI version from the git tag (fix stale
kai version)" — the stamping was fixed then, but the fallback constant was left frozen at that number and has drifted ~35 releases out of date since.Fix
dev, ordev (unstamped), ideally with the build's commit SHA viaruntime/debug.ReadBuildInfo0.34.5 → 0.35.39is meaningless noise, printed three times in one job log)