Parent umbrella issue: #495
Source audit: Weekly tech debt audit: dispatch - 2026-07-01
Source audit date: 2026-07-01
Original recommendation
Agent queue: renovate issue filter logic duplicates upstream filtering
Evidence: src/lib/agent-queue.ts — both the filter() in buildAgentQueue() and isRenovateIssue() in issue-filters.ts apply independent Renovate exclusion logic. The buildAgentQueue checks includeRenovate while the Dispatch API route /api/agents/[agentName]/queue also filters via DISPATCH_EXCLUDED_LABELS. These overlapping filters could produce confusing results (issues excluded by one filter but not the other).
Matched top finding
Evidence: src/lib/agent-queue.ts — both the filter() in buildAgentQueue() and isRenovateIssue() in issue-filters.ts apply independent Renovate exclusion logic. The buildAgentQueue checks includeRenovate while the Dispatch API route /api/agents/[agentName]/queue also filters via DISPATCH_EXCLUDED_LABELS. These overlapping filters could produce confusing results (issues excluded by one filter but not the other).
Parent umbrella issue: #495
Source audit: Weekly tech debt audit: dispatch - 2026-07-01
Source audit date: 2026-07-01
Original recommendation
Agent queue: renovate issue filter logic duplicates upstream filtering
Evidence:
src/lib/agent-queue.ts— both thefilter()inbuildAgentQueue()andisRenovateIssue()inissue-filters.tsapply independent Renovate exclusion logic. ThebuildAgentQueuechecksincludeRenovatewhile the Dispatch API route/api/agents/[agentName]/queuealso filters viaDISPATCH_EXCLUDED_LABELS. These overlapping filters could produce confusing results (issues excluded by one filter but not the other).Matched top finding
Evidence:
src/lib/agent-queue.ts— both thefilter()inbuildAgentQueue()andisRenovateIssue()inissue-filters.tsapply independent Renovate exclusion logic. ThebuildAgentQueuechecksincludeRenovatewhile the Dispatch API route/api/agents/[agentName]/queuealso filters viaDISPATCH_EXCLUDED_LABELS. These overlapping filters could produce confusing results (issues excluded by one filter but not the other).