Watch what shipped. Tie it to the change.
Your sites send their errors, metrics and events. RepoOps follows each one back to the deploy, the commit and the agent session behind it, and says how sure it is at every step.
A deploy that comes before a regression is an association, not a shown cause. What a collector reports about its release stays marked unverified.
From the alert to the session that wrote the line.
Each hop keeps the evidence it stands on. The last one is yours: confirm the name, or dispute it.
- 01Alert
- 02Deploy
- 03Commit
- 04Line
- 05Session
- YouVerdict
A commit with a Session-Id trailer names its session exactly. A commit with no trailer, or one naming two sessions, stops at strong.
Open to every team. Turn it on from the Production page.
On a hosted plan, an owner or an admin presses Turn on Production, then connects Vercel, Railway, Sentry, PostHog or OpenTelemetry under Connectors. Each form says when the first records arrive.
Incidents and the changes behind them Ships today
Arm Sentry, Vercel, PostHog or GitHub with a token, or post from any crash handler to the local receiver. An error that names a file and a line is followed through git blame to the commit and the Claude Code session that wrote it, and each link carries its band and the mechanism behind it.
Production evidence from your collector Ships today
Approve one workload by its GitHub Actions identity, and a collector beside your service sends typed metrics, logs, traces and events to your hosted team over a credential that lasts ten minutes. The release and session it reports stay marked unverified.
Source manifests Ships today
Each source is described by a manifest: what it sends, how it authenticates and which fields are kept. Three generic doors take OTLP over HTTP, a signed webhook and a scheduled pull. A conformance kit checks a new source against them, and repoops sources new scaffolds one.
The change record Ships today
One page per change holds the prompt, the session, the diff, the review, the merge and the deploy. A production card links to it, so the evidence and the change are the same record wherever you meet them.
Production evidence included each month: 5 GB on Solo Hosted, 5 GB a seat up to 25 GB on Team, and 5 GB on Enterprise until a contract sets it. Past the daily budget only error records are kept until UTC midnight, and at the monthly cap request records stop until the month ends. Raw evidence is kept 395 days on every paid plan. Without a paid plan RepoOps keeps no hosted history: a team that stops paying keeps its data for at least 7 days, then the daily sweep deletes it. Compare plans
What it does with your logs.
The evidence service redacts your logs at ingest and keeps them within your plan's cap. Each of these reads from it.
Findings first Ships today
What caused it, what it has cost so far, and the fixes ranked by evidence, then by how easy each is to undo.
Fix and Dismiss in one click Ships today
Fix runs the option you pick after you see every step. Dismiss asks for a reason, and the reason becomes a rule.
Performance per route Ships today
Percentiles per route per deploy, so a deploy that makes one route slower raises a finding with that route named.
Site security Ships today
Scanner and auth-failure bursts, and the requests a firewall denied or limited, per route, kept in Production. A change's page lists the routes its deploy first served that a firewall acted on. Attacks on your agents and their supply chain stay in AI Security.
What changed Ships today
Select a window on a chart and read which attribute moved against its baseline: route, region, release or source.
Production in the scorecards Ships today
Whether the changes each agent, model and skill wrote held up in production: the findings and rollbacks they caused and the cost of fixing them.
Every chart over 7 and 30 days Ships today
The window buttons move the overview and each site's own page to the last 7 or 30 days, one point per day, against the days before. Raw records are kept 30 days, so a 30-day window says the days before are not kept.
A band on every link, and no verdict it cannot back.
An association is not a cause
A metric that drops after a deploy reads as an association with that deploy. A metric carries no source line, so no commit or session is blamed for it.
A collector's word is a lead
Every card reads Reported session followed by Unverified, whatever the collector claimed. It is where to start looking, not a finding.
A wrong name can be disputed
Each card offers Attribution is right and a dispute. After five verdicts on one band, the calibration panel shows that band's measured rate with a 95 percent interval.
Start with one question: what happened in this change?
Follow a sample case from the alert to the verified fix, then install RepoOps and arm your first source.