Hive
fix(infra): rebuild xcresult-processor image against current server
GitHub issue · Closed
What
A trivial fix(infra)-scoped change to infra/xcresult-processor-image/AGENTS.md whose purpose is to cut a fresh, versioned rebuild of the xcresult-processor image so it bakes current main. git-cliff bumps it to xcresult-processor-image@0.31.6, and the release-xcresult-processor-image job rebuilds + retags :0.31.6/:latest and rewrites the chart’s xcresultProcessor tag.
It also documents, in that AGENTS.md, the scope-gate drift gap + a manual-rebuild runbook, and flags that the env table there is stale post-#11460.
Why — root cause
The xcresult-processor image bakes a full server release. Its release gate is scope-gated via git-cliff and skips chore/ci/other-scoped commits. #11460 (chore(server)) removed the Namespace code and dropped accounts.namespace_tenant_id, but produced no version bump for this image — so the deployed processor (0.31.5, built 2026-06-27 before #11460) kept running old code that queried the dropped column against the migrated schema, crash-looping. That was part of the production incident on 06-27.
0.31.5 is the newest tag and predates #11460; there is no existing image with the fix, so one has to be built. This commit triggers that build off current main (verified: Tuist.Namespace is gone, 0 refs to namespace_tenant_id in server/lib).
Why this and not a gate change (supersedes #11554)
#11554 proposed making the gate path-based (rebuild whenever any baked file under server/lib/tuist/** changes). That’s more robust against drift, but it would rebuild the image on ~every server change — and the Packer build runs on a single bare-metal Mac mini and is expensive. We’d rather keep the gate conservative and trigger a rebuild manually when a schema/runtime-affecting server change lands under a skipped scope. This PR does exactly that and documents the procedure, so #11554 can be closed.
Impact
- A new
0.31.6image baking post-#11460 server code → the processor stops querying the dropped column. After it’s live, the manually re-addednamespace_tenant_idcolumn can be dropped for good. - No release-cadence change; the gate is unchanged.
Validation
Locally, after this commit, mise run release:check xcresult-processor-image → release? true, next: xcresult-processor-image@0.31.6 (via git-cliff’s bump, no special-casing).
🤖 Generated with Claude Code
Investigate, reproduce, or fix this item in an isolated repository. Each Flight preserves its outcome and agent session.
Start a Flight and preserve its objective, outcome, and session here.
No GitHub comments yet.