This is a static, public demo. An example repository (acme/web-app) with 20 open issues is triaged below: AI labels, priority and a triage suggestion per issue, plus duplicate groups. No login required. No signup. All data is mock/synthetic and lives only in this page — no data is sent to third-party analytics or external APIs.
Triage suggestions are AI-generated and assist your team — a human should review high-priority recommendations before release (EU AI Act Art. 50 transparency).
20 issues · 2 carry two tags (#152 bug + docs, #160 question + enhancement) — tag counts below: Bug 10 · Docs 2 · Enhancement 4 · Question 3 · Duplicate 3 (22 tag assignments = 20 primary + 2 secondary; primary tags total 20).
| # | Issue | AI labels | Priority | Triage suggestion |
|---|---|---|---|---|
| 142 | Login loop after OAuth callback | bugauth | P1 High | Regression candidate; route to auth owner. |
| 143 | Button overlaps footer on mobile Safari | bugui | P3 Low | Cosmetic; batch with layout reports. |
| 144 | CSV export fails on empty board | bugexport | P2 Medium | Reproducible edge case; attach stack trace. |
| 145 | Login loop on Safari (same as #142) | duplicate | Grouped | Merged into Duplicate Group D1 with #142. |
| 146 | Add dark mode to docs site | enhancement | P4 Backlog | Feature request; no action this sprint. |
| 147 | Webhook retried 5 times on 502 | bugwebhooks | P2 Medium | Check retry backoff against idempotency. |
| 148 | How do I rotate my API token? | question | P3 Low | Answer from docs; close as answered. |
| 149 | Keyboard shortcut for bulk label | enhancement | P4 Backlog | UX request; collect votes. |
| 150 | OOM crash on 10k-row import | bugperformance | P1 High | Data-loss risk; route to import owner. |
| 151 | Import stuck at 99% (same as #150) | duplicate | Grouped | Merged into Duplicate Group D2 with #150. |
| 152 | Typo in rate-limit error message | bugdocs | P3 Low | One-line fix; good first issue. |
| 153 | Does TriageFlow store issue bodies? | question | P3 Low | Answer: privacy policy link; close. |
| 154 | 2FA users cannot export settings | bugauth | P2 Medium | Linked to #142 auth workstream. |
| 155 | API returns 500 on empty filter | bugapi | P1 High | Server error on common path; fix fast. |
| 156 | Refresh badge after triage | enhancement | P4 Backlog | Nice-to-have; batch with dashboard UX. |
| 157 | README badge URL outdated | docs | P4 Backlog | Docs cleanup. |
| 158 | Timezone off by one in reports | bugreporting | P2 Medium | Confirm DST handling with fixture. |
| 159 | Same login loop report #3 | duplicate | Grouped | Merged into Duplicate Group D1. |
| 160 | Support for GitLab issues? | questionenhancement | P4 Backlog | Roadmap request; log interest. |
| 161 | Filter panel resets on refresh | bugui | P3 Low | Persist state in URL. |
Legend: "Grouped" = duplicate group detected (issue merged into an existing duplicate thread rather than receiving a P1–P4 priority).
D1 — "Login loop after OAuth callback": #142, #145, #159 (3 reports → 1 thread, votes merged).
D2 — "Import OOM / stuck at 99%": #150, #151 (2 reports → 1 thread).
Audit rationale for every decision is stored in triage history — never as a spam comment in your issue thread. Kill switches and quotas keep automation under your control.
The TriageFlow GitHub App only requests permissions for Issues and repository metadata (contents: none) and never trains AI models on your private tickets. This demo runs entirely from static data in this page: no login, no trackers, no external API calls.
Try it on your own repo (Free $0)
Repos under 100 issues/mo use the $0 Free plan. Starter $49/mo ($588/y) includes a 1,000 ticket per month quota. Prices in USD.