Skip to content

[deep-report] Add node version guard to copilot-setup-steps to prevent silent agent failures on self-hosted runners #30645

@github-actions

Description

@github-actions

Problem Statement

Hippo Memory Insights (2026-05-06, #30572) flags a recurring incident: node: command not found failures on GPU/self-hosted runners. Node.js tooling is assumed available in the standard runner path, but is sometimes absent on non-standard runner configurations — causing agent jobs to fail silently with an unhelpful error before any work is done.

Root Cause

copilot-setup-steps.yml (and related setup files) assume node is on PATH without explicit validation. When it's missing, the first Node.js-dependent step fails with an opaque error.

Expected Impact

  • Eliminates silent startup failures on self-hosted runners missing Node.js
  • Surfaces a clear, actionable error message immediately rather than after minutes of setup steps
  • Reduces wasted runner minutes on doomed jobs

Suggested Fix

Add an explicit Node.js version check near the start of copilot-setup-steps.yml:

- name: Verify node availability
  run: |
    if ! command -v node &>/dev/null; then
      echo "::error::node not found on PATH — install Node.js before running this workflow"
      exit 1
    fi
    echo "node $(node --version) found at $(which node)"

Estimated Effort

Fast (< 15 minutes)

Data Source

Hippo Memory Insights — 2026-05-06 (#30572)

Generated by DeepReport - Intelligence Gathering Agent

Generated by DeepReport - Intelligence Gathering Agent · ● 330.7K ·

  • expires on May 8, 2026, 3:35 PM UTC

Metadata

Metadata

Assignees

No one assigned

    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