Routing pod: HYPERGUILD_CLAUDE_MODEL is a dead env key — thinking tier runs on default (offline iguana/gemma4-26b) #72
Closed
opened 2026-06-29 19:52:57 +00:00 by mathias
·
1 comment
No Branch/Tag Specified
main
fix/pipeline-writes-158
fix/edit-path-io-192
fix/create-regular-188
fix/guard-special-179
fix/linkcheck-keeps-write-178
fix/write-dir-redirect-173
fix/tunnel-detect-174
fix/pipeline-root-157
w3/154-mcp-auth-wiring
fix/tunnel-traversal
test/in-brain-targets-171
fix/brain-scan-root-157
fix/graph-wiki-root-157
fix/vectorstore-root-157
fix/notes-root-157
fix/search-root-157
fix/brainwide-root-157
fix/raw-symlinks-153
feat/symlink-tripwire-157
fix/rest-auth-149
fix/123-brain-edit-envelope-check
feat/106-page-aware-extraction
fix/105-source-drift-on-main
fix/104-surface-merge-conflicts-on-main
agent/b1-compile-on-ingest
agent/104-surface-merge-conflicts
agent/105-source-drift
agent/107-loud-unconfigured-alerting
feat/brain-read-edit
fix/capture-i1-refusal-names-target
renovate/configure
feat/consolidate-single-harness
icebox/cmd-routing
feat/brain-pending-promote
fix/close-session-classification-refresh
fix/capture-summarywriter
v0.24.0
v0.23.1
v0.23.0
v0.22.0
v0.21.1
v0.21.0
v0.20.1
v0.20.0
v0.19.1
v0.19.0
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.0
v0.16.1
v0.16.0
v0.15.0
v0.14.0
v0.13.2
v0.13.1
v0.13.0
v0.12.1
v0.12.0
v0.11.2
icebox/cmd-routing-2026-07-01
v0.11.1
v0.11.0
v0.10.0
v0.9.0
v0.8.0
v0.7.0
v0.6.0
v0.5.0
v0.4.1
v0.4.0
v0.3.0
v0.2.0
v0.1.0
Labels
Clear labels
agent/ready
blocked/client
blocked/supplier
blocked/upstream
risk/high
risk/low
risk/medium
size/l
size/m
size/s
size/xs
status:dispatch
status:dispatched
status:review
status:reviewing
type/chore
type/decision
type/docs
type/feat
type/fix
type/ops
type/research
type/test
Meets the agent-ready contract; authorizes unattended execution
Waiting on the client
Waiting on a supplier
Waiting on an upstream project or vendor
Irreversible, security-relevant, or control plane
Reversible, local, test-covered
Touches shared state, deploys or data
Too big - split it
Under two days
Under half a day
Under an hour
Maintenance, no behaviour change
Human decision required; never agent/ready
Documentation only
New capability
Corrects broken behaviour
Infrastructure, deploy, runtime
Investigate; output is a finding, not code
Test coverage only
No labels
Milestone
No items
No Milestone
Projects
Clear projects
No projects
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: mathias/hyperguild#72
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Found while promoting qwen36 (#35, 2026-06-29)
The routing pod manifest (
infrak3s/apps/routing/deployment.yaml) sets:But
internal/config/routing.go(since commit5b20742, "rename local/claude to fast/thinking model pair") readsHYPERGUILD_THINKING_MODEL, defaultiguana/gemma4-26b. SoHYPERGUILD_CLAUDE_MODELis a dead key — the pod ignores it and runs the thinking tier on the default.This is the same drift class as the fast-model key, which was fixed in infra
c66a195(HYPERGUILD_LOCAL_MODEL→HYPERGUILD_FAST_MODEL). The fast key was caught and corrected; this sibling was left as a separate ticket to keep that commit surgical.Why it matters
claude-sonnet-4-6) is not what's running. The defaultiguana/gemma4-26bis in play, and per the brain, iguana has been offline — so the thinking/Claude route may be silently broken or erroring, not falling back to Sonnet as the manifest implies.Fix
Decide the intended thinking tier, then in
infrak3s/apps/routing/deployment.yaml:HYPERGUILD_CLAUDE_MODEL→HYPERGUILD_THINKING_MODEL, value = the intended model (claude-sonnet-4-6if that's the call), commit to main, flux reconcile.Prevention
Manifest env keys silently drift from code after a rename with zero error signal — the pod just uses defaults. Worth a CI check that asserts every
HYPERGUILD_*key in the deployment manifest is actually read byconfig/routing.go.Refs: #35, infra
c66a195Stale — superseded by #75/#76 (merged
0785f14, "Consolidate to single harness: icebox cmd/routing").cmd/routingand its k3s deployment (k3s/apps/routing/deployment.yaml) were deleted entirely;Dockerfile.routingremoved;cd.ymlno longer builds a routing image. Checked~/dev/AI/infra: noroutingapp dir exists anymore, and noHYPERGUILD_*env vars appear in any live k3s manifest (onlyingestion-deployment.yamlexists underk3s/apps/supervisor/, unrelated env keys).cmd/hyperguild(the CLI harness, kept post-consolidation) still readsHYPERGUILD_THINKING_MODEL(internal/config/routing.go) — but it isn't deployed as a k8s pod, so there's no manifest env key to rename. If the thinking-tier model still needs pinning wherevercmd/hyperguildactually runs (host shell env, systemd unit, etc.), that's a different, currently-unfiled concern — I didn't find a repo-tracked place to fix it.One related paper cut found while checking:
infra/tools/homelab-map/internal/parse/routing.go+internal/model/model.gostill parse/model a field namedClaudeModel(HYPERGUILD_CLAUDE_MODEL) rather thanThinkingModel(HYPERGUILD_THINKING_MODEL) — same naming drift, in a doc-generation tool, filed separately since it's unrelated to this issue's original (now-removed) manifest. Closing this one as stale.