The spec follows Semantic Versioning. This page defines what counts as a major / minor / patch change.
The version is recorded in two places that must match:
openapi.yaml→info.versionpackage.json→version
A pre-commit hook (planned) will block desync.
Reserved for breaking changes. After v1.0:
- Removing an endpoint
- Renaming an endpoint or a request/response field
- Removing a required field
- Changing a field's type (
string→number) - Narrowing a response field (e.g., removing a value from an
enum) - Changing an authentication scheme or moving auth from header to body
Pre-1.0, breaking changes can happen on minor bumps (this is standard SemVer). Production users should pin to a patch.
Additive, non-breaking changes:
- Adding a new endpoint
- Adding an optional request field
- Adding a new field to a response (existing consumers ignore it)
- Adding a new value to a response
enum(consumers handle it as the unknown case) - Adding a new error code
Note: adding a new value to a request enum is a minor change for the spec but may cause clients with stricter validation to reject the call. We document new enum values in the changelog so SDK maintainers can update.
No semantic change:
- Documentation (descriptions, examples)
- Tightening descriptions without changing behavior
- Fixing typos
- Adding
operationIdwhere it was missing (technically affects SDK method names — when it does, bump minor)
This is 0.1.x — alpha. The shape is stable enough to build against, but expect minor versions to occasionally have small breaks (e.g., field renames as we tighten the schema). The changelog calls out every break explicitly.
Production users:
- Pin a patch in
package.json:"@outlayer/sdk": "0.1.0-alpha.1", not"^0.1.0". - Read the changelog before upgrading minor versions.
After v1.0, breaks land only on major bumps with a deprecation cycle.
When an endpoint or field needs to be removed:
- Announce — add
deprecated: truein the spec; document the alternative in the description. - 6-month grace — the deprecated thing keeps working. Clients see warnings in Scalar UI and IDE auto-complete.
- Remove — at the major version bump after the grace period.
Hot fixes for security issues skip the grace period and ship as immediate major bumps.
main— current released versionnext— staged changes for the next minor version- Hot-fixes go to
main; everything else goes tonextfirst