From 4ec06add097033d7aa6aa531e08c8e09c693b599 Mon Sep 17 00:00:00 2001 From: "m.osumi" Date: Thu, 1 Jan 2026 00:10:08 +0900 Subject: [PATCH 1/7] fix: add npm rebuild step to resolve rollup native binary issue in CI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes the npm bug where rollup's native binaries are not correctly installed when using GitHub Actions cache. Running npm rebuild after npm ci ensures optional dependencies are properly rebuilt. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- .github/workflows/release.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d5e027b..2af871c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -32,6 +32,9 @@ jobs: - name: Install dependencies run: npm ci + - name: Rebuild native dependencies + run: npm rebuild + - name: Build package run: npm run build From cbb229872029d429175c95382ffc526359d09177 Mon Sep 17 00:00:00 2001 From: "m.osumi" Date: Thu, 1 Jan 2026 00:11:50 +0900 Subject: [PATCH 2/7] ci: add test release workflow for develop branch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add a separate workflow to test the release process on the develop branch without actually publishing. This allows us to verify the npm rebuild fix and the full release pipeline before merging to main. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- .github/workflows/test-release-develop.yml | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 .github/workflows/test-release-develop.yml diff --git a/.github/workflows/test-release-develop.yml b/.github/workflows/test-release-develop.yml new file mode 100644 index 0000000..8c2012e --- /dev/null +++ b/.github/workflows/test-release-develop.yml @@ -0,0 +1,62 @@ +name: Test Release (Develop) + +on: + workflow_dispatch: + push: + branches: + - develop + +permissions: + contents: write + issues: write + pull-requests: write + id-token: write + +jobs: + test-release: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + persist-credentials: false + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: 22.x + cache: 'npm' + + - name: Install dependencies + run: npm ci + + - name: Rebuild native dependencies + run: npm rebuild + + - name: Build package + run: npm run build + + - name: Run tests + run: npm test + + - name: Run linter + run: npm run lint + + - name: Run type check + run: npm run type-check + + - name: Verify build artifacts + run: | + if [ ! -d "dist" ]; then + echo "Build failed: dist directory not found" + exit 1 + fi + echo "Build artifacts verified successfully" + + - name: Test semantic-release (dry-run) + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + run: npx semantic-release --dry-run From 61cccca1e8dd5924b85538348489b214b6f0c647 Mon Sep 17 00:00:00 2001 From: "m.osumi" Date: Thu, 1 Jan 2026 00:14:48 +0900 Subject: [PATCH 3/7] Revert "ci: add test release workflow for develop branch" This reverts commit cbb229872029d429175c95382ffc526359d09177. --- .github/workflows/test-release-develop.yml | 62 ---------------------- 1 file changed, 62 deletions(-) delete mode 100644 .github/workflows/test-release-develop.yml diff --git a/.github/workflows/test-release-develop.yml b/.github/workflows/test-release-develop.yml deleted file mode 100644 index 8c2012e..0000000 --- a/.github/workflows/test-release-develop.yml +++ /dev/null @@ -1,62 +0,0 @@ -name: Test Release (Develop) - -on: - workflow_dispatch: - push: - branches: - - develop - -permissions: - contents: write - issues: write - pull-requests: write - id-token: write - -jobs: - test-release: - runs-on: ubuntu-latest - - steps: - - name: Checkout code - uses: actions/checkout@v4 - with: - fetch-depth: 0 - persist-credentials: false - - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: 22.x - cache: 'npm' - - - name: Install dependencies - run: npm ci - - - name: Rebuild native dependencies - run: npm rebuild - - - name: Build package - run: npm run build - - - name: Run tests - run: npm test - - - name: Run linter - run: npm run lint - - - name: Run type check - run: npm run type-check - - - name: Verify build artifacts - run: | - if [ ! -d "dist" ]; then - echo "Build failed: dist directory not found" - exit 1 - fi - echo "Build artifacts verified successfully" - - - name: Test semantic-release (dry-run) - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - run: npx semantic-release --dry-run From 0cd15bd142aec85303469c8d917955711f4121c6 Mon Sep 17 00:00:00 2001 From: "m.osumi" Date: Thu, 1 Jan 2026 00:17:40 +0900 Subject: [PATCH 4/7] fix: clear npm cache to resolve rollup native binary issue in CI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- .github/workflows/release.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2af871c..6aee963 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -27,7 +27,9 @@ jobs: uses: actions/setup-node@v4 with: node-version: 22.x - cache: 'npm' + + - name: Clear npm cache + run: npm cache clean --force - name: Install dependencies run: npm ci From 2816913af1d10e445b2942ecf1044f39e40f25ff Mon Sep 17 00:00:00 2001 From: "m.osumi" Date: Thu, 1 Jan 2026 00:22:33 +0900 Subject: [PATCH 5/7] fix: run npm install after npm ci to fix rollup native binary issue MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- .github/workflows/release.yml | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6aee963..93c1917 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -28,14 +28,10 @@ jobs: with: node-version: 22.x - - name: Clear npm cache - run: npm cache clean --force - - name: Install dependencies - run: npm ci - - - name: Rebuild native dependencies - run: npm rebuild + run: | + npm ci + npm install - name: Build package run: npm run build From 01061e519ab3f80d884810738e4396d3c47d2f53 Mon Sep 17 00:00:00 2001 From: "m.osumi" Date: Thu, 1 Jan 2026 00:29:28 +0900 Subject: [PATCH 6/7] fix: add rollup as explicit devDependency to resolve CI build issue MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- .github/workflows/release.yml | 4 +--- package-lock.json | 3 ++- package.json | 1 + 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 93c1917..c13f017 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -29,9 +29,7 @@ jobs: node-version: 22.x - name: Install dependencies - run: | - npm ci - npm install + run: npm ci - name: Build package run: npm run build diff --git a/package-lock.json b/package-lock.json index 7088998..07aa429 100644 --- a/package-lock.json +++ b/package-lock.json @@ -33,6 +33,7 @@ "jest": "^30.2.0", "lint-staged": "^16.2.7", "prettier": "^3.4.2", + "rollup": "^4.54.0", "semantic-release": "^23.0.0", "ts-jest": "^29.4.5", "tsup": "^8.0.0", @@ -41,7 +42,7 @@ "typescript-eslint": "^8.50.1" }, "engines": { - "node": ">=16.0.0" + "node": ">=22.0.0" } }, "node_modules/@babel/code-frame": { diff --git a/package.json b/package.json index f33f0bb..08ff4f7 100644 --- a/package.json +++ b/package.json @@ -76,6 +76,7 @@ "jest": "^30.2.0", "lint-staged": "^16.2.7", "prettier": "^3.4.2", + "rollup": "^4.54.0", "semantic-release": "^23.0.0", "ts-jest": "^29.4.5", "tsup": "^8.0.0", From 389e7afaa7792b0eadf75fa9bef8e1fe0f708360 Mon Sep 17 00:00:00 2001 From: "m.osumi" Date: Thu, 1 Jan 2026 00:33:32 +0900 Subject: [PATCH 7/7] fix: reinstall rollup to ensure native binaries are installed in CI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- .github/workflows/release.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c13f017..955b8b3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -31,6 +31,11 @@ jobs: - name: Install dependencies run: npm ci + - name: Install rollup with native binaries + run: | + rm -rf node_modules/rollup + npm install rollup --no-save + - name: Build package run: npm run build