diff --git a/graph/workflows/autonomous-issue-dispatcher-pipeline-backlog-triage-to-per-i-c4b2f4.md b/graph/workflows/autonomous-issue-dispatcher-pipeline-backlog-triage-to-per-i-c4b2f4.md new file mode 100644 index 00000000000..7d8b8ebdd86 --- /dev/null +++ b/graph/workflows/autonomous-issue-dispatcher-pipeline-backlog-triage-to-per-i-c4b2f4.md @@ -0,0 +1,35 @@ +--- +id: c4b2f42d-b443-447f-8a05-bba099e06036 +type: workflow +title: "Autonomous Issue-Dispatcher Pipeline: backlog-triage to per-issue claude workers" +tags: [claude-scheduled, issue-dispatcher, issue-worker, automation, workflow, autonomous, gitea] +importance: 0.9 +confidence: 0.8 +created: "2026-03-02T20:04:39.162409+00:00" +updated: "2026-03-02T20:04:39.162409+00:00" +--- + +# Autonomous Issue-Dispatcher Pipeline + +## Architecture +Pipeline chain: `backlog-triage` (9:15am) → `issue-dispatcher` (9:45am) → per-issue claude workers + +## Key Design +- Dispatcher reads triage log, extracts Suggested Focus issues via `extract_issues.py` +- Loops up to 3 issues, invokes `claude -p` per issue with `bypassPermissions` +- PR-gated model: creates PRs but **never merges** + +## Safety Mechanisms +- $2/issue budget ceiling +- Label deduplication: `ai-working` / `ai-pr-opened` / `ai-failed` +- Bail-out on complex issues (>10 files, needs human judgment) +- Test-gated: tests must pass before PR + +## Key Files +- `~/.config/claude-scheduled/issue-dispatcher.sh` — main dispatcher script +- `~/.config/claude-scheduled/extract_issues.py` — triage log parser +- `~/.config/claude-scheduled/tasks/issue-worker/prompt-template.md` — per-issue prompt +- `~/.claude/agents/issue-worker.md` — agent definition + +## Branch Naming +`ai/{repo}#{number}` (e.g., `ai/major-domo-v2#42`)