Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 12 additions & 5 deletions .github/workflows/issue-monster.md
Original file line number Diff line number Diff line change
Expand Up @@ -356,7 +356,10 @@ From the prioritized and filtered list (issues WITHOUT Copilot assignments or op
- ❌ **BAD**: Related issues that might have conflicting changes

**If all issues are already being worked on:**
- Output a message: "🍽️ All issues are already being worked on!"
- Use the `noop` tool to explain why no work was assigned:
```
safeoutputs/noop(message="🍽️ All issues are already being worked on!")
Copy link

Copilot AI Feb 3, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code example shows the noop tool call with a parameter name of "message", but this should be verified against the actual safe outputs MCP server API. Looking at other workflows that use noop, they don't show usage examples, so the parameter name might be incorrect. Consider verifying the correct parameter name for the noop tool (it might be "reason", "description", or something else) to ensure agents can successfully call this tool.

Suggested change
safeoutputs/noop(message="🍽️ All issues are already being worked on!")
safeoutputs/noop(reason="🍽️ All issues are already being worked on!")

Copilot uses AI. Check for mistakes.
```
- **STOP** and do not proceed further

**If fewer than 3 suitable separate issues are available:**
Expand Down Expand Up @@ -405,6 +408,7 @@ safeoutputs/add_comment(item_number=<issue_number>, body="🍪 **Issue Monster h
- ✅ **Check assignments**: Skip issues already assigned to Copilot
- ✅ **Sibling awareness**: For "task" or "plan" sub-issues, skip if any sibling already has an open Copilot PR
- ✅ **Process in order**: For sub-issues of the same parent, process oldest first
- ✅ **Always report outcome**: If no issues are assigned, use the `noop` tool to explain why
- ❌ **Don't force batching**: If only 1-2 clearly separate issues exist, assign only those

## Success Criteria
Expand All @@ -425,9 +429,12 @@ A successful run means:

## Error Handling

If anything goes wrong:
- **No issues found**: Output a friendly message and stop gracefully
- **All issues assigned**: Output a message and stop gracefully
- **API errors**: Log the error clearly
If anything goes wrong or no work can be assigned:
- **No issues found**: Use the `noop` tool with message: "🍽️ No suitable candidate issues - the plate is empty!"
- **All issues assigned**: Use the `noop` tool with message: "🍽️ All issues are already being worked on!"
- **No suitable separate issues**: Use the `noop` tool explaining which issues were considered and why they couldn't be assigned (e.g., overlapping topics, sibling PRs, etc.)
- **API errors**: Use the `missing_tool` or `missing_data` tool to report the issue
Copy link

Copilot AI Feb 3, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The instruction references a missing_data tool, but this tool is not commonly seen in other workflows. Based on a search of other workflow files, only missing-tool appears to be a standard safe output tool. Verify that missing_data exists as a valid safe output tool, or correct this to use only missing_tool for reporting API errors. If missing_data is valid, it should also be declared in the safe-outputs configuration section.

Suggested change
- **API errors**: Use the `missing_tool` or `missing_data` tool to report the issue
- **API errors**: Use the `missing_tool` tool to report the issue

Copilot uses AI. Check for mistakes.

**CRITICAL**: You MUST call at least one safe output tool every run. If you don't assign any issues, you MUST call the `noop` tool to explain why. Never complete a run without making at least one tool call.
Comment on lines +432 to +438
Copy link

Copilot AI Feb 3, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Success Criteria section (lines 417-428, particularly steps 11-12) only describes success when issues are assigned, but the new error handling section mandates that calling noop when no issues can be assigned is also valid behavior. This creates a logical inconsistency. Consider updating the Success Criteria section to explicitly state that a successful run can also mean "no issues were assigned, but noop was called to explain why" or revise the criteria to accommodate the no-action scenario.

Copilot uses AI. Check for mistakes.

Remember: You're the Issue Monster! Stay hungry, work methodically, and let Copilot do the heavy lifting! 🍪 Om nom nom!
Loading