Use this before tagging a release or publishing npm packages.
Aligned with roadmap Phase 1 exit criteria and day-one operator expectations:
-
Clean install and build
bun install --frozen-lockfile bun run build
-
Tiny profile (mock provider)
bun run smoke:tiny bun run smoke:tiny:public bun run smoke:tiny:async bun run smoke:tiny:public-async
These start the tiny mock-provider gateway on ephemeral loopback ports and verify
/livez,/readyz,/v1/infer, protected/v1/jobsauth guards, rate limiting, standalone async submission/status completion, and the public-auth async submission/status path without an external model server. -
Tests
bun run test -
Config validation
bun run validate:config bun run validate:config:all bun run smoke:tiny bun run smoke:tiny:public bun run smoke:tiny:async bun run smoke:tiny:public-async bun run deploy:smoke bun run deploy:scripts bun run package:runtime bun run docs:links bun run model:stage:smoke RAY_API_KEYS=smoke bun run validate:config:public
-
VPS-oriented checks (when exercising the default
sub1b/llama.cpppath)- Gateway serves unauthenticated
/livezfor reverse-proxy health checks. - Gateway serves unauthenticated
/readyzwith minimal provider status, queue, pressure, and readiness reason codes. - With auth enabled in config,
/v1/infer,/health,/metrics, and/v1/configreject missing or invalid API keys. - Rate limiting behaves as configured.
- On a real Hetzner runner,
bun run benchmark:assert:cx23orbun run benchmark:assert:cax11passes for the target machine class.
- Gateway serves unauthenticated
Use Changesets on main (bun run version) to bump linked public @razroo/ray-* packages and update their CHANGELOG.md files, then run bun run release:github -- --dry-run and bun run release:github -- --yes to create guarded package tags plus GitHub Releases (see npm-publishing.md). Quality checks must succeed (job quality / bun run release:gate); release workflows verify the tag commit is reachable from origin/main and poll for that check run before npm publish (with provenance). Before tagging, run bun run release:check-source -- <version> to verify the linked package manifests match the release version. After publishing, run bun run release:verify-npm -- <version> to verify npm latest, the published version metadata, integrity, and registry tarball URL. Add repository secret NPM_TOKEN. Branch protection for main is recommended in GitHub settings.
- Update version numbers in package manifests when cutting a release.
- If behavior or deployment steps change, update
README.md,examples/, anddocs/architecture.mdas appropriate.