Problem
/idd-list and /idd-issue only look at GitHub Issues. But real user bug reports and feature requests frequently arrive as GitHub Discussions (Q&A category especially), which are completely invisible to the IDD workflow.
Concrete case that surfaced this: on 2026-07-04, /idd-list on PsychQuant/che-ical-mcp reported 0 open issues — a clean backlog. But a real permission bug report had been sitting in Discussions the whole time:
The report, the maintainer's diagnosis, and the reporter's eventual "it's fixed" confirmation all happened inside the Discussion. None of it ever touched the Issues tab, so IDD had a blind spot over the entire intake channel.
Type
feature (enhancement)
Expected
/idd-list — surface Discussions alongside Issues:
- Fetch open Discussions via
gh api graphql (Discussions have no REST API).
- No-op gracefully when
hasDiscussionsEnabled: false.
- Flag actionable ones: Q&A / Ideas category,
answerChosenAt: null (unanswered), and not already linked to an existing issue.
- Show them in a dedicated block with a Suggested next action.
- Opt-in via a
--discussions flag (avoid always-on latency + noise) or a config key.
When a Discussion describes an unresolved problem, the workflow:
- Suggest creating an Issue from it (carry the Discussion URL as provenance).
- After the Issue exists, post a reply in the Discussion linking the new Issue.
/idd-issue — accept a Discussion as a source:
--from-discussion <url|number>: seed the issue body from the Discussion, record provenance, and (draft-and-confirm) post a back-reference reply.
Design constraints (learned from the che-ical-mcp discussion 105 case)
- Do NOT auto-file. That discussion was already resolved — the reporter's latest comment (2026-07-04) was "everything is fixed, thank you," and the root causes were already tracked in closed issues. A tool that mechanically files an issue for every Discussion "problem" would have created a noise issue that opens only to be closed immediately. The tool must surface + let the human judge, not auto-create.
- Dedup: a Discussion already referenced by an existing (open or closed) issue should not be re-flagged.
- Resolution detection: at minimum, don't flag Discussions whose latest activity is a maintainer answer or a reporter "fixed" confirmation.
answerChosenAt != null is the cheap signal; latest-comment sentiment is a stretch goal.
- Category filter: Announcements / Show-and-tell aren't intake; only Q&A (and optionally Ideas) count.
- Outward-facing writes (the Discussion reply) are draft-and-confirm, never silent auto-post.
Current Status
Phase: closed
Last updated: 2026-07-11 by /idd-close
Key Decisions
- Complexity = Spectra(opt-out → 直接 propose):方向已由 issue body 設計約束定案
- Conflict Class = A_parallel_safe;排 batch Wave C 尾(最重項)
- unattended 邊界:Discussion 回文 draft-only 不 auto-post
Filed 2026-07-04 from the che-ical-mcp Discussions intake gap. The two open discussions there (105 and 1) were closed out manually — replied, and 105 marked answered — as part of surfacing this.
Problem
/idd-listand/idd-issueonly look at GitHub Issues. But real user bug reports and feature requests frequently arrive as GitHub Discussions (Q&A category especially), which are completely invisible to the IDD workflow.Concrete case that surfaced this: on 2026-07-04,
/idd-listonPsychQuant/che-ical-mcpreported 0 open issues — a clean backlog. But a real permission bug report had been sitting in Discussions the whole time:The report, the maintainer's diagnosis, and the reporter's eventual "it's fixed" confirmation all happened inside the Discussion. None of it ever touched the Issues tab, so IDD had a blind spot over the entire intake channel.
Type
feature (enhancement)
Expected
/idd-list— surface Discussions alongside Issues:gh api graphql(Discussions have no REST API).hasDiscussionsEnabled: false.answerChosenAt: null(unanswered), and not already linked to an existing issue.--discussionsflag (avoid always-on latency + noise) or a config key.When a Discussion describes an unresolved problem, the workflow:
/idd-issue— accept a Discussion as a source:--from-discussion <url|number>: seed the issue body from the Discussion, record provenance, and (draft-and-confirm) post a back-reference reply.Design constraints (learned from the che-ical-mcp discussion 105 case)
answerChosenAt != nullis the cheap signal; latest-comment sentiment is a stretch goal.Current Status
Phase: closed
Last updated: 2026-07-11 by /idd-close
Key Decisions
Filed 2026-07-04 from the che-ical-mcp Discussions intake gap. The two open discussions there (105 and 1) were closed out manually — replied, and 105 marked answered — as part of surfacing this.