Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Windows: bundled Node v24.16.0 can abort at exit (nodejs/node#56645); please bundle Node >= 24.20.0

Open Beginner friendly
#2,617 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@Ancienttwo is already working on this.

Since Oct 16, 2026.

  • #2619 by @Ancienttwo — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
67/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
github-actions, javascript, node.js

Research direction

Start by reading scripts/build-bundle.sh and checking its default NODE_VERSION; verify which bundled runtime versions the release process uses, especially for win32 bundles. Update the bundle to Node 24.21.0 or later, then confirm the build reports the expected version. Done when the next release bundles the updated runtime for Windows.

Written by the indexing model from the issue text.

Description

Summary

The 1.6.2 bundles (and scripts/build-bundle.sh's default NODE_VERSION) ship Node v24.16.0. On Windows that release carries nodejs/node#56645: at process exit, a V8 platform worker can post a delayed task after the scheduler's uv_async handle has started closing, and libuv aborts with

Assertion failed: !(handle->flags & UV_HANDLE_CLOSING), file src\win\async.c, line 94

and status 0xC0000409, after the command's work has already completed. Node fixed it in 24.20.0 (nodejs/node#61999, listed in CHANGELOG_V24.md). Node 24.21.0 also contains the 8.3-short-path file-watcher fix (nodejs/node#65118), which matters if the watcher runs under a runner temp dir.

What we saw

In hosted Windows CI, codegraph sync <root> --quiet (1.6.1, launched through npm-shim.js, bundled node.exe) printed exactly that assertion and exited with status 9. That is 0xC0000409 cut to its low byte by the caller. The work had finished; the crash happened during teardown. Our tooling correctly treats a nonzero exit as failure, so this fails a run that would otherwise be correct.

Measured

  • win32-x64 1.6.2 bundled node.exe --version → v24.16.0 (hosted windows-latest); darwin-arm64 1.6.2 → v24.16.0.
  • A 20-minute, two-runner Windows stress of init / sync --quiet / status -j (bundled v24.16.0 vs the same entry and --liftoff-only flags on Node v24.21.0, 4 workers each) did not reproduce it: 0 nonzero exits in about 2,840 children per runtime. The abort is rare and load-dependent. Other projects report about 1 in 10 CI runs, and moving to Node ≥ 24.20 cleared it for them (for example pawaca/dsh-edge#277).

The 1.6.2 notes on helper-thread start-up and clean-up (the 3221225477 access violation) address a different crash. This one is inside Node's own platform shutdown, so it needs the runtime bump.

Request

Bundle Node ≥ 24.20.0 (24.21.0 preferred) in the next release, at least for the win32 bundles.

Dominant language
C
Stars
73.2k
Forks
4.7k
Avg merge
13h 27m
Merged PRs (30d)
518

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from colbymchenry/codegraph

All issues in colbymchenry/codegraph

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.