@@ -4,11 +4,11 @@ The official CometAPI entry point for the OpenAI-compatible API. The SDK keeps
44the official OpenAI JavaScript request, response, stream, and error types while
55defaulting the client to CometAPI.
66
7- > ** Stable 0.1 release :** ` 0.1.1 ` is published on npm's default ` latest `
8- > dist-tag. Its immutable GitHub Release, bounded live smoke, npm OIDC
9- > publication, provenance, signature, and separate public-registry installation
10- > verification are complete . The supported API remains limited to the
11- > contract-tested 0.1 surface documented here and in
7+ > ** Stable 0.1.x maintenance :** Stable packages install from npm's default
8+ > ` latest ` dist-tag, while prerelease artifacts use ` next ` . Exact package,
9+ > dist-tag, and GitHub Release state is intentionally not pinned in this README;
10+ > query the registries when that state matters . The supported API remains
11+ > limited to the contract-tested 0.1 surface documented here and in
1212> [ COMPATIBILITY.md] ( ./COMPATIBILITY.md ) .
1313
1414## Supported 0.1 surface
@@ -46,6 +46,17 @@ Install the stable package from npm's default `latest` dist-tag:
4646npm install cometapi
4747```
4848
49+ The unversioned registry page is
50+ < https://www.npmjs.com/package/cometapi > . Query npm and GitHub instead of using
51+ an exact version copied from repository prose:
52+
53+ ``` bash
54+ npm view cometapi version
55+ npm view cometapi dist-tags --json
56+ gh release view --repo cometapi-dev/cometapi-node \
57+ --json tagName,isDraft,isPrerelease,publishedAt,url
58+ ```
59+
4960The release workflow is the sole source of the npm dist-tag: prerelease
5061versions publish to ` next ` , while stable versions publish to ` latest ` . The
5162package manifest does not declare a static dist-tag.
@@ -164,12 +175,13 @@ const response = await client.chat.completions.create(
164175);
165176` ` `
166177
167- Starting with 0.1.1, the public type matches the runtime boundary that 0.1.0
168- intended. The SDK owns CometAPI routing, authentication, and the Node-only
169- secret boundary. Consequently, ` provider` , ` workloadIdentity` , and
170- ` dangerouslyAllowBrowser` are not ` CometAPIOptions` . They are rejected both by
171- the TypeScript declarations and at runtime when plain JavaScript or a type cast
172- bypasses those declarations. The same restriction applies to inherited
178+ The 0.1.x public type matches the enforced runtime boundary. The SDK owns
179+ CometAPI routing, authentication, and the Node-only secret boundary.
180+ ` CometAPIOptions` therefore declares ` provider?: never` ,
181+ ` workloadIdentity?: never` , and ` dangerouslyAllowBrowser?: never` . Non-` undefined `
182+ values are rejected by TypeScript, including through inferred variables,
183+ spreads, and constrained generics, and runtime validation protects plain
184+ JavaScript and type-cast bypasses. The same restriction applies to inherited
173185` withOptions` calls. A rejection is an official OpenAI ` OpenAIError` and names
174186only the forbidden field; it never includes the supplied value.
175187
@@ -229,24 +241,20 @@ parent.
229241
230242## Project status
231243
232- The repository has completed Public Preview, Registry Alpha, stable ` 0.1 .0 ` ,
233- the ` 0.1 .1 ` maintenance patch, and Repository foundation. Blocking CI,
234- protected repository rules, security reporting, protected environments, and
235- the authorized bounded live smoke have passed. Stable ` 0.1 .1 ` is available from
236- ` latest` ; Registry Alpha ` 0.1 .0 - alpha.3 ` remains available from ` next` . A
237- separate public-registry check passed ESM, CommonJS, declarations, supported
238- mocked calls, the compatible-OpenAI host fixture with one effective OpenAI
239- installation, official error identity, integrity, signature, and provenance.
240-
241- The immutable ` 0.1 .0 - alpha.2 ` GitHub release remains as an unpublished failure
242- record because its guard stopped before invoking npm. Mocked responses, packed
243- artifacts, GitHub Actions, trusted live tests, and npm publication remain
244- separate evidence layers and must not be represented as another. Published npm
245- artifacts are immutable, so the ` 0.1 .1 ` tarball retains its candidate-era
246- README; this post-release status first ships in a later package version. The
247- one-time ` 0.1 .1 ` publication recovery is documented as historical evidence in
248- [RELEASING.md](./RELEASING.md); the current permanent release workflow is
249- immutable-tag-bound. No 0.2 provider adapter work is included.
244+ The repository is in stable 0.1.x maintenance, and no 0.2 provider-adapter
245+ milestone is active. Repository foundation, Public Preview, and Registry Alpha
246+ are complete. Stable packages use ` latest` ; Registry Alpha artifacts use
247+ ` next` . Use the npm and GitHub queries in [Installation](#installation) for
248+ exact current state. Release-specific CI, live-smoke, registry, integrity,
249+ signature, provenance, and public-install evidence is retained in
250+ [RELEASING.md](./RELEASING.md), not restated as mutable version status here.
251+
252+ Mocked responses, packed artifacts, GitHub Actions, trusted live tests, and npm
253+ publication remain separate evidence layers and must not be represented as one
254+ another. Exact failed-release, immutable-artifact, and one-time recovery history
255+ is retained in [RELEASING.md](./RELEASING.md) rather than reproduced in this
256+ consumer README. The permanent release workflow is immutable-tag-bound and
257+ publishes through npm OIDC.
250258
251259See:
252260
0 commit comments