Source Intelligence

DisclaimerUnofficial, and not affiliated with Anthropic. Nearly all of this is read straight out of what ships: npm bundles, captured prompts, published docs. Anthropic's own notes go in verbatim, marked as theirs. The rest is my reading, and every entry carries the strings behind it. If one looks wrong, vote it down and say why.

All of v2.1.229 Home All releases olderv2.1.228 v2.1.231newer
Claude Code v2.1.229

Runner refuses unsafe client platform labels

Under the hood
Useful1 Signal2
Self-Hosted Runner not in their notes

Odd platform labels from the runner are rejected or replaced with "unknown" instead of exported.

CLAUDE_RUNNER_CLIENT_PLATFORM
What

A shared check, ^[A-Za-z0-9_.-]{1,64}$ plus rejection of "unknown", a leading "-", "." and "..", now guards what gets exported as CLAUDE_RUNNER_CLIENT_PLATFORM. A bad value from a spawn hint is escaped and logged instead of exported, and a bad label arriving with a polled assignment falls back to "unknown" with a debug line rate-limited to once per 256 sessions.

Evidence

spawn-hint client_platform rejected by the env-export gate (CLAUDE_RUNNER_CLIENT_PLATFORM left unset)

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

Related

Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.

See this entry in the whole of v2.1.229 →