Watch · Causal trail
Causal trail
Your alerts point at the line of code that caused them. Imports, callgraph, and schema and route reads and writes are joined to Sentry, Vercel, PostHog, and DB slow queries, and a cross-signal correlator wires each alert to the change that likely triggered it. The whole chain this sits in, from a session to a signed record, is drawn on the attribution architecture page.
Start here if you want a production alert traced to the change and the AI session behind it: Incidents.
Where to find it
- Localhost: Attribution Incidents. The Attribution tab in the same group opens a case on its attribution section.
- API:
GET /api/incident-attribution?repo=<id>&event=<prod.error-id>(omiteventfor the most recent production error) - MCP tool:
get_incident_attribution: pass an event, get back its attribution chain (the introducing deploy, its commit, the session and its prompt) with a confidence band ofexact,strong,weakornone - Keyboard: ⌘ K then type
incidents
What it does for you
One graph, four signals.Sentry crashes, Vercel deploy failures, PostHog event regressions, and DB slow queries all land in the same event store. Sentry alerts that name a source file are blamed back to the change that wrote it, matched against the Vercel deploy that shipped it; a slow query joins to the routes that read its tables. PostHog metrics carry no source file, so they stay unattributed.
Alerts with a source file get a likely cause.The correlator matches the alert to the deploy that shipped before it (by commit ref, or the nearest preceding deploy within a 30-minute window), then blames the culprit line back to the session that wrote it. When no deploy matches, it still runs the line-level blame and bands the result lower. The suspect leads the case on the Incidents tab, with its commit and session on the card. Alerts with no source file (PostHog metrics, DB slow logs) stay unattributed.
Opt-in per source, off by default.Sentry, Vercel, PostHog, and DB-slow-query ingest are each a per-repo block in
repos.config.json (sentry, vercel, posthog, dbSlowLog) that does nothing until it carries enabled: true. Tokens are named by environment variable, never written into the config, and every event is redacted as it is written to the store.Read more
Last updated