Repository navigation
ci: publish Cloudflare Worker bundle on tagged release - #11
Merged
Merged
Conversation
- Add .github/workflows/release.yml: on v* tag push, run tests then
build the Worker bundle with wrangler deploy --dry-run --outfile and
upload worker.js + wrangler.toml as GitHub release artefacts
- Add wrangler@^4 as a devDependency (pinned to ^4.86.0)
- Update deploy/cloudflare/wrangler.toml:
- KV namespace IDs now use __SESSIONS_KV_NAMESPACE_ID__ and
__SESSIONS_KV_PREVIEW_NAMESPACE_ID__ placeholders (sed-friendly
for holo-platform-cli substitution)
- Add nodejs_compat compatibility flag (resolves node:crypto warnings
from src/utils.ts, email-code, delegated-verification, lair-signer)
- Add deploy-from-artefact instructions to comments
Closes #10
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
evangineer
force-pushed
the
ci/release-worker-bundle
branch
from
April 29, 2026 10:57
1432750 to
a3d8d23
Compare
zippy
approved these changes
Apr 29, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a CI workflow that builds a self-contained Cloudflare Worker bundle on every tagged
release and attaches it as a GitHub release artefact. This removes the requirement for
holo-platform-clito have the joining-service source repo checked out locally — it caninstead download a pinned
worker.js+wrangler.tomldirectly from a release tag anddeploy with
wrangler deploy --no-bundle.Changes
.github/workflows/release.yml— new tag-triggered workflow: runs the test suite,then builds the Worker bundle with
wrangler deploy --dry-run --outfileand uploadsdist/worker.jsanddeploy/cloudflare/wrangler.tomlto the GitHub releasedeploy/cloudflare/wrangler.toml— two updates:REPLACE_WITH_KV_NAMESPACE_IDto__SESSIONS_KV_NAMESPACE_ID__/__SESSIONS_KV_PREVIEW_NAMESPACE_ID__(sed-friendlyfor automated substitution by
holo-platform-cli)compatibility_flags = ["nodejs_compat"]— required because several sourcefiles (
utils.ts,email-code.ts,delegated-verification.ts,lair-signer.ts)use
node:crypto; without this flag the bundled worker raises runtime errors onCloudflare Workers
package.json— addwrangler@^4.86.0as a devDependency so the workflow usesthe repo-pinned version
package-lock.json— update@holo-host/lairfromfile:local path tohttps://registry.npmjs.org/@holo-host/lair/-/lair-0.1.2.tgz(0.1.1 had a packagingbug where
dist/mnemonic.jswas missing from the tarball; 0.1.2 is the correctpublished release)
How the platform CLI consumes this
Test plan
npm test— 272/273 pass (1 pre-existing Shoelace UI failure unrelated to this change)npm run typecheck— passeswrangler deploy --dry-run --config deploy/cloudflare/wrangler.toml --outfile dist/worker.js— builds cleanly, no warnings, 387 KiB gzippackage-lock.jsonresolves@holo-host/lairfrom npm registry at 0.1.2 (notfile:path)Closes #10