Skip to content

[aw-failures] Node.js v24.15.0 binary not found in agent container (GH_AW_NODE_BIN path broken) #26876

@github-actions

Description

@github-actions

Parent investigation: #26874

Problem

Two workflows failed on 2026-04-17 with identical errors inside the firewall agent container:

/bin/bash: line 1: /home/runner/work/_tool/node/24.15.0/x64/bin/node: No such file or directory

The container starts successfully (all health checks pass), but the copilot driver script fails to launch because GH_AW_NODE_BIN resolves to a toolcache path that doesn't exist inside the container.

Affected Workflows and Runs

Workflow Run ID Engine Time (UTC)
Daily Issues Report Generator §24560753963 copilot 10:34Z
Daily News §24557049556 copilot 09:03Z

Root Cause Analysis

The entrypoint command that fails:

\$\{GH_AW_NODE_BIN:-node} \$\{RUNNER_TEMP}/gh-aw/actions/copilot_driver.cjs /usr/local/bin/copilot ...

GH_AW_NODE_BIN is set (overriding the :-node fallback) to /home/runner/work/_tool/node/24.15.0/x64/bin/node — a path inside the runner's toolcache. This path either:

  1. Was not mounted into the container, or
  2. Node.js 24.15.0 was not provisioned in the toolcache on these runner instances

The setup-node step (which installs Node.js via toolcache) runs on the host runner, but GH_AW_NODE_BIN is passed into the agent container via --env-all. If the toolcache path doesn't exist inside the container's filesystem view, the hardcoded path fails.

This may be a regression introduced when the AWF was updated from v0.25.20 → v0.25.23 (see #26822), which changed how the agent container mounts are configured.

Proposed Remediation

  1. Check whether the runner toolcache path is mounted into the agent container by awf. If /home/runner/work/_tool is not mounted, the hardcoded path will always fail.
  2. Audit GH_AW_NODE_BIN resolution: prefer dynamic resolution (which node, $(command -v node)) over hardcoded toolcache paths, with the hardcoded path as a fallback rather than the primary value.
  3. Add a pre-flight step that validates GH_AW_NODE_BIN exists before launching the container, falling back to system node.

Success Criteria

Both Daily Issues Report Generator and Daily News run without No such file or directory errors on their next scheduled executions.

Generated by [aw] Failure Investigator (6h) · ● 1.2M ·

  • expires on Apr 24, 2026, 1:32 PM UTC

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions