Skip to content

Pin the harness CLI versions to one source + sync the worker to 2.1.193 - #742

Merged
ppXD merged 1 commit into
mainfrom
fix/harness-version-sync
Jun 26, 2026
Merged

ppXD merged 1 commit into
mainfrom
fix/harness-version-sync

Conversation

@ppXD

@ppXD ppXD commented Jun 26, 2026

Copy link
Copy Markdown
Owner

Summary

  • Three version surfaces were drifting with no guard: the worker Dockerfile pinned claude-code 2.1.191, the harness DefaultVersion constants reported 0.2.0 / 2.1.0 (stale), and a dev box could run anything.
  • Make backend/Dockerfile.worker's CODEX_CLI_VERSION / CLAUDE_CODE_VERSION ARGs the single source of truth: bump claude to 2.1.193 (latest + matches the local install; codex stays 0.142.2, latest), align CodexHarness/ClaudeCodeHarness.DefaultVersion, and add HarnessVersionPinTests that read the Dockerfile and fail in CI if either C# constant drifts from its ARG.
  • backend/deploy/sync-local-harnesses.sh installs the same pinned versions on a dev box and warns if a native install shadows them on PATH.

Test plan

  • HarnessVersionPinTests: Codex/Claude DefaultVersion == the Dockerfile ARG (reads backend/Dockerfile.worker) — 2/2
  • Updated the codex version test to track DefaultVersion instead of a hardcoded literal
  • Full unit suite 3849/3849; solution build clean
  • Sync script parses codex=0.142.2 claude=2.1.193 from the Dockerfile

… 2.1.193

The worker Dockerfile pinned claude-code 2.1.191 while the harness DefaultVersion
constants reported 0.2.0 / 2.1.0 (stale) and a dev box could run anything — three
version surfaces drifting silently with nothing to catch it.

Make the worker Dockerfile ARGs the single source of truth: bump CLAUDE_CODE_VERSION
to 2.1.193 (matches the latest + the local install; codex stays 0.142.2, the latest),
update CodexHarness/ClaudeCodeHarness.DefaultVersion to the same strings, and add
HarnessVersionPinTests that read the Dockerfile and fail if either constant drifts
from its ARG — so a bump in one place that isn't mirrored is caught in CI, not in
production. deploy/sync-local-harnesses.sh installs the same pinned versions on a dev
box and warns if a native install shadows them. Bump the ARG, follow the test, run
the script — the three surfaces stay in lockstep.
@ppXD
ppXD merged commit 20cf484 into main Jun 26, 2026
6 checks passed
@ppXD
ppXD deleted the fix/harness-version-sync branch June 26, 2026 06:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant