chore(runner): bump CLI-pins — claude-code 2.1.197, codex 0.145.0-alpha.4 #59

Merged
janpeter merged 1 commit from chore/bump-cli-pins-2026-07-11 into master 2026-07-11 19:04:46 +02:00
Owner

Wat

CLI was wordt kanaal
@anthropic-ai/claude-code 2.1.153 2.1.197 npm stable
@openai/codex 0.137.0-alpha.4 0.145.0-alpha.4 npm alpha

De pins liepen ~1 maand achter. Beide bumps volgen het beleid dat al in de Dockerfile staat: claude-code volgt stable, codex volgt alpha in lockstep met buildCodexArgs / classifyCodexOutput in scrum4me-mcp.

Verificatie

  • Codex-lockstep gedekt. De codex exec flag-surface van 0.145.0-alpha.4 is identiek aan die van 0.137.0-alpha.4 — alle vlaggen die buildCodexArgs zet (--json --skip-git-repo-check --ephemeral --color --cd --model --sandbox -c) bestaan nog. Geverifieerd door codex exec --help in beide versies te draaien en te diffen.
  • classifyCodexOutput is ongevoelig voor drift: matcht generiek op /error|fail/i in de JSONL-events, met raw-text-fallback.
  • Build-assert slaagt op beide pins: claude --version2.1.197 (Claude Code), codex --versioncodex-cli 0.145.0-alpha.4, beide matchen de grep -F-check uit de Dockerfile.

Meegenomen: ongepinde compose-fallback

docker-compose.yml had CLAUDE_CODE_VERSION: ${CLAUDE_CODE_VERSION:-latest}. Dat ondermijnt de pin stil: de versie-assert in de claude-stage is een case-guard die alleen grep -F draait bij een numerieke waarde, dus een build via deze compose zonder env leverde een ongepinde CLI op zonder waarschuwing. De default is nu de Dockerfile-pin. Idem in .env.deploy.example.

Na merge

Rebuild vereist op beide hosts (update_mcp_worker mét MCP_CACHE_BUST, dus docker_compose_build_worker_fresh). Let op: /srv/scrum4me/compose/docker-compose.yml op scrum4me-srv hardcodet de build-args en staat niet in git — die moet hand-matig mee.

🤖 Generated with Claude Code

## Wat | CLI | was | wordt | kanaal | |---|---|---|---| | `@anthropic-ai/claude-code` | 2.1.153 | **2.1.197** | npm `stable` | | `@openai/codex` | 0.137.0-alpha.4 | **0.145.0-alpha.4** | npm `alpha` | De pins liepen ~1 maand achter. Beide bumps volgen het beleid dat al in de Dockerfile staat: claude-code volgt `stable`, codex volgt `alpha` in lockstep met `buildCodexArgs` / `classifyCodexOutput` in scrum4me-mcp. ## Verificatie - **Codex-lockstep gedekt.** De `codex exec` flag-surface van 0.145.0-alpha.4 is identiek aan die van 0.137.0-alpha.4 — alle vlaggen die `buildCodexArgs` zet (`--json --skip-git-repo-check --ephemeral --color --cd --model --sandbox -c`) bestaan nog. Geverifieerd door `codex exec --help` in beide versies te draaien en te diffen. - **`classifyCodexOutput` is ongevoelig voor drift**: matcht generiek op `/error|fail/i` in de JSONL-events, met raw-text-fallback. - **Build-assert slaagt op beide pins**: `claude --version` → `2.1.197 (Claude Code)`, `codex --version` → `codex-cli 0.145.0-alpha.4`, beide matchen de `grep -F`-check uit de Dockerfile. ## Meegenomen: ongepinde compose-fallback `docker-compose.yml` had `CLAUDE_CODE_VERSION: ${CLAUDE_CODE_VERSION:-latest}`. Dat ondermijnt de pin stil: de versie-assert in de `claude`-stage is een `case`-guard die alleen `grep -F` draait bij een numerieke waarde, dus een build via deze compose zonder env leverde een **ongepinde** CLI op zonder waarschuwing. De default is nu de Dockerfile-pin. Idem in `.env.deploy.example`. ## Na merge Rebuild vereist op beide hosts (`update_mcp_worker` mét `MCP_CACHE_BUST`, dus `docker_compose_build_worker_fresh`). Let op: `/srv/scrum4me/compose/docker-compose.yml` op scrum4me-srv hardcodet de build-args en staat **niet** in git — die moet hand-matig mee. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
chore(runner): bump CLI-pins — claude-code 2.1.197, codex 0.145.0-alpha.4
All checks were successful
CI / Compose config (pull_request) Successful in 4s
CI / Docker build (pull_request) Successful in 1m10s
d9f52f042f
De pins liepen ~1 maand achter: CLAUDE_CODE_VERSION stond op 2.1.153 (de
npm `stable`-tag van 2026-06-08), inmiddels is stable 2.1.197. CODEX_VERSION
stond op 0.137.0-alpha.4, de `alpha`-tag staat nu op 0.145.0-alpha.4.

Beide bumps volgen het bestaande beleid uit de Dockerfile: claude-code volgt
`stable`, codex volgt `alpha` in lockstep met buildCodexArgs /
classifyCodexOutput in scrum4me-mcp.

Codex-lockstep geverifieerd: de `codex exec` flag-surface van 0.145.0-alpha.4
is identiek aan 0.137.0-alpha.4 — alle vlaggen die buildCodexArgs zet (--json,
--skip-git-repo-check, --ephemeral, --color, --cd, --model, --sandbox, -c)
bestaan nog. classifyCodexOutput matcht generiek op /error|fail/i in de
JSONL-events met raw-text-fallback en is ongevoelig voor event-schema-drift.
Beide nieuwe versies halen de `--version | grep -F`-assert uit de build.

Daarnaast: de compose-default voor CLAUDE_CODE_VERSION was `latest`, wat de
pin stil ondermijnt — de versie-assert in de claude-stage is een case-guard
die alleen grep't bij een numerieke waarde, dus een build via deze compose
zonder env leverde een ongepinde CLI op zonder waarschuwing. Default is nu de
Dockerfile-pin; idem voor .env.deploy.example.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
s4m-codex-reviewer left a comment

Verdict: REQUEST_CHANGES

geen gekoppeld plan gevonden — beoordeeld op codekwaliteit + product-standaarden.

Findings

  • blocking.env.deploy.example:16 / bin/deploy-to-nas.sh:37: de PR wijzigt de deploy-example naar een gepinde Claude/Codex-versie en waarschuwt dat latest niet gebruikt moet worden, maar bin/deploy-to-nas.sh blijft defaulten naar CLAUDE_CODE_VERSION=latest wanneer .env.deploy geen actieve override zet. In de gewijzigde .env.deploy.example is CLAUDE_CODE_VERSION=2.1.197 nog steeds uitgecommentarieerd, dus de standaard bin/deploy-to-nas.sh-flow blijft een ongepinde CLI bouwen en slaat de versie-assert over. Dit breekt de beoogde reproduceerbaarheid van de bump-route; zet de script-default ook op 2.1.197 of maak de override actief in de deploy-example.

Controle

  • Productdocs gelezen: architecture/overview, runbooks/agent-guidance.
  • Externe pin-verificatie uitgevoerd: @anthropic-ai/claude-code heeft stable=2.1.197, latest=2.1.207; @openai/codex heeft alpha=0.145.0-alpha.4.
## Verdict: REQUEST_CHANGES geen gekoppeld plan gevonden — beoordeeld op codekwaliteit + product-standaarden. ### Findings - **blocking** — `.env.deploy.example:16` / `bin/deploy-to-nas.sh:37`: de PR wijzigt de deploy-example naar een gepinde Claude/Codex-versie en waarschuwt dat `latest` niet gebruikt moet worden, maar `bin/deploy-to-nas.sh` blijft defaulten naar `CLAUDE_CODE_VERSION=latest` wanneer `.env.deploy` geen actieve override zet. In de gewijzigde `.env.deploy.example` is `CLAUDE_CODE_VERSION=2.1.197` nog steeds uitgecommentarieerd, dus de standaard `bin/deploy-to-nas.sh`-flow blijft een ongepinde CLI bouwen en slaat de versie-assert over. Dit breekt de beoogde reproduceerbaarheid van de bump-route; zet de script-default ook op `2.1.197` of maak de override actief in de deploy-example. ### Controle - Productdocs gelezen: `architecture/overview`, `runbooks/agent-guidance`. - Externe pin-verificatie uitgevoerd: `@anthropic-ai/claude-code` heeft `stable=2.1.197`, `latest=2.1.207`; `@openai/codex` heeft `alpha=0.145.0-alpha.4`.
janpeter merged commit 0153a5bee2 into master 2026-07-11 19:04:46 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
janpeter/scrum4me-docker!59
No description provided.