Skip to content

πŸ› (clear-signing-tester) [NO-ISSUE]: Install userland undici to avoid Node 24 crash#1603

Merged
aussedatlo merged 2 commits into
developfrom
fix/no-issue-solana-cs-tester-undici-crash
Jul 3, 2026
Merged

πŸ› (clear-signing-tester) [NO-ISSUE]: Install userland undici to avoid Node 24 crash#1603
aussedatlo merged 2 commits into
developfrom
fix/no-issue-solana-cs-tester-undici-crash

Conversation

@aussedatlo

Copy link
Copy Markdown
Contributor

πŸ“ Description

Install userland undici to avoid a Node 24 crash in the clear-signing-tester.

Node 24 bundles undici 7.x, whose HTTP/1 parser throws an uncatchable AssertionError on socket end under response-body backpressure (nodejs/undici#5360), crashing the cs-tester mid-run. This installs the patched userland undici (8.x, fix from nodejs/undici#5389) over the global fetch stack at the CLI entrypoints, so every HTTP call (Solana RPC, context module, metadata service) routes through the fixed client.

❓ Context

  • JIRA or GitHub link: [NO-ISSUE]
  • Feature: Bugfix β€” the Solana nightly cs-tester was crashing with AssertionError [ERR_ASSERTION]: false == true at Parser.finish after the toolchain bump from Node 20 β†’ 24 (πŸ”§ (repo) [NO-ISSUE]: Update toolchainΒ #1582).

βœ… Checklist

  • Covered by automatic tests β€” behavior verified by re-running the Solana nightly workflow; the crash no longer occurs. Not unit-testable (depends on Node's bundled HTTP client + live sockets).
  • Changeset is provided β€” Not needed: changes only affect the apps/clear-signing-tester app (not a published package).
  • Documentation is up-to-date
  • Impact of the changes:
    • Adds undici@^8.5.0 to apps/clear-signing-tester.
    • Adds src/setup/installUndici.ts and imports it first in both the Solana and Ethereum CLI entrypoints to replace the global fetch stack with the patched undici.

Made with Cursor

@vercel

vercel Bot commented Jul 3, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
device-sdk-ts-sample Ready Ready Preview, Comment Jul 3, 2026 12:07pm
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
doc-device-management-kit Ignored Ignored Jul 3, 2026 12:07pm

Request Review

@aussedatlo
aussedatlo marked this pull request as ready for review July 3, 2026 10:47
@aussedatlo
aussedatlo requested a review from a team as a code owner July 3, 2026 10:47
Copilot AI review requested due to automatic review settings July 3, 2026 10:47
@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Danger Check Results

Messages

⚠️

No changeset file found. Please make sure this is intended or add a changeset file.

βœ…

Danger: All checks passed successfully! πŸŽ‰

Generated by 🚫 dangerJS against 6337b75

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 mitigates a Node 24 crash affecting the apps/clear-signing-tester CLI by forcing the process to use a patched userland undici implementation for the global fetch stack.

Changes:

  • Add undici@^8.5.0 to apps/clear-signing-tester dependencies and lock it in pnpm-lock.yaml.
  • Introduce src/setup/installUndici.ts to install userland undici globally (fetch/Headers/Request/Response) at startup.
  • Import this setup module first in both Solana and Ethereum CLI entrypoints to ensure all HTTP calls use the patched client.

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
pnpm-lock.yaml Locks the new undici dependency (and associated lockfile reshaping) needed for the runtime patch.
apps/clear-signing-tester/package.json Adds undici dependency for the clear-signing tester app.
apps/clear-signing-tester/src/setup/installUndici.ts New startup-side-effect module that installs userland undici globally.
apps/clear-signing-tester/src/cli/SolanaTransactionTesterCli.ts Ensures undici installation runs before other imports in Solana CLI.
apps/clear-signing-tester/src/cli/EthereumTransactionTesterCli.ts Ensures undici installation runs before other imports in Ethereum CLI.
Files not reviewed (1)
  • pnpm-lock.yaml: Generated file

πŸ’‘ Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 50 to +54
"ethers": "catalog:",
"inversify": "catalog:",
"rxjs": "catalog:",
"semver": "catalog:"
"semver": "catalog:",
"undici": "^8.5.0"
@sonarqubecloud

sonarqubecloud Bot commented Jul 3, 2026

Copy link
Copy Markdown

@aussedatlo
aussedatlo added this pull request to the merge queue Jul 3, 2026
Merged via the queue into develop with commit 372502b Jul 3, 2026
42 checks passed
@aussedatlo
aussedatlo deleted the fix/no-issue-solana-cs-tester-undici-crash branch July 3, 2026 13:59
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.

3 participants