Skip to content

spec: hoisted error responses, terse descriptions, curl samples — release v0.12.0 - #41

Merged
bvalosek merged 1 commit into
mainfrom
spec/v0.12.0-error-plane-hoist
Sep 9, 2026
Merged

spec: hoisted error responses, terse descriptions, curl samples — release v0.12.0#41
bvalosek merged 1 commit into
mainfrom
spec/v0.12.0-error-plane-hoist

Conversation

@bvalosek

@bvalosek bvalosek commented Sep 9, 2026

Copy link
Copy Markdown
Member

What

Re-sync of the platform contract from metalabel-dfos #3284 (tight OAS: hoisted error responses, real home-space examples, llms.txt) and #3285 (terse description pass, Scalar curl code samples). Bumps to v0.12.0.

What a consumer notices

  • Nothing on the happy path changed. Same 41 operations. Success response shapes, request bodies, parameters, security, and every existing schema definition are byte-identical once prose and examples are stripped.
  • Error plane hoisted. New ErrorEnvelope schema, 12 named error responses under components.responses (NotFound, RateLimited, Replayed, …), and every operation gains a default response typed as the envelope.
  • One narrow removal. The old inline error unions carried a leaked defined: true | false discriminator. It is gone. Error bodies remain code, status, message, data, with code/status const-narrowed per response. Anyone narrowing on .defined in an error branch would fail to compile.
  • Snapshot shrinks ~36% from description trimming; descriptions are now one or two sentences.

The 429 test fixture is updated to the documented RateLimited envelope (which now requires data).

Version

Minor per the repo rule: additive type surface, pre-1.0. Tag v0.12.0 to release after merge.

Checks

pnpm typecheck, pnpm test, pnpm build green locally; pnpm generate leaves a clean diff.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Rpq64ASTsKJ3xc2DVoQMjh

…ease v0.12.0

Re-sync from platform #3284 (tight OAS: hoisted error responses, real
home-space examples, llms.txt) and #3285 (terse description pass, Scalar
curl code samples).

Consumer-visible:
- No success shape, request body, parameter, security, or schema
  definition changed. Same 41 operations.
- New `ErrorEnvelope` schema; 12 named error responses under
  `components.responses`; every operation gains a `default` response.
- The inline error unions no longer carry the leaked `defined: true|false`
  discriminator. Error bodies remain `code`, `status`, `message`, `data`
  with const-narrowed codes.
- Snapshot shrinks ~36% from description trimming.

Test fixture for the 429 path updated to the documented RateLimited
envelope (which now requires `data`).

Minor bump per the version rule: additive type surface, pre-1.0.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Rpq64ASTsKJ3xc2DVoQMjh
@bvalosek
bvalosek merged commit f3a4efb into main Sep 9, 2026
1 check passed
@bvalosek
bvalosek deleted the spec/v0.12.0-error-plane-hoist branch September 9, 2026 12:36
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