From c716f0eac6e8a88a8d8cf894472cd8f42b3bb31c Mon Sep 17 00:00:00 2001 From: jackie Date: Mon, 9 Mar 2026 02:32:23 -0700 Subject: [PATCH 1/3] Prepare 0.2.1 release notes --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 563c1aa..08eb63d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,12 @@ The format is based on Keep a Changelog, and this project aims to follow Semanti - Nothing unreleased yet. +## [0.2.1] - 2026-03-09 + +- Switched npmjs releases to npm trusted publishing through GitHub Actions OIDC. +- Added a scoped GitHub Packages mirror publish so the repo can show `@jodonnell24/screenstage` in its Packages area. +- Normalized the published CLI `bin` path metadata to match npm's preferred format. + ## [0.2.0] - 2026-03-09 - Added a machine-readable CLI contract for `run` and `record`, including JSON event streams, stable exit codes, manifest typing, and output/headless overrides. From 8c4d5b9e2bc35eab845c096534fb5aa0f7504b24 Mon Sep 17 00:00:00 2001 From: jackie Date: Mon, 9 Mar 2026 02:32:23 -0700 Subject: [PATCH 2/3] 0.2.1 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 934cc0d..887117e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "motion-creator", - "version": "0.2.0", + "version": "0.2.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "motion-creator", - "version": "0.2.0", + "version": "0.2.1", "license": "MIT", "dependencies": { "playwright": "^1.54.2" diff --git a/package.json b/package.json index 2a6961a..fa9d196 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "screenstage", - "version": "0.2.0", + "version": "0.2.1", "description": "TypeScript CLI for cursor-following product demo videos with Playwright and FFmpeg.", "repository": { "type": "git", From 6ee74433e55eb1758a69b37629f64aac02b68820 Mon Sep 17 00:00:00 2001 From: jackie Date: Mon, 9 Mar 2026 02:53:48 -0700 Subject: [PATCH 3/3] Fix npm trusted publishing workflow --- .github/workflows/release.yml | 15 +++++++++++++-- RELEASING.md | 8 ++++++++ package.json | 2 +- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index da1a12f..5c6a9b0 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,7 +20,7 @@ jobs: - name: Set up Node.js uses: actions/setup-node@v4 with: - node-version: 22 + node-version: 22.14.0 cache: npm registry-url: https://registry.npmjs.org @@ -36,13 +36,24 @@ jobs: - name: Verify package contents run: npm run pack:check + - name: Show bundled npm version + run: npm -v + + - name: Upgrade npm for trusted publishing + run: npm install -g npm@latest + + - name: Show trusted publishing toolchain versions + run: | + node -v + npm -v + - name: Publish to npm run: npm publish --access public - name: Set up Node.js for GitHub Packages uses: actions/setup-node@v4 with: - node-version: 22 + node-version: 22.14.0 registry-url: https://npm.pkg.github.com scope: "@${{ github.repository_owner }}" diff --git a/RELEASING.md b/RELEASING.md index ce27787..57bd4f7 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -7,6 +7,7 @@ This repo is set up to be published as the `screenstage` npm package on npmjs.or 1. Confirm the npm package name is still available. 2. Configure npm trusted publishing for this repo and its `release.yml` workflow. 3. Make sure the public repo metadata in `package.json` matches the live GitHub repo. +4. Keep the release workflow on `Node >= 22.14.0` and `npm >= 11.5.1`, which npm currently requires for trusted publishing. ## Local Release Checklist @@ -59,6 +60,13 @@ It will: 4. publish to npmjs.org through npm trusted publishing 5. publish a scoped mirror to GitHub Packages as `@/screenstage` +The npm trusted publisher must match exactly: + +- GitHub user or org: `jodonnell24` +- repository: `screenstage` +- workflow filename: `release.yml` +- environment: blank + If you prefer release notes first, create the GitHub release from the pushed tag after CI passes. ## GitHub Packages Mirror diff --git a/package.json b/package.json index fa9d196..9fcade8 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "TypeScript CLI for cursor-following product demo videos with Playwright and FFmpeg.", "repository": { "type": "git", - "url": "git+https://github.com/jodonnell24/screenstage.git" + "url": "https://github.com/jodonnell24/screenstage.git" }, "homepage": "https://github.com/jodonnell24/screenstage#readme", "bugs": {