Repository navigation
[aw] Monthly PR Clusters experienced an engine outage #590
Description
Activity
github-actions commented
on Oct 9, 2026 on Oct 9, 2026 – with GitHub ActionsContributorAuthorMore actionsAgent job 37908857183 failed.
Warning
Repeated Permission Denied: The agent was denied permission to run 2 command(s) and stopped retrying.
Denied Commands:
shell(cat /tmp/gh-aw/agent/merged-prs.json | jq '.prs | length' && cat /tmp/gh-aw/agent/merged-prs.json | jq '.window')shell(python3 << 'EOF' | shell(rm /tmp/gh-aw/agent/pr-cluster-label-strategy.ts) | shell(cat > /tmp/gh-aw/agent/cluster-rig.ts << 'EOF' | shell(cd /tmp/gh-aw/agent && ls -la *.ts 2>/dev/null | head -20)
How to fix this
The agent ran in non-interactive mode (
--no-ask-user) and could not request permission at runtime.To resolve repeated permission denied errors, update the workflow prompt to avoid these commands or use approved alternatives. Use the following prompt with any coding agent:
The agentic workflow monthly-pr-clusters encountered repeated permission denied errors for these commands: `shell(cat /tmp/gh-aw/agent/merged-prs.json | jq '.prs | length' && cat /tmp/gh-aw/agent/merged-prs.json | jq '.window')`, `shell(python3 << 'EOF' | shell(rm /tmp/gh-aw/agent/pr-cluster-label-strategy.ts) | shell(cat > /tmp/gh-aw/agent/cluster-rig.ts << 'EOF' | shell(cd /tmp/gh-aw/agent && ls -la *.ts 2>/dev/null | head -20)` Please update the workflow prompt so the agent: 1. Uses built-in tools (GitHub API, file read/write) instead of the denied shell commands 2. Or achieves the same goal through alternative approaches that do not require shell permissionWarning
Task Could Not Be Completed: The agent reported that the task could not be performed due to an infrastructure or tool failure.
Error details:
engine_driver_failure Agent finished without emitting a terminal safe output; task completion could not be confirmed. skill: {"message":"Skill not found: rig","code":"failure"} bash: cat /tmp/gh-aw/agent/merged-prs.json | jq '.prs | length' && cat /tmp/gh-aw/agent/merged-prs.json | jq '.window': {"message":"The user rejected this tool call. User feedback: Tool invocation is not allowed by workflow tool permissions.","code":"denied"} bash: python3 << 'EOF' import json with open('/tmp/gh-aw/agent/merged-prs.json') as f: data = json.load(f) print(f"PR count: {len(data['prs'])}") print(f"Window: {data['window']}") print(f"Repository: {data['repository']}") EOF: {"message":"The user rejected this tool call. User feedback: Tool invocation is not allowed by workflow tool permissions.","code":"denied"} bash: cd /home/runner/work/rig/rig && node skills/rig/run.ts --typecheck < /tmp/gh-aw/agent/pr-cluster-label-strategy.ts 2>&1: {"content":"Error: Typecheck failed for (stdin).\n.tmp/rig-stdin-E0dcKd/program.ts(51,3): error TS2769: No overload matches this call.\n Overload 1 of 2, '(spec: WorkflowSpec(unknown, unknown)): Workflow(unknown, unknown)', gave the following error.\n Property 'name' is missing in type '{ description: string; }' but required in type 'WorkflowMeta'.\n Overload 2 of 2, '(spec: WorkflowWithoutInputSpec(unknown)): Workflow(undefined, unknown)', gave the following error.\n Property 'name' is missing in type '{ description: string; }' but required in type 'WorkflowMeta'.\n.tmp/rig-stdin-E0dcKd/program.ts(58,46): error TS2345: Argument of type 'undefined' is not assignable to parameter of type 'string | PromptIntent | PromptBuilder'.\n.tmp/rig-stdin-E0dcKd/program.ts(62,16): error TS7006: Parameter 'pr' implicitly has an 'any' type.\n.tmp/rig-stdin-E0dcKd/program.ts(67,19): error TS18047: 'themes' is possibly 'null'.\n.tmp/rig-stdin-E0dcKd/program.ts(84,7): error TS2554: Expected 1 arguments, but got 2.\n.tmp/rig-stdin-E0dcKd/program.ts(98,5): error TS18047: 'themes' is possibly 'null'.\n.tmp/rig-stdin-E0dcKd/program.ts(110,11): error TS18046: 'c' is of type 'unknown'.\n.tmp/rig-stdin-E0dcKd/program.ts(111,27): error TS18046: 'c' is of type 'unknown'.\n.tmp/rig-stdin-E0dcKd/program.ts(112,33): error TS18046: 'c' is of type 'unknown'.\n.tmp/rig-stdin-E0dcKd/program.ts(113,24): error TS18046: 'c' is of type 'unknown'.\n.tmp/rig-stdin-E0dcKd/program.ts(113,45): error TS18046: 'c' is of type 'unknown'.\n.tmp/rig-stdin-E0dcKd/program.ts(127,43): error TS7006: Parameter 'p' implicitly has an 'any' type.\n at typecheckProgram ((redacted) at process.processTicksAndRejections (node:internal/process/task_queues:104:5)\n at async runProgramCodeFromStdin ((redacted) at async run ((redacted) at async runLauncherCli ((redacted) at async runInstalledSkill ((redacted) 7 completed with exit code 1)"} bash: cd /home/runner/work/rig/rig && node skills/rig/run.ts --typecheck < /tmp/gh-aw/agent/pr-cluster-label-strategy.ts 2>&1: {"content":"Error: Typecheck failed for (stdin).\n.tmp/rig-stdin-S11Kd8/program.ts(72,7): error TS2345: Argument of type '(() => Promise<{ themeId?: string; themeName?: string; justification?: string; prNumber: number; } | { prNumber: number; themeId: string; themeName: string; justification: string; }>)[]' is not assignable to parameter of type 'readonly (() => { prNumber: number; themeId: string; themeName: string; justification: string; } | Promise<{ prNumber: number; themeId: string; themeName: string; justification: string; }>)[]'.\n Type '() => Promise<{ themeId?: string; themeName?: string; justification?: string; prNumber: number; } | { prNumber: number; themeId: string; themeName: string; justification: string; }>' is not assignable to type '() => { prNumber: number; themeId: string; themeName: string; justification: string; } | Promise<{ prNumber: number; themeId: string; themeName: string; justification: string; }>'.\n Type 'Promise<{ themeId?: string; themeName?: string; justification?: string; prNumber: number; } | { prNumber: number; themeId: string; themeName: string; justification: string; }>' is not assignable to type '{ prNumber: number; themeId: string; themeName: string; justification: string; } | Promise<{ prNumber: number; themeId: string; themeName: string; justification: string; }>'.\n Type 'Promise<{ themeId?: string; themeName?: string; justification?: string; prNumber: number; } | { prNumber: number; themeId: string; themeName: string; justification: string; }>' is not assignable to type 'Promise<{ prNumber: number; themeId: string; themeName: string; justification: string; }>'.\n Type '{ themeId?: string; themeName?: string; justification?: string; prNumber: number; } | { prNumber: number; themeId: string; themeName: string; justification: string; }' is not assignable to type '{ prNumber: number; themeId: string; themeName: string; justification: string; }'.\n Type '{ themeId?: string; themeName?: string; justification?: string; prNumber: number; }' is not assignable to type '{ prNumber: number; themeId: string; themeName: string; justification: string; }'.\n Property 'themeId' is optional in type '{ themeId?: string; themeName?: string; justification?: string; prNumber: number; }' but required in type '{ prNumber: number; themeId: string; themeName: string; justification: string; }'.\n at typecheckProgram ((redacted) at process.processTicksAndRejections (node:internal/process/task_queues:104:5)\n at async runProgramCodeFromStdin ((redacted) at async run ((redacted) at async runLauncherCli ((redacted) at async runInstalledSkill ((redacted) 8 completed with exit code 1)"} create: {"message":"Path already exists","code":"failure"} bash: rm /tmp/gh-aw/agent/pr-cluster-label-strategy.ts: {"message":"The user rejected this tool call. User feedback: Tool invocation is not allowed by workflow tool permissions.","code":"denied"} bash: cat > /tmp/gh-aw/agent/cluster-rig.ts << 'EOF' import { agent, workflow, p, s } from "rig"; // Agent role: analyze PR labels and identify cluster themes. const analyzeLabels = agent({ model: "small", instructions: p`Analyze these PR labels and identify 3-4 dominant cluster themes: ${p.read("/tmp/gh-aw/agent/merged-prs.json")} For each theme, describe what it represents and which labels are primary indicators.`, output: s.array( s.object({ themeId: s.string, themeName: s.string, description: s.string, primaryLabels: s.array(s.string), }) ), }); // Agent role: classify a PR into one of the discovered themes. const classifyPR = agent({ model: "small", input: s.object({ prNumber: s.int, prTitle: s.string, prLabels: s.array(s.string), themes: s.array( s.object({ themeId: s.string, themeName: s.string, primaryLabels: s.array(s.string), }) ), }), instructions: p`Classify this PR into one of the available themes: PR #${p.readInput("prNumber")}: ${p.readInput("prTitle")} Labels: ${p.readInput("prLabels")} Themes: ${p.readInput("themes")} Return the themeId that best matches.`, output: s.object({ themeId: s.string, }), }); // Workflow role: orchestrate theme discovery and PR classification. export default workflow({ meta: { name: "label-cluster", description: "Label-based PR clustering" }, body: async ({ call, parallel }) => { const fs = require("node:fs"); const data = JSON.parse( fs.readFileSyn [Content truncated due to length]This is a structured incompletion signal (
report_incomplete), not a real task outcome. Any other safe outputs emitted alongside this signal (e.g., comments) describe the failure state, not a completed review or action.Generated from Monthly PR Clusters · copilot · 17.3 AIC · ◷
Workflow Failure
Workflow: Monthly PR Clusters
Branch: main
Run: https://github.com/githubnext/rig/actions/runs/37754089824
Warning
Repeated Permission Denied: The agent was denied permission to run 4 command(s) and stopped retrying.
Denied Commands:
shell(find /home/runner/work/rig/rig -type f -name "*.md" | head -20)shell(jq '.window, (.prs | length)' /tmp/gh-aw/agent/merged-prs.json)shell(rm /tmp/gh-aw/agent/cluster-rig.ts)shell(printf '%s\n' 'import { agent, s, workflow } from "rig"; | shell(python3 << 'EOF'How to fix this
The agent ran in non-interactive mode (
--no-ask-user) and could not request permission at runtime.To resolve repeated permission denied errors, update the workflow prompt to avoid these commands or use approved alternatives. Use the following prompt with any coding agent:
Warning
Task Could Not Be Completed: The agent reported that the task could not be performed due to an infrastructure or tool failure.
Error details:
This is a structured incompletion signal (
report_incomplete), not a real task outcome. Any other safe outputs emitted alongside this signal (e.g., comments) describe the failure state, not a completed review or action.Action Required
Assign this issue to an agent to debug and fix the issue.
Debug with any coding agent
Use this prompt with any coding agent (GitHub Copilot, Claude, Gemini, etc.):
Manually invoke the agent
Debug this workflow failure using your favorite Agent CLI and the
agentic-workflowsprompt.agentic-workflowsskill from.github/skills/agentic-workflows/SKILL.mdor https://github.com/github/gh-aw/blob/main/.github/skills/agentic-workflows/SKILL.mddebug the agentic workflow monthly-pr-clusters failure in https://github.com/githubnext/rig/actions/runs/37754089824Tip
Stop reporting this workflow as a failure
To stop a workflow from creating failure issues, set
report-failure-as-issue: falsein its frontmatter: