Review Issues by Severity
Parse $ARGUMENTS for optional filters:
- Label filters (e.g.,
question, bug)
- Focus areas (e.g., "merge disposition", "Arrow", "ClickHouse")
- If absent, perform a broad review across all open issues.
Steps
1. Gather candidate issues
Run the following GitHub API queries in parallel to surface issues matching different severity signals:
a) Long discussions (high comment count)
gh api 'repos/dlt-hub/dlt/issues?state=open&per_page=100&sort=comments&direction=desc&page=1' \
--jq '.[] | "\(.number)\t\(.comments)\t\(.updated_at | split("T")[0])\t\(.created_at | split("T")[0])\t\([.labels[].name] | join(","))\t\(.title)"'
b) Issues with specific labels (if filters provided)
gh api 'repos/dlt-hub/dlt/issues?state=open&labels=LABEL&per_page=100&sort=comments&direction=desc' \
--jq '.[] | "\(.number)\t\(.comments)\t\(.updated_at | split("T")[0])\t\(.created_at | split("T")[0])\t\([.labels[].name] | join(","))\t\(.title)"'
c) Recently stale issues (updated 2+ months ago, with maintainer comments)
Look for issues where updated_at is old relative to the current date but had prior maintainer engagement.
2. Deep-dive top candidates
For the top 10-15 most promising candidates, fetch full details using a subagent or parallel gh issue view calls:
gh issue view -R dlt-hub/dlt NUMBER --json title,body,comments,labels,createdAt,updatedAt,author,assignees
For each issue, extract:
- Participants: who commented, their association (MEMBER = maintainer, NONE/CONTRIBUTOR = community)
- Timeline: when maintainers last engaged, how long since last response
- Problem description: what breaks and under what conditions
- Reproduction quality: is there a clean repro script?
- Current status: fixed? workaround? stalled? abandoned?
- Production severity: does this cause data loss, crashes, or silent corruption?
3. Classify each issue
Apply these criteria to each issue:
| Signal |
What to look for |
| Serious problem |
Data corruption, silent data loss, hard crashes, cascading failures, security issues |
| Long discussion |
5+ comments, especially with multiple community reporters hitting the same issue |
| Maintainer abandoned |
Maintainer commented but last maintainer response is 2+ months old, no linked PR, reporter follow-ups unanswered |
| Question label |
Issue has question label — these often represent real bugs initially miscategorized |
| Community effort |
Reporter provided detailed repro scripts, root-cause analysis, or proposed fixes that went unacknowledged |
4. Prioritize
Assign priority tiers:
- P0 — Critical: Silent data corruption, cascading failures, confirmed root cause with no fix. Production systems at risk.
- P1 — High: Hard crashes in common deployment patterns, blocking features for significant user segments, confirmed bugs with stalled fixes.
- P2 — Medium: Broken features in specific environments, intermittent failures, missing warnings that lead users astray.
- P3 — Low: Documentation gaps, environment-specific issues with known workarounds, feature requests with community PRs pending review.
Within each tier, rank by:
- Seriousness of the problem in production (data loss > crash > degraded performance > inconvenience)
- Negative community impact if not solved (effort wasted by reporters, users hitting the issue independently)
- Amount of effort already invested by reporters (repro scripts, root-cause analysis, proposed PRs)
5. Output format
Present results as:
Per-issue analysis (grouped by priority tier)
For each issue:
- Issue link, title, comment count, last activity date
- Problem: 2-3 sentence description of what breaks
- Why this priority: key severity signal
- Abandonment signal: when maintainer last engaged, what was left unresolved
- Community effort: what the reporter invested (repro scripts, analysis, PRs)
Summary matrix
A table with columns: Priority | Issue # | Type | Production Impact | Community Effort | Maintainer Status
Cross-cutting patterns
Note any clusters of related issues (e.g., multiple issues sharing a root cause) or systemic patterns in maintainer response.
1---2name: review-issues-severity3description: Find and prioritize open GitHub issues by severity, community impact, and maintainer abandonment4---56# Review Issues by Severity78Parse `$ARGUMENTS` for optional filters:9- Label filters (e.g., `question`, `bug`)10- Focus areas (e.g., "merge disposition", "Arrow", "ClickHouse")11- If absent, perform a broad review across all open issues.1213## Steps1415### 1. Gather candidate issues1617Run the following GitHub API queries **in parallel** to surface issues matching different severity signals:1819#### a) Long discussions (high comment count)20```bash21gh api 'repos/dlt-hub/dlt/issues?state=open&per_page=100&sort=comments&direction=desc&page=1' \22 --jq '.[] | "\(.number)\t\(.comments)\t\(.updated_at | split("T")[0])\t\(.created_at | split("T")[0])\t\([.labels[].name] | join(","))\t\(.title)"'23```2425#### b) Issues with specific labels (if filters provided)26```bash27gh api 'repos/dlt-hub/dlt/issues?state=open&labels=LABEL&per_page=100&sort=comments&direction=desc' \28 --jq '.[] | "\(.number)\t\(.comments)\t\(.updated_at | split("T")[0])\t\(.created_at | split("T")[0])\t\([.labels[].name] | join(","))\t\(.title)"'29```3031#### c) Recently stale issues (updated 2+ months ago, with maintainer comments)32Look for issues where `updated_at` is old relative to the current date but had prior maintainer engagement.3334### 2. Deep-dive top candidates3536For the top 10-15 most promising candidates, fetch full details using a subagent or parallel `gh issue view` calls:3738```bash39gh issue view -R dlt-hub/dlt NUMBER --json title,body,comments,labels,createdAt,updatedAt,author,assignees40```4142For each issue, extract:43- **Participants:** who commented, their association (MEMBER = maintainer, NONE/CONTRIBUTOR = community)44- **Timeline:** when maintainers last engaged, how long since last response45- **Problem description:** what breaks and under what conditions46- **Reproduction quality:** is there a clean repro script?47- **Current status:** fixed? workaround? stalled? abandoned?48- **Production severity:** does this cause data loss, crashes, or silent corruption?4950### 3. Classify each issue5152Apply these criteria to each issue:5354| Signal | What to look for |55|--------|-----------------|56| **Serious problem** | Data corruption, silent data loss, hard crashes, cascading failures, security issues |57| **Long discussion** | 5+ comments, especially with multiple community reporters hitting the same issue |58| **Maintainer abandoned** | Maintainer commented but last maintainer response is 2+ months old, no linked PR, reporter follow-ups unanswered |59| **Question label** | Issue has `question` label — these often represent real bugs initially miscategorized |60| **Community effort** | Reporter provided detailed repro scripts, root-cause analysis, or proposed fixes that went unacknowledged |6162### 4. Prioritize6364Assign priority tiers:6566- **P0 — Critical:** Silent data corruption, cascading failures, confirmed root cause with no fix. Production systems at risk.67- **P1 — High:** Hard crashes in common deployment patterns, blocking features for significant user segments, confirmed bugs with stalled fixes.68- **P2 — Medium:** Broken features in specific environments, intermittent failures, missing warnings that lead users astray.69- **P3 — Low:** Documentation gaps, environment-specific issues with known workarounds, feature requests with community PRs pending review.7071Within each tier, rank by:721. Seriousness of the problem in production (data loss > crash > degraded performance > inconvenience)732. Negative community impact if not solved (effort wasted by reporters, users hitting the issue independently)743. Amount of effort already invested by reporters (repro scripts, root-cause analysis, proposed PRs)7576### 5. Output format7778Present results as:7980#### Per-issue analysis (grouped by priority tier)81For each issue:82- **Issue link, title, comment count, last activity date**83- **Problem:** 2-3 sentence description of what breaks84- **Why this priority:** key severity signal85- **Abandonment signal:** when maintainer last engaged, what was left unresolved86- **Community effort:** what the reporter invested (repro scripts, analysis, PRs)8788#### Summary matrix89A table with columns: Priority | Issue # | Type | Production Impact | Community Effort | Maintainer Status9091#### Cross-cutting patterns92Note any clusters of related issues (e.g., multiple issues sharing a root cause) or systemic patterns in maintainer response.