Skip to content

Report exit code when a node action fails without reporting an error#4555

Open
marler8997 wants to merge 1 commit into
actions:mainfrom
marler8997:emptyErrorOutput
Open

Report exit code when a node action fails without reporting an error#4555
marler8997 wants to merge 1 commit into
actions:mainfrom
marler8997:emptyErrorOutput

Conversation

@marler8997

Copy link
Copy Markdown

Report the exit code when a node or docker action exits non-zero but recorded no error of its own, instead of failing the step with an empty log. A crash, an OOM kill, or an external termination can end the process before it reports anything. Actions that already report their failure are left alone. ScriptHandler already does this for run: steps.

This is the symptom in actions/cache#1754, where Windows runners die inside actions/cache with no output at all. The likely cause is the V8 Maglev crash worked around in #4447 (nodejs/node#62260), which kills node before any JavaScript runs. Reporting the exit code surfaces it as 0xC0000409.

GetErrorCount() is compared before and after the run because embedded steps write to a collector shared with the enclosing context.

Report the exit code when a node or docker action exits non-zero but recorded no
error of its own, instead of failing the step with an empty log. A crash, an OOM
kill, or an external termination can end the process before it reports anything.
Actions that already report their failure are left alone. ScriptHandler already
does this for `run:` steps.

This is the symptom in actions/cache#1754, where Windows runners die inside
actions/cache with no output at all. The likely cause is the V8 Maglev crash
worked around in actions#4447 (nodejs/node#62260), which kills node before any
JavaScript runs. Reporting the exit code surfaces it as 0xC0000409.

GetErrorCount() is compared before and after the run because embedded steps write
to a collector shared with the enclosing context.
@marler8997
marler8997 requested a review from a team as a code owner July 14, 2026 17:01
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.

1 participant