All notable changes to this project are documented in this file. The project follows Semantic Versioning and uses Conventional Commits for release-PR automation.
0.1.4 (2026-07-31)
- compose release document normalization (cd4e151)
- make release boundaries deterministic (#39) (f28a849)
- make release gates deterministic (#37) (c5eb2f9)
0.1.3 - 2026-07-30
- Prevent stale mutable release claims in persistent guidance and current-state documentation (#34) (c5b422c).
- Record completed
0.1.2publication, live, provenance, digest, and public-registry verification evidence (#33) (0f71cca).
0.1.2 - 2026-07-30
- Pin Release Please to its reviewed Node 24 action and reject regressions to the deprecated Node 20 runtime.
- Separate non-retryable immutable release creation from PR-only maintenance, with exactly one bounded retry for an isolated pull-request transport failure.
- Keep the README and built distribution long description publication-neutral, with an unpinned stable installation command and no transient approval state.
- Record completed
0.1.1publication, live, provenance, digest, and public-registry verification evidence.
0.1.1 - 2026-07-29
- Harden stable release recovery (#21) (2e96574).
- Preserve PyPI publisher workflow identity (#22) (ec420af).
- Preserve selected release execution (#23) (9cd6041).
- Reject explicitly blank API keys and base URLs without fallback, treat blank
environment keys as missing, and use the default CometAPI URL for a blank
COMETAPI_BASE_URL(d02b1db).
- Record stable release evidence (#24) (60a21dd).
- Require Release Please permission preflight (18de120).
- Trim leading and trailing whitespace from direct and environment string API
keys and base URLs. Applications that intentionally supplied surrounding
whitespace must pass the intended credential or URL without that padding;
callable keys and
httpx.URLobjects are unchanged.
0.1.0 - 2026-07-28
-
Release documentation now records completed Registry Alpha publication, provenance, digest, clean-install, import, and mocked-call verification.
CometAPIandAsyncCometAPIthin adapters over the official OpenAI SDK.- Contract-tested Chat Completions and Responses in synchronous, asynchronous, streaming, and non-streaming modes.
- Contract-tested synchronous and asynchronous Models listing.
COMETAPI_KEYandCOMETAPI_BASE_URLconfiguration.- Typed-package marker, mocked contracts, artifact and clean-install checks, self-containment verification, and offline CI definitions.
- Public contribution, conduct, security, support, architecture, compatibility, roadmap, and release documentation.
- The OpenAI dependency contract is
openai>=2.45.0,<3.0.0. - Public client constructors now expose only named, precisely typed, CometAPI-compatible OpenAI options; private, arbitrary, and route-bypassing options are rejected.
- Release publication now requires immutable-tag/default-branch ancestry verification and protected live smoke against the exact release commit.
- Registry verification preserves the pre-publication digest bundle across checkout and compares public artifacts against those exact digests.
- Public Preview document checks report every violation together and fail closed on canonical identity, repository metadata, contacts, public-safe language, and standalone content.
- Scheduled live smoke requires the explicit repository opt-in, and release
live smoke defaults an unset or empty model setting to
gpt-5.4. - Distribution metadata now exposes Support as an HTTPS link to
SUPPORT.md; release checks reject non-HTTPS canonical project URLs. - The initial GitHub prerelease uses the one-time recovery tag
v0.1.0-alpha.1+recovery.1because GitHub permanently reserved the failed immutable release tag; the PyPI package version remains0.1.0a1. - Release Please remains disabled until a separately reviewed and tested previous-release boundary bridges the recovery tag's build metadata.
- Unsupported aliases
CometClientandAsyncCometClient. - Account, balance, token, log, task, and platform helpers from the 0.1 scope.
- The provisional single-maintainer
CODEOWNERSrequirement.