Skip to content

πŸ‘· add npm + jsr publish workflows#2

Merged
cowboyd merged 2 commits intomainfrom
publish
Apr 28, 2026
Merged

πŸ‘· add npm + jsr publish workflows#2
cowboyd merged 2 commits intomainfrom
publish

Conversation

@cowboyd
Copy link
Copy Markdown
Member

@cowboyd cowboyd commented Apr 27, 2026

Motivation

The repository was moved to thefrontside/freedom and needs CI/CD on par with thefrontside/clayterm: automatic verification on PRs (including dry runs of both publish pipelines) and tag-driven publishing of @frontside/freedom to npm and jsr.

Approach

Mirror clayterm's workflow set, adapted for a single-package, no-wasm repo:

  • verify.yml β€” on push/PR to main. A test job runs deno fmt --check, deno lint, and deno task test. Dependent jsr and npm jobs then dry-run the publish pipeline against a synthetic 0.0.0-verify.0 version, so any packaging issue surfaces on the PR rather than at tag time.
  • publish.yml β€” on v* tags. Dry-runs both registries, builds, then publishes to npm (via dnt) and jsr (after stamping the tag version into deno.json).
  • preview.yml β€” per-PR previews via pkg-pr-new.

Two commits:

  1. CI workflows + tasks/build-{npm,jsr}.ts + deno.json task wiring + .gitignore.
  2. deno fmt reflow + an explicit Context<NodeImpl> annotation on NodeContext (required by jsr's no-slow-types lint), so verify is green on landing.

Possible Drawbacks or Risks

Publishing requires NPM_TOKEN and JSR_TOKEN repo secrets (or OIDC trust). Not yet configured.

TODOs and Open Questions

  • set up npm provenance via OIDC.
  • Add JSR_TOKEN repo secret

cowboyd added 2 commits April 27, 2026 14:05
Mirrors the clayterm-crank CI setup: verify on PR/main, publish to
npm and jsr on v* tags, and pkg-pr-new previews on PRs.
Annotate NodeContext with Context<NodeImpl> so the public API has
explicit types, satisfying jsr's no-slow-types lint.
@cowboyd cowboyd merged commit 7df2568 into main Apr 28, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant