skill-pr-addresser: Improve feedback deduplication and batching
- Dominant language
- Jupyter Notebook
- Stars
- 8
- Forks
- 3
- PR merge metrics
- No merged PRs in 30d
Description
## Problem
The agent times out when processing PRs with many review comments because:
1. **No deduplication of similar feedback** - "Move to examples" appearing at 4 different lines creates 4 separate work items
2. **Guidance mixed with actionable items** - Meta-guidance reviews (e.g., "follow progressive delivery patterns") are treated as change requests
3. **Checkbox explosion** - A single review with 6 checkboxes becomes 6 separate items
4. **No batching** - All items processed in a single fixer run
### Example from PR #795
| Source | Items Generated |
|--------|-----------------|
| Review 1 (6 checkboxes) | 6 items |
| Review 2 (guidance) | 1 item |
| Review 3 (guidance) | 1 item |
| 11 review threads | 11 items |
| **Total** | **~17-20 items** |
Many threads are actually the same feedback at different locations:
- 4 threads say "move to examples/*"
- 3 threads say "move to reference/*.md"
- 3 threads say "keep high-level, point to references"
## Proposed Solutions
### 1. Deduplication in Analyzer
Update `feedback-analyzer` prompt to consolidate similar feedback:
```json
{
"feedback_items": [
{
"id": "group-examples",
"type": "change_request",
"description": "Move code blocks to examples/",
"locations": [
{"file": "SKILL.md", "line": 671},
{"file": "SKILL.md", "line": 733},
{"file": "SKILL.md", "line": 398}
],
"priority": "high"
}
]
}
```
### 2. Separate Guidance from Actions
Add a `guidance` type that the fixer can use for context but not treat as individual work items:
```json
{
"guidance": [
"SKILL.md MUST follow progressive delivery patterns",
"Adopt best-practices & anti-patterns pattern"
],
"feedback_items": [...]
}
```
### 3. Batch Processing
Instead of sending all items to fixer at once:
1. Group by type (move-to-examples, move-to-references, etc.)
2. Process one group at a time
3. Commit after each batch
### 4. Priority Ordering
Process high-priority items first, skip lower priority if time/turn budget exhausted.
## Related
- #796 - Detect updated comments
- Observed in PR #795 (10 items all timed out)
Contributor guide
Assessment
This issue has not been assessed yet.