Skip to content

Fix ci-ets: pin @types/node@18 for the ArkAnalyzer build#362

Merged
CaelmBleidd merged 2 commits into
neofrom
fix/ci-arkanalyzer-types-node
Jul 3, 2026
Merged

Fix ci-ets: pin @types/node@18 for the ArkAnalyzer build#362
CaelmBleidd merged 2 commits into
neofrom
fix/ci-arkanalyzer-types-node

Conversation

@CaelmBleidd

Copy link
Copy Markdown
Member

ArkAnalyzer's npm install pulls the floating latest @types/node, whose new d.ts files (e.g. ffi.d.ts) use syntax that ArkAnalyzer's bundled TypeScript cannot parse, so npm run build fails with TS1139/TS1005 errors and the whole ci-ets job dies before any Gradle test runs. Pin a compatible @types/node major right after npm install.

ArkAnalyzer's npm install pulls the floating latest @types/node, whose
new d.ts files (e.g. ffi.d.ts) use syntax that ArkAnalyzer's bundled
TypeScript cannot parse, so `npm run build` fails with TS1139/TS1005
errors and the whole ci-ets job dies before any Gradle test runs.
Pin a compatible @types/node major right after npm install.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR stabilizes the ci-ets GitHub Actions job by preventing ArkAnalyzer’s build from breaking when npm install pulls an incompatible, floating latest @types/node that its bundled TypeScript cannot parse.

Changes:

  • After ArkAnalyzer’s initial npm install, explicitly installs @types/node@18 with --no-save to ensure a compatible major is used.
  • Adds inline comments documenting the failure mode (TS parse errors like TS1139/TS1005) and rationale for the pin.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Test Results

  218 files  ±0    218 suites  ±0   15m 48s ⏱️ -6s
  744 tests ±0    732 ✅ ±0  12 💤 ±0  0 ❌ ±0 
2 014 runs  ±0  1 964 ✅ ±0  50 💤 ±0  0 ❌ ±0 

Results for commit a4f82ad. ± Comparison against base commit dfb9993.

♻️ This comment has been updated with latest results.

…nstall

A follow-up `npm install --no-save @types/node@18` re-resolves the npm
tree and prunes ohos-typescript, which ArkAnalyzer's postinstall script
installs with --no-save (it is absent from package.json), so the build
fails with TS2307. Pin @types/node via `npm pkg set` BEFORE the single
`npm install` instead: the pin then survives resolution and postinstall
keeps ohos-typescript in place. Verified locally: `npm run build`
produces out/src/save/serializeArkIR.js.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@CaelmBleidd CaelmBleidd merged commit 15728ba into neo Jul 3, 2026
7 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.

2 participants