From manifest
Scan Sentry, support tickets, and app store reviews for new bug clusters; deduplicate against existing tickets; file to JIRA with contract back-references; then route each new cluster back into the pipeline (trivial→/fix, substantial→/contract) with propose-by-default guardrails. Invoked nightly by launch-monitor.yml as part of the 4-week monitoring window.
How this skill is triggered — by the user, by Claude, or both
Slash command
/manifest:bug-triageThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You run alongside the launch reports. Each invocation looks for new bug
You run alongside the launch reports. Each invocation looks for new bug clusters across error tracking and user-facing channels, dedupes against already-filed tickets, and creates new tickets with proper context.
Read .manifest/contracts/*.md. Find contracts where:
landed is not yet set (still in monitoring window), ORlandingTrack contains a verdict from the last 28 daysThese are the features you're responsible for.
Use the Sentry MCP to query:
For each new issue, extract: error class, count, affected users, first seen, stack trace top frame, code locations.
If support tool MCPs are connected:
If app store review MCPs are connected (App Store Connect / Play Console):
Group findings by likely root cause. Two errors with the same top frame or the same component name are likely one cluster. Two support tickets describing the same confusion are one cluster.
For each cluster:
Use the Atlassian MCP to search for existing tickets with overlapping
If a match found, update the existing ticket with new evidence (+1 occurrences, add the new affected users). Don't create duplicates.
For each new cluster, create a JIRA ticket with:
Update .manifest/contracts/<ID>.bug-log.md (append-only) with each new
cluster filed. Post a daily summary to the contract's Slack thread:
🐛 Day 4 bug triage: 1 new S2 (BUG-101 — TypeError in SavedCardRow, 12 users). 2 dupes against existing tickets, +5 occurrences each.
If zero new bugs, post a quieter line: "Day 4 bug triage: clean."
Filing a ticket isn't the end. A post-launch bug is new work, and it should re-enter the same pipeline everything else flows through instead of waiting in a queue for someone to notice. For each newly filed cluster (not dupes — those are already tracked), decide a route.
8a. Classify the cluster (same bar quick-fix uses):
/fix)./contract).8b. Decide auto-start vs propose — this is the safety gate, because the diagnosis is inferred from a stack trace and acting on a wrong one wastes cycles:
verify-pr + code-review + human approval like
any other change.8c. Create the routing artifact:
/fix entry seeded
from what you already have — symptom, inferred repro, the suspect file
implement holds the github:contents:write /
pull_requests:write scopes — bug-triage itself only files/links)./contract new stub — goal: fix <symptom>,
behaviors and ACs derived from the repro and the affected behavior —
entering the normal verify→promote flow.8d. Link and record state so it's traceable and not re-routed:
bugFollowups: [{ ticket: BUG-101, route: fix, ref: PR#234, status: open }].
/status and launch-report read this — an open follow-up means
"landed" is at risk and should temper a landed verdict.routed in <ID>.bug-log.md so tomorrow's run
dedupes against it and doesn't route the same bug again.If GitHub/JIRA write access or /fix isn't available, degrade: post
the proposed route (with the seed details) to the contract's Slack
thread / as a PR comment, and let a human pick it up. Never silently
drop a routable bug.
routed mark
in the bug-log first.Post Slack updates as a REPLY in the contract's thread, not a new
top-level message: use thread_ts: <contract.slackThreadTs> in the
channel <contract.slackChannel> (both set by contract-promote). This
keeps #manifest to one line per contract. Exception: an overdue SLA,
a rollback, or a canary auto-pause also posts a brief top-level alert
linking back to the thread. (See reference/CONTRACT-FORMAT.md.)
Provides CDSS development patterns for drug interaction checking, dose validation, clinical scoring (NEWS2, qSOFA), and alert classification integrated into EMR workflows.
npx claudepluginhub iampawan/manifest --plugin manifest