Skip to content

npm publishing: post-launch follow-ups (provenance, release path, latest tag, docs) #268

Description

@EricAndrechek

npm publishing for @wavehouse/sdk is live and confirmed working via OIDC trusted publishing (#227, shipped in #266 + #267). This tracks the remaining post-launch / go-public hardening items.

Follow-ups

  • Enable build provenance. (done in ci: add build provenance for npm, go binaries, and the ghcr image #308 — also extended to Go release binaries + the GHCR image, not just the two npm publish lines.) Once the repo is public (the "Make GitHub repo public" step in release: cut v0.1.0-alpha.1 (first public alpha) #149), uncomment --provenance on both npm publish lines in .github/workflows/publish-npm.yml (the dev and release jobs). Provenance requires a public source repo; it adds a signed SLSA build attestation + the npm "Provenance" badge. Do this together with the go-public step so it isn't forgotten.
  • Exercise the sdk-v* release path. The release job (tag → latest/alpha/beta/rc/next + a GitHub Release) is wired but has never run. Cutting sdk-v0.1.0 (or sdk-v0.1.0-alpha.1) is its first real test — verify the tag↔version match check, dist-tag derivation, npm publish, and gh release create.
  • latest dist-tag. It currently points at the bootstrap 0.0.0-dev.0f8826c (npm auto-set latest on the first-ever publish), so bare npm install @wavehouse/sdk resolves to a dev build. The first sdk-v* release publishes a real version to latest and resolves this — confirm afterward.
  • Document the npm release flow in AGENTS.md — the content-addressed dev channel, the sdk-v* release flow, the one-trusted-publisher constraint, and the Node 24 / npm ≥ 11.5 requirement.

How it works today (context)

  • One trusted publisher: publish-npm.yml (configured on npmjs.com → Wave-RF/WaveHouse). OIDC, no NPM_TOKEN.
  • Dev channel: every push to main builds the SDK and publishes 0.0.0-dev.h<dist-hash> to the dev dist-tag, skipping when the build hash is unchanged. Commit traceability via npm gitHead.
  • Publish jobs run on Node 24 (ships npm ≥ 11.5.1 for OIDC; Node 22.22.2's bundled npm 10.9.7 is broken — actions/runner-images#13883).

Refs #227, #149.

Metadata

Metadata

Assignees

Labels

area/docsDocumentation, site/, READMEarea/infraCI, build, deploy, Docker, releasearea/sdkTypeScript SDK (clients/ts/)choredocumentationImprovements or additions to documentation

Type

No type

Fields

No fields configured for issues without a type.

Projects

Status
In progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions