Repository navigation
fix(build): raise the Go floor to 1.27.3 for GO-2026-6809 (crypto/x509) - #95
antoinetoussaint-byte wants to merge 1 commit into
Conversation
Release archives were compiled by go1.27.1 (goreleaser-cross:v1.27.1-1), which carries GO-2026-6809 in crypto/x509, fixed in go1.27.3. The go directive is a floor: goreleaser-cross sets no GOTOOLCHAIN, so the image's go auto-switches up to the directive when the directive is higher. Raising go.mod to 1.27.3 is the fix that ships; moving the image pin to goreleaser-cross:v1.27.3 is the belt to that brace. No toolchain line, no GOTOOLCHAIN pin. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
|
A lazybox agent is working on this. • I’ll keep PR #95 unchanged and wait for Wiki10889’s exact artifact and declaration mapping. I won’t add a persistent runtime or treat Test execution as service lifecycle proof. • Edited .lazybox/artifacts/python95-source-audit.md (+3 -1) • Holding PR #95 clean at 537b654, with compiler/releaser fix and release hold intact. Audit updated: no new runtime functionality. Awaiting Wiki10889’s selected artifact, declaration, and actual use before deciding whether native-writer adoption is necessary. Worked for 25s • 1:28 AM ⚠ weekly limit: 25% left · /status GPT-6-Astra · high) started at 2026-10-28 05:17 UTC, last renewed the claim at 2026-10-28 17:14 UTC, and the claim lapses at 2026-10-28 17:59 UTC unless it is renewed again. A claim is an assertion with an expiry, not proof that a process is alive. claim detail |
Do not merge — opened for review; the owner releases.
Why
Release archives of this agent are compiled by
ghcr.io/goreleaser/goreleaser-cross:v1.27.1-1, i.e. go1.27.1, which carries GO-2026-6809 (crypto/x509), fixed in go1.27.3.Go literals found (verified from source at 2eb7c4a)
go 1.27.0go.mod:3goreleaser-cross:v1.27.1-1.github/workflows/releaser.ymlgo-version-file: go.mod.github/workflows/ci.yml,.github/workflows/releaser.yml(test job)No
golang:image, noGOTOOLCHAIN, notoolchainline, nogo-version:literal anywhere. Thetemplates/Dockerfiles (where present) build generated services, not Go.Mechanism
A
godirective is a floor. goreleaser-cross sets noGOTOOLCHAIN, so its go1.27.1 auto-switches up to the directive when the directive is higher: the shipped compiler ismax(directive, image go). Raising the directive to 1.27.3 is therefore the fix that ships on its own. The goreleaser-crossv1.27.3tag exists (checked via the GitHub tags API today), so the image pin moves too as the belt to that brace — with both in place the image already runs the floor and no download happens at release time.What changed
go.mod:go 1.27.0→go 1.27.3(go mod tidy: no other change, go.sum untouched).github/workflows/releaser.yml:goreleaser-cross:v1.27.1-1→goreleaser-cross:v1.27.3Local verification (host go1.27.3 darwin/arm64)
go build ./...exit 0,go vet ./...exit 0,go test ./...exit 0 (all packages ok)go build -o agent . && go version -m agentfirst line:agent: go1.27.3Classification
A fix at the place that owns the behaviour (the module floor and the release toolchain pin). Not a hack.
Deliberately not done
toolchainline in go.mod (it would pin instead of floor).GOTOOLCHAIN=go1.27.3in the workflow (a backwards selector that would have to be chased on every patch).go-version-file: go.modsteps — they already follow the floor.Not verified
ci.ymlonly; the release job is tag-triggered.🤖 Generated with Claude Code