Skip to content

deps: bump toolchain, RTK v0.44.2, caveman v1.9.1 - #14

Merged
intech merged 1 commit into
mainfrom
deps/bump-toolchain-2026-08
Aug 3, 2026
Merged

deps: bump toolchain, RTK v0.44.2, caveman v1.9.1#14
intech merged 1 commit into
mainfrom
deps/bump-toolchain-2026-08

Conversation

@intech

@intech intech commented Aug 3, 2026

Copy link
Copy Markdown
Member

What

Routine toolchain bump.

Component From To
@anthropic-ai/claude-code 2.1.183 2.1.220
@agentclientprotocol/claude-agent-acp 0.48.0 0.64.2
@fission-ai/openspec 1.4.1 1.7.0
@colbymchenry/codegraph 1.0.1 1.5.0
@modelcontextprotocol/server-sequential-thinking 2025.12.18 2026.7.4
pnpm 11.8.0 11.18.0
prettier 3.8.4 3.9.6
eslint 10.5.0 10.8.0
RTK (GitHub release) v0.42.4 v0.44.2
caveman (plugin tag) v1.9.0 v1.9.1

Unchanged because already latest: caveman-shrink 0.1.0, perplexity-mcp 0.2.3, ts-node 10.9.2, git-delta 0.19.2.

Both per-arch RTK sha256 values were recomputed from the downloaded tarballs and matched against the release checksums.txt.

TypeScript stays at 6.0.3 on purpose

The latest dist-tag is now 7.0.2 — the native (Go) compiler rewrite, whose npm package no longer exposes the full JS compiler API. Built the image with 7.0.2 and exercised both tools:

  • tsc — fine: compiles and still rejects a type error.
  • ts-node 10.9.2 — dead on every invocation: TypeError: Cannot read properties of undefined (reading 'fileExists'), because ts.sys is undefined.

6.0.3 is the head of the 6.x line. Bumping to 7.x needs ts-node replaced (e.g. by tsx) or fixed upstream; the reasoning is recorded in CLAUDE.md.

Build gate fix (in scope because the bump exposed it)

ts-node --version prints a constant without ever loading the compiler, so a completely broken ts-node passed the gate and would have shipped green. Added a gate line that actually transpiles and runs a typed snippet. --compiler-options module=commonjs is required: with no tsconfig in scope the -e REPL emits an ESM export {} that its own vm.Script (CJS) cannot parse.

Checked in a clean node:22:

gate typescript 6.0.3 typescript 7.0.2
old (--version) pass pass (misses the breakage)
new (typed -e) pass, still rejects a type error fail

Security

npm audit after the lockfile regen: 8 vulnerabilities (1 low, 2 moderate, 5 high) → 2 high, both fix: false. The remaining pair is perplexity-mcp 0.2.3 (the latest published version) pinning an outdated @modelcontextprotocol/sdk — the same residual as after #7.

No top-level pin drift; linux-x64 and linux-arm64 artifacts are present in the lockfile with integrity for claude-code and codegraph.

Verification

Verified on amd64:

  • ./build.sh exits 0, build gate passes.
  • In-image versions match the pins: claude-code 2.1.220, openspec 1.7.0, rtk 0.44.2, pnpm 11.18.0, tsc 6.0.3, ts-node 10.9.2, prettier 3.9.6, eslint 10.8.0, codegraph 1.5.0.
  • tsc compiles and rejects a type error; ts-node executes typed code.
  • claude mcp list from /workspace at the default MCP_TIMEOUT=10000: codegraph, sequential-thinking, context7, perplexity all ✔ Connected.

Not verified locally: arm64 — no qemu binfmt on the build host. The arm64 RTK archive was checked for layout (single rtk at the root) and ELF architecture (aarch64, glibc), but the arm64 image was not built. This rests on the pull_request CI job, which builds both architectures.

🤖 Generated with Claude Code

claude-code 2.1.183->2.1.220, claude-agent-acp 0.48.0->0.64.2,
openspec 1.4.1->1.7.0, codegraph 1.0.1->1.5.0,
server-sequential-thinking 2025.12.18->2026.7.4, pnpm 11.8.0->11.18.0,
prettier 3.8.4->3.9.6, eslint 10.5.0->10.8.0.
RTK v0.42.4->v0.44.2 (both per-arch sha256 recomputed and matched against
the release checksums.txt); caveman plugin tag v1.9.0->v1.9.1.
git-delta 0.19.2 is already the latest release - unchanged.

typescript stays pinned at 6.0.3 on purpose. The `latest` dist-tag is now
7.0.2, the native (Go) compiler rewrite, whose npm package no longer exposes
the full JS compiler API: under it ts-node 10.9.2 dies on every invocation
("Cannot read properties of undefined (reading 'fileExists')" - ts.sys is
undefined), while tsc itself still compiles and type-checks. Verified by
building the image with 7.0.2 and running both tools.

The existing `ts-node --version` build gate did NOT catch that - it prints a
constant without loading the compiler, so a broken ts-node shipped green.
Added a gate line that actually transpiles and runs a typed snippet.
`--compiler-options module=commonjs` is required because, with no tsconfig in
scope, the `-e` REPL emits an ESM `export {}` its own vm.Script cannot parse.
Checked in a clean node:22: the new gate passes on 6.0.3 (and still rejects a
type error) and fails on 7.0.2, while the old gate passes on both.

npm audit after the lockfile regen: 8 vulnerabilities (1 low, 2 moderate,
5 high) -> 2 high, both `fix: false` - perplexity-mcp 0.2.3 (the latest
published version) pins an outdated @modelcontextprotocol/sdk. Same residual
pair as after #7. No top-level pin drift; linux-x64 and linux-arm64 artifacts
are present in the lockfile with integrity for claude-code and codegraph.

Verified on amd64: build exits 0, gate passes, in-image versions match, tsc
compiles and rejects a type error, ts-node executes typed code, and all four
MCP servers report Connected from /workspace at the default MCP_TIMEOUT=10000.
arm64 was not built locally (no qemu binfmt on the host); it rests on the
pull_request CI job that builds both architectures.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@intech
intech merged commit 3f0b559 into main Aug 3, 2026
3 checks passed
@intech
intech deleted the deps/bump-toolchain-2026-08 branch August 3, 2026 06:20
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