/home/runner/work/_temp/gh-aw/actions/parse_mcp_gateway_log.cjs:236
await coreObj.summary.write();
^^^^^
SyntaxError: await is only valid in async functions and the top level bodies of modules
at wrapSafe (node:internal/modules/cjs/loader:1787:18)
at Module._compile ...
at Object.<anonymous> (/home/runner/work/_temp/gh-aw/actions/handle_agent_failure.cjs:18:61)
Fix PR #43170 now — it hard-reds every agentic workflow at module load.
Recommendation: Revert or correct the
awaitadded toparse_mcp_gateway_log.cjsin PR #43170; it sits inside a non-asyncfunction and throwsSyntaxErrorbefore any workflow logic runs. This is the single dominant P0 across the last 6h.Executive summary
PR #43170 (
feat(eslint): add require-await-core-summary-write rule,copilot-swe-agent, OPEN/blocked, not merged) addedawait coreObj.summary.write();atactions/setup/js/parse_mcp_gateway_log.cjs:236— a call site inside the non-async helperwriteStepSummaryWithTokenUsage(coreObj)(declared at line 204). Top-level-styleawaitin a non-async function is a hardSyntaxErroratrequire()time, so the module fails to load. Every workflow's "Parse MCP Gateway logs for step summary" step and theconclusionjob's "Handle agent failure" steprequirethis module, so both crash — across bothclaudeandcopilotengines. Main branch is unaffected (0 compiled lock files carry the badawait); the blast radius is confined to PR #43170's merge ref.Failure clusters
SyntaxError: await is only valid in async functions@parse_mcp_gateway_log.cjs:236(non-asyncwriteStepSummaryWithTokenUsage)EACCES: permission denied, mkdir '/tmp/gh-aw/sandbox/firewall/logs'Evidence — Cluster A crash trace (representative run 28661680853)
agentjob (Parse MCP Gateway logs) and theconclusionjob (Handle agent failure, which requires the module at line 18).mainsource:writeStepSummaryWithTokenUsage(line 204) is not async; line 236 iscoreObj.summary.write();withoutawait.async function main()is a separate function (line 814). PR feat(eslint): add require-await-core-summary-write rule #43170 added theawaitto the non-async helper.asyncfunction (applying it outside would produce a syntax error)." The manual "existing violations fixed" edit bypassed that guard and did exactly that.Existing-issue correlation
EACCES mkdir /tmp/gh-aw/sandbox/firewall/logs, agent never invoked (rootless left [Content truncated due to length] #42398 (Smoke CI hard-red ... EACCES mkdir /tmp/gh-aw/sandbox/firewall/logs) — still reproducing today (§28661781846), left open, not a new gap.agentic-workflowsissue covers Cluster A. Reviewed BYOK/model-policy issues ([aw-failures] [aw-fix] Copilot SDK BYOK: strip OpenAI-onlystream_optionsfortype=anthropicproviders (HTTP 400 kills agent runs) #43032, [aw-failures] Copilot BYOK 100% red — SDK driver sends OpenAIstream_optionstotype=anthropicprovider, upstream 400 kills [Content truncated due to length] #43031, [aw-failures] Smoke Copilot Sub Agents 100% red — Copilot SDK returns "No model available (policy enablement)" for gpt-5.3-codex [Content truncated due to length] #42824, [aw-failures] Daily BYOK Ollama Test 100% red for 8+ days — offline+BYOK api-proxy returns 503 on /v1/models, Copilot CLI gets H [Content truncated due to length] #41827, [aw-failures] Daily Cache Strategy Analyzer ~50% red — Codex pinned to alpha snapshot gpt-5-codex-alpha-2025-11-07 that 404s on [Content truncated due to length] #41787) and MCP/firewall issues ([aw-failures] GitHub MCP Structural Analysis false-red — github MCP "failed to launch" after run completes; firewall denies awmg [Content truncated due to length] #41711, [aw-failures] GitHub Remote MCP Auth Test 100% red — gateway config emits invalid JSON (\(redacted)bad escape), gateway exits [Content truncated due to length] #41862, [aw-failures] Claude false-red — log_parser_bootstrap fails completed runs on empty logEntries (Avenger, Daily Rendering Scripts [Content truncated due to length] #41885) — none match theSyntaxErrorsignature.Fix roadmap
writeStepSummaryWithTokenUsageasyncandawaitit at its single call site, or drop the erroneousawait. Additionally harden the new ESLint autofix so it never insertsawaitoutside anasyncscope, and add a build gate thatrequire()s each generated.cjsto catch module-loadSyntaxErrors in CI.EACCES mkdir /tmp/gh-aw/sandbox/firewall/logs, agent never invoked (rootless left [Content truncated due to length] #42398.Sub-issues created
Unclustered failed run IDs (payload lacked detailed logs)
28661680861,28661669474,28658894614,28655406842,28655368469,28652123698,28649777787,28649473366— timing overlaps PR #43170's run batch; likely same Cluster A signature but not individually verified in this pass.References: