Current section
Files
Jump to
Current section
Files
CHANGELOG.md
# Changelog
All notable changes to the published `pristine` runtime package are documented
in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
## [0.3.1] - 2026-09-17
### Fixed
- Require Foundation 0.2.2 for supervised default ETS registries and caller-owned
explicit registries, eliminating transfers to Erlang `:init` after worker exit.
- Honor live explicit rate-limit registries without requiring an ETS heir;
delegate default-registry ownership/recovery to Foundation instead of creating
per-request replacement tables or overwriting Foundation's persistent cache.
- Include runtime guides in the Hex package used to build documentation.
## [0.3.0] - 2026-09-16
- Refresh all runtime, optional, and development dependency requirements and the
resolved lockfile, including Execution Plane 0.3.0, Bandit 1.12.5, and Mint 1.10.0.
### Added
- Optional `retry_budget_ms` in the Foundation adapter stops before an over-budget delay and preserves the last result.
- Zero initial backoff or cap disables backoff while preserving Retry-After.
- Provider-defined HTTP status range overrides through `status_retry_ranges`.
- Exact status overrides take precedence over ranges; overlapping ranges are rejected.
- Existing provider behavior is unchanged when no ranges are configured.
### Changed
- Added `Pristine.GovernedAuthority` and governed credential auth handling so
authority-selected HTTP credentials can execute while direct base URLs,
headers, auth overrides, and OAuth saved-token sources fail closed in
governed mode.
- Updated the runtime package source constraint to consume `sinter` `0.3.2`.
- Unary HTTP execution now uses the separately published `execution_plane` and
`execution_plane_http` packages.
## [0.2.1] - 2026-04-01
### Changed
- Expanded the runtime package docs to clarify auth and token-source behavior
for Foundation-backed clients.
### Fixed
- Synchronized the package changelog with the `0.2.1` runtime release metadata.
## [0.2.0] - 2026-03-27
### Added
- Added the client and operation-centered runtime surface around
`Pristine.Client`, `Pristine.Operation`, `Pristine.Response`, and the
SDK-facing `Pristine.SDK.OpenAPI.Client` helpers.
- Added package-local guides, examples, docs assets, and HexDocs structure for
the published runtime package.
- Added `Pristine.SDK.ProviderProfile` and the request-spec execution boundary
used by generated provider SDKs.
### Changed
- Rebuilt the runtime around explicit request, endpoint metadata, and adapter
contracts while keeping Foundation-backed execution as the recommended
production profile.
- Moved the runtime into `apps/pristine_runtime` as the published package
boundary inside the monorepo.
### Fixed
- Improved HTTP result classification and retry behavior.
- Handled OAuth error payloads returned inside HTTP 2xx responses.
## [0.1.0] - 2026-03-14
### Initial Release