$ the-wire · showcase
Buffa closes silent JSON parse failures, quickstarts move to ant apply
By RepoJournal · Filed · About Anthropic · Composed from the cited sources · methodology
Buffa's codegen can now reject unknown JSON keys instead of silently parsing them into defaults, while the Managed Agents quickstarts finish their migration off hand-written YAML setup scripts.
codegen: deny_unknown_json_fields to reject unknown JSON keys anthropics/buffa
Buffa's generated JSON deserializers used to ignore unrecognized keys, so a misspelled or wrong-schema field parsed into a default message and .validate() then passed against that well-formed default. The new deny_unknown_json_fields option flips the lenient `_ => { map.next_value::<IgnoredAny>()?; }` arm in buffa-codegen/src/message.rs into a hard error, which is the failure mode you want in a...
textproto: accept trivia inside bracketed names anthropics/buffa
The Text Format grammar permits whitespace and comments between the parts of a bracketed name, but Buffa only trimmed the whole bracket body, so internal trivia broke registry lookups for names like `[pkg.ext]` and `[type.googleapis.com/pkg.Msg]`. The scanner now normalizes that trivia and ignores `]` characters appearing inside `#` comments, which previously terminated the token early.
textproto: accept comments between adjacent strings anthropics/buffa
The same lexer now consumes comments between adjacent textproto string literals, so `value: "foo" # comment\n "bar"` concatenates to `foobar` instead of being rejected. The whitespace/comment consumer is shared by the string unescaper and the tokenizer.
ci: recompress wheels, raise the PyPI pre-flight threshold, and set the version to 0.2.157 anthropics/claude-agent-sdk-python
A release off main would have failed: the Windows wheel came in at 106,572,002 bytes (101.63 MiB) against PyPI's 100 MiB per-file limit. Recompressing every wheel with zopfli at build time brings it to 102,853,707 bytes, the pre-flight threshold moves up, and the version is set to 0.2.157 so the next release publishes 0.2.158.
test: pin default model for e2e tests to claude-opus-5 (#1287) anthropics/claude-agent-sdk-python
Since CLI 2.1.280 the default model is claude-opus-5-5, and the API rejects those requests for the org CI runs under with `API Error: 400 ... attest its permission mode in metadata.user_id`, because the public CLI build leaves that field unpopulated. Pinning the e2e suite and examples job to claude-opus-5 gets them running again.
Provision the Sentry triage quickstart with ant apply anthropics/claude-quickstarts
Alongside the road trip planner, the Sentry triage quickstart now runs `ant apply --yes agents environments vaults`, the third step of the migration. The vault is reconciled by ant apply (since ant 1.34.0); the secret is deliberately left alone.
Action items