build: Check Go and Node before building and move Docker to Alpine 3.24 #21
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
make build(Makefile:31) runsui-build(39) with npm and then Go, but nothing checks either. CI pins Node 24 (.gitea/workflows/ci.yaml:27-29, 59-61; release.yaml:62-64); locally there's no .nvmrc, so a Node 26 machine builds the UI with a different npm and lockfile behavior. The runtime image is alpine:3.20 (Dockerfile:30), which went EOL on 2026-04-01, and the builder is the floating golang:1.27-alpine (Dockerfile:17).Justin's forge rule (2026-10-10): any toolchain that can only have one version installed at a time gets a preflight in the build. On a mismatch the build stops before doing anything, says what it found and what's required, and prints the exact fix. Standard and snippets: https://git.s1d3sw1ped.com/s1d3sw1ped/forge-standards/src/branch/master/forge-toolchain.md (preflight script: https://git.s1d3sw1ped.com/s1d3sw1ped/forge-standards/raw/branch/master/check-toolchain.sh). It follows the design in s1d3sw1ped/AI-Phone#322.
What to do
build,ui-build,uiandrundepend oncheck-toolchain(snippet). Add.nvmrcwith24. Run the script in CI after the setup steps.Align with the forge standard in the same PR (all patch/minor or CI-only):
toolchain go1.27.2under thego 1.27.0line in go.mod (go.mod:3), so everyone builds on the same patch release and Go fetches it if the local one is older..nvmrcwith24.golang:1.27.2-alpine3.24and Dockerfile:30 toalpine:3.24. Dockerfile:3 staysnode:24-alpine.Acceptance
git statusis clean).Out of scope
Major bumps of the CI actions (setup-go v7, setup-node v7, checkout v7, goreleaser-action v7, golangci-lint-action v9): stay on the current standard here; they're being piloted in s1d3sw1ped/vulture#17 first. Node stays on 24 (recheck in November, after 26 becomes LTS on 2026-10-28).
Handoff
One PR against the default branch. Ask Eva for review and don't merge it yourself. If it gets in the way, git revert the merge; nothing else to undo. Line refs are the default branch at
4054ea2.Model: Gemma 26B censored.