fix: Exclude workflow types from bd ready by default (gt-7xtn)
merge-request, gate, molecule, and message types are internal workflow items processed by Refinery/Deacon, not work for polecats to claim. These are now excluded from bd ready unless explicitly requested via --type flag. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -935,6 +935,20 @@ func (m *MemoryStorage) GetReadyWork(ctx context.Context, filter types.WorkFilte
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Type filtering (gt-7xtn)
|
||||||
|
if filter.Type != "" {
|
||||||
|
if string(issue.IssueType) != filter.Type {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Exclude workflow types from ready work by default
|
||||||
|
// These are internal workflow items, not work for polecats to claim
|
||||||
|
switch issue.IssueType {
|
||||||
|
case types.TypeMergeRequest, types.TypeGate, types.TypeMolecule, types.TypeMessage:
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Unassigned takes precedence over Assignee filter
|
// Unassigned takes precedence over Assignee filter
|
||||||
if filter.Unassigned {
|
if filter.Unassigned {
|
||||||
if issue.Assignee != "" {
|
if issue.Assignee != "" {
|
||||||
|
|||||||
@@ -33,6 +33,14 @@ func (s *SQLiteStorage) GetReadyWork(ctx context.Context, filter types.WorkFilte
|
|||||||
if filter.Type != "" {
|
if filter.Type != "" {
|
||||||
whereClauses = append(whereClauses, "i.issue_type = ?")
|
whereClauses = append(whereClauses, "i.issue_type = ?")
|
||||||
args = append(args, filter.Type)
|
args = append(args, filter.Type)
|
||||||
|
} else {
|
||||||
|
// Exclude workflow types from ready work by default (gt-7xtn)
|
||||||
|
// These are internal workflow items, not work for polecats to claim:
|
||||||
|
// - merge-request: processed by Refinery
|
||||||
|
// - gate: async wait conditions
|
||||||
|
// - molecule: workflow containers
|
||||||
|
// - message: mail/communication items
|
||||||
|
whereClauses = append(whereClauses, "i.issue_type NOT IN ('merge-request', 'gate', 'molecule', 'message')")
|
||||||
}
|
}
|
||||||
|
|
||||||
if filter.Priority != nil {
|
if filter.Priority != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user