Publishing and Release
Release Surfaces
DevPlat publishes through four primary surfaces:
- GitHub Packages for npm packages
- GHCR for the Docker runtime image
- GHCR OCI for the Helm chart
- GitHub Pages for documentation
Versioning Flow
- use Changesets for release intent and package versioning
- let the
release.ymlworkflow create or update the release pull request - merge the release pull request into
main - let the publish workflows release packages, container artifacts, and charts from the merged state
Publish Workflows
release.yml: creates or updates the Changesets release pull requestpublish-release.yml: publishes packages after the release pull request mergesdocker-publish.yml: publishesdevplat-openclaw-runtimeto GHCRhelm-publish.yml: packages and pushes the Helm chart to GHCR OCIdocs-deploy.yml: builds and deploys the VitePress site through the Pages artifact flow
Required Validation
Before a release-facing change is considered ready:
npm run check:reponpm run test:coveragenpm run buildnpm run docs:build
Release pull requests should also describe package, Docker, Helm, and docs impact explicitly in the repository pull request template.
Rollback
- revert the release pull request or follow-up patch on
main - publish a correcting package release if npm versions already moved
- publish a replacement Docker image or Helm chart if runtime artifacts already moved
- redeploy docs from the corrected
mainstate through the Pages workflow
Keep rollback notes concrete in the pull request so operators know which surfaces moved and which did not.