fix(cloud-codex): re-pin @commonlyai/mcp to 0.1.9, the newest published version - #866
Merged
Merged
Conversation
…ed version The chart pinned 0.1.10, which has never existed on npm. #804 bumped commonly-mcp/package.json to 0.1.10 at 18:16Z on 2026-08-04; #810 pinned the chart to it 3h37m later at 21:53Z. `npm publish` never ran between them, so the pin named a version the registry does not serve. `npm install --global` in the init container has no `|| true` -- correctly, since the MCP server is not optional -- so it is fatal. cody's codex-tools-installer has been ETARGET/CrashLoopBackOff since 2026-08-04T22:26Z, 33 minutes after the pin landed, 322 restarts and 28h at the time of writing: npm error code ETARGET npm error notarget No matching version found for @commonlyai/mcp@0.1.10. Nothing surfaced it. helm lint and Chart Lint both pass, because a nonexistent version is a syntactically valid string -- a pin is a claim about a remote registry that no local lint can evaluate. The only witness was an init-container log on one pod. Verified rather than assumed: npm view @commonlyai/mcp versions -> 0.1.7, 0.1.8, 0.1.9 npm view @commonlyai/mcp@0.1.10 -> 404 (positive control: 0.1.9 resolves) commonlyMcpVersion occurrences -> 1, the template default; no values override, so this edit is load-bearing helm template ... | grep pin -> @commonlyai/mcp@0.1.9 This is the fallback, not the preferred fix. `npm publish` from commonly-mcp/ is strictly better: it needs no deploy at all and self-heals the running pod on its next init retry (~5 min backoff cap). This change only takes effect on the next helm upgrade. If publish lands first, close this or convert it to the re-pin. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cody has been down for 28 hours because the chart pins an npm version that was never published. One line. This is the fallback fix — read the topology note before merging.
Init container
codex-tools-installer, current log and--previous, identical:The chain, every link dated
npm publishnever ran between those two PRs. A version bump inpackage.jsonis not a publish; it is a promise to publish, and a chart pin is a claim the promise was kept. Neither PR contains the step connecting them.Verified, not assumed
The load-bearing check is the third one: if a values file overrode
commonlyMcpVersion, editing the default would change nothing. It doesn't — and Cody's init error naming0.1.10is empirical proof the default is what's in effect.Why nothing caught it
The pin is a Helm default with no values override, so
helm lintandChart Lintrender it fine — a nonexistent version is a syntactically valid string. A pin is a claim about a remote registry that no local lint can evaluate. Andnpm install --globalhere carries no|| true(correctly — the MCP server isn't optional), so it's fatal rather than degrading. The only witness is an init-container log on one pod that nobody tails.Topology — read before merging
This restores Cody only via the next deploy. A merged chart default is inert until a helm upgrade.
npm publishfromcommonly-mcp/supersedes this entirely and is the better fix: it needs no deploy, and self-heals the currently running pod on its next init retry (~5 min backoff cap). The version is already bumped in-repo; it just needs publishing.So: if publish lands first, close this PR or convert it to the re-pin. It exists to ride the next Deploy Dev that's leaving anyway — not to justify one on its own.
Why it's open now
Per the pod's pre-registered gate: if a Deploy Dev dispatch becomes necessary for another reason before the publish lands, open the re-pin then so it rides that bus. That condition tripped when #862 merged — a merged, inert one-line fix for a dead public demo on the front page, plus a measured ~3.1-day retention deadline on the replacement room.
The timing is mechanical, not eager: Deploy Dev builds from the dispatched ref, so for this to ride that bus it must be on
mainbefore the dispatch. Waiting until a deploy is running would mean missing it by construction.Not dispatching a deploy — that call belongs to whoever shipped #862, or to Sam.
🤖 Generated with Claude Code