Skip to content

chore: refresh stable Claude runtime pin to 2.1.300 - #177

Merged
makeitfutureDev merged 1 commit into
mainfrom
release/stable-engine-pins-20261014
Oct 15, 2026
Merged

makeitfutureDev merged 1 commit into
mainfrom
release/stable-engine-pins-20261014

Conversation

@makeitfutureDev

@makeitfutureDev makeitfutureDev commented Oct 14, 2026 •

Copy link
Copy Markdown
Owner

Scope

Exact candidate: 031a5656aceaa3ce5e959304b6729fbf1f67c407.
Base: approved stable main at 4748c509b9d186eb0abfc083465a753feff237dd (#173).

Claude Code 2.1.300 became the stable npm release while the prior 2.1.299 candidate was being validated and deployed. This follow-up changes only the Claude pin from 2.1.299 to 2.1.300, the matching docs/COMPATIBILITY.md target, and the existing Unreleased changelog bullet. Codex stays at 0.162.1. No beta runtime changes, image contract change, package-version bump or tag are included.

Validation status

All required local automated gates passed on the exact commit with Linux / Node 22.22.2 on 2026-10-14:

  • npm run test:coverage: PASS; 3220 tests, 3196 pass, 0 fail, 24 skipped. Coverage 93.83% lines / 84.70% branches / 89.32% functions. Skips are not live acceptance.
  • npm run check:static: PASS; 774 JavaScript files.
  • npm run secret-scan: PASS; 938 files/blobs, no findings.
  • npm run test:security-coverage: PASS.
  • npm audit --omit=dev --audit-level=high: PASS; 0 vulnerabilities.
  • npm run check:dco -- origin/main..HEAD: PASS; one signed-off commit.

The dependency lockfile is unchanged from #173; its successful npm ci installation is reused. GitHub CI run 38615856929: PASS; both Node 22.13/24 test jobs, hygiene and DCO succeeded. Candidate-image authenticated Claude acceptance is pending. Neither help parsing nor a previous-version smoke is evidence for the updated Claude binary.

Candidate and adoption gates

  • Record exact candidate image IDs, build digest, actual Claude version, daemon UID/GID, parent image and incremental build recipe/provenance. Reused Node/browser/helper/other-CLI evidence must identify the unchanged inputs and hashes.
  • Run authenticated isolated Claude CG_UPDATE_SMOKE_OK through each configured container proxy runner; record fixture cleanup and any unconfigured login as unexecuted acceptance.
  • Codex 0.162.1 remains unchanged. Its relay compatibility proof and previous authenticated results from chore: refresh stable runtime engine pins #173 can be reused only where their exact inputs remain unchanged.
  • Complete applicable updated-Claude cold/warm/resume and interactive SSH acceptance, or obtain an explicit deferral decision for the exact new candidate.
  • Obtain fresh exact-candidate administrator approval before merging stable main or adopting these stable images. Approval of chore: refresh stable runtime engine pins #173 does not approve this changed candidate.
  • A tagged public release still requires aligned package/lockfile/changelog/tag metadata and the release artifact/provenance gates. This preparation PR creates no tag and does not reuse the existing 0.6.3 tag for changed source.

Stable production source and images remain at the previously approved candidate until the new approval and rollout are completed.

Updated image and live evidence

  • The two stable per-account candidate images are e9e284cb5c871c57b927558162b15d092514eb7f3687c9b3ec3a1fa6c7579a64 and 29af57662bb49d944809b1ea5d8664e2ea1f450c62f13b0ffd7edf64ba6d2881, with exact stable source digest 8676d45401d1f0fa747011944cd6afa937f4a18a33d80ed890aa65332a15d1dc.
  • Each records its immutable, just-validated parent image and replaces only the global Claude Code installation. Node, browser, other CLIs and helper code are preserved. No normal-image tag has been moved for stable rollout.
  • The primary configured deployment passed native Claude 2.1.300 and Codex 0.162.1 CG_UPDATE_SMOKE_OK through its existing proxy/login relay; the testing deployment passed Codex and skipped Claude because no login is configured. The probe reports its actual resolved image ID.
  • All four exact-candidate CI jobs passed: https://github.com/makeitfutureDev/channelgate/actions/runs/38615856929.
  • Testing Claude execution, interactive desktop SSH and the full read-only capability campaign remain unexecuted; existing explicit deferrals must be accepted for this candidate. Prior Codex relay/browser evidence is reused only where the unchanged parent components justify it.

Independent image verification and reused evidence

The stable source remains exact candidate 031a5656aceaa3ce5e959304b6729fbf1f67c407. The incremental build replaces only the global Claude Code package with 2.1.300, cleans its temporary npm cache, updates provenance/toolchain labels, and restores USER agent. The three reviewed build recipes add no ENV, helper, Node or browser change.

Candidate Exact parent image Source / image contract
e9e284cb5c871c57b927558162b15d092514eb7f3687c9b3ec3a1fa6c7579a64 b1b4f726fa75bee85ba9aafea14d58446cae1a88e9d95ce7ceb4af839d4b2c4a stable exact candidate, UID/GID 1000, spec 1.6.1
29af57662bb49d944809b1ea5d8664e2ea1f450c62f13b0ffd7edf64ba6d2881 1879c8189e6adbff9e2af54cd15df43fa34a7fd6adafb623c5f4e7588a4c1c2b stable exact candidate, UID/GID 1002, spec 1.6.1
6159467c80b8d6aa415ea6357169c885c2c13f3e44d6268e74ce8f539671dd16 b3f89acfc7ff04a2a31a213f50421e89af37e560f86338729262b5343e22f67b separate beta candidate dbea0604, UID/GID 1001, spec 1.6.2; supplemental evidence, not this stable source

Stable candidate build digest: 8676d45401d1f0fa747011944cd6afa937f4a18a33d80ed890aa65332a15d1dc. Separate beta build digest: 84257f28ebcc0cc77c4afd6054be35cc385a4d25d2897e0fece0a43cc0143b61.

Independent verification on 2026-10-14 passed on all three candidates:

  • Actual image binaries: Claude 2.1.300 and Codex 0.162.1, both resolving to /usr/local/bin; Node 22.23.3.
  • All six real repository CLI command-surface canaries passed in disposable network-disabled containers. Only the public canary/import closure was tar-staged; no host HOME, credential files or whole checkout was mounted.
  • Parent image labels match the exact IDs above; all parent filesystem layers are preserved. Configured USER, ENV, entrypoint and working directory match the corresponding validated parent.
  • All 33 parent/candidate content comparisons (11 groups per pair) are identical: Node executable, Codex launcher, the complete Codex package including its native binary, sshd, helper bin/engines/gateway/mcp trees, baked Chromium 1243 executable, Playwright and agent-browser package trees.

This supports reusing the unchanged parent's Codex relay/authentication, local browser and SSH-helper evidence from #173 with the same scope and limitations. It does not turn a deferred desktop SSH or full read-only campaign into a pass. Updated-Claude authenticated acceptance is still separate and must be recorded before requesting exact-candidate adoption approval.

Stable reused-input content digests

These SHA-256 values are deterministic path-framed content digests, not ordinary file-only sha256sum values. The traversal sorts directory entries, includes relative paths with NUL delimiters, records symlink targets, and hashes file bytes followed by NUL. Each candidate matched its own exact parent's digest for every row.

Stable input Content digest
/usr/local/bin/node 12398d4cd48fd1b19211976b630c5cfe2982d3c003aea65292baf927a61443a0
/usr/local/bin/codex 7a37f91d514b6debce0e8913f49716670fa5a2ee012b19df61d87c2474419ccb
/usr/local/lib/node_modules/@openai/codex 92f51037082862f0de0d3bd6262398fd3a63aaa7f3ef339d28f5cbf3b4b2f9d5
/usr/sbin/sshd fc50f01cff74362c22cd14b7d712f3462cea2ba91596b75a67436d0f13f41c5d
/opt/channelgate/bin 3e91e310f7290cd2b550aa5678aed6ced0919c013484de8b108cc9eb68e67c2b
/opt/channelgate/engines 9cfdf08f0b7f566039517d6b0ed76be4a9f51b94b2ff5a250c191e8a603e6218
/opt/channelgate/gateway dda02d7e2cb2b37a3825ec79417957e0437c784d80287cf75a8e4e11d136c104
/opt/channelgate/mcp 4f3f241141fc78e178e477a1398d7d2bcfbac3a4a5e33d575b06d501b1a36112
/opt/channelgate/browsers/chromium-1243/chrome-linux64/chrome 32a552159f01b9481148447be99c947adc82e05a2bab9b141cc37c45451e4315
/usr/local/lib/node_modules/playwright 00f80e79b6c8f58b94ab4cfa2fdf19044dc0b1bc5a4995165cd533151f50e6f2
/usr/local/lib/node_modules/agent-browser cca9046849601b62cf13a12149b97e541c81d71113d12b9c7aab35595864bbdf

Signed-off-by: Tiberiu Socaci <tsocaci@makeitfuture.com>
@makeitfutureDev
makeitfutureDev marked this pull request as ready for review October 15, 2026 03:48
@makeitfutureDev
makeitfutureDev merged commit 031a565 into main Oct 15, 2026
4 checks passed
@makeitfutureDev
makeitfutureDev deleted the release/stable-engine-pins-20261014 branch October 15, 2026 03:50
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.

2 participants