For platform and SRE teams shipping AI-generated code

Autonomous AI SRE that prevents production SEVs.

An autonomous SRE control plane for the whole path a change takes: pre-commit, pre-production, and production.

When a SEV fires, Odonat names the commit that caused it and hands you a precise git revert, in under a minute, with the evidence to prove it was the right one.

Deterministic

No model anywhere in the decision path. Every rule is a comparison you can check by hand, and a test pins each one.

Bounded

A compiled allowlist bounds what it may ever do. It will not open a pull request against your database unless you have said so.

Accountable

One evidence record per decision. Re-derive any verdict yourself, months later, without asking us anything.

helm install odonat ./odonat -n odonat-system -f values.override.yaml
odonat-system / interactive consoleLIVE

See how Odonat names the commit behind a P0 latency spike, and writes the revert.

p99 850mscausal engine isolates 8f2a1b3revert merged

Open the demo
Live control plane
Three packets, one 12 second cycle
Pre-Commit
roadmap · not built
Deployment Pipeline
roadmap · not built
Production
Correlate · revert PR
BLOCKED
HALTED · 1%
Hardcoded secret
p99 +5% regression
Verified PR
Blocked pre-merge (roadmap, not built)
Halted at a canary (roadmap, not built)
Shipped, then correlated to the commit that broke it
The console

Three views of the console. In the second, Odonat stops and asks a human.

A connection pool cut from 100 to 5 ships on a Friday afternoon and resolves in 8.4s. That is the easy case. The harder one is 81% confidence: below the threshold, so nothing executed and an engineer got a decision instead of an incident.

odonat-system/acme-prod
Eliminated 2·Window last 24h·SAMPLE
P0PaymentService p99 latency 850ms, threshold 300ms
Causal confidence90%
Above the 85% autonomy threshold, acted automatically
Telemetry trace
02:14:06Alertmanager504 Gateway Timeout, 12.4% of requests
02:14:06RDSConnection pool exhausted, 5/5 in use
02:14:07Odonatalert polled, candidates listed from the Kubernetes API
02:14:09OdonatCorrelated 3 deploys in window, ranked by blast path
02:14:11OdonatCulprit identified, confidence 90%
Blast radius 1.2% of us-east-1 traffic, contained
Culprit: PR #4021, commit 8f2a1b
services/payments/config.yaml
database:
host: payments-primary.internal
- pool_size: 100
+ pool_size: 5exhausted under peak load
timeout_ms: 2000
Revert PR #4022 drafted and merged. Pool size restored to 100.
Detected to resolved 8.4s·Signed to SIEM
The moat

Envoy Security Proxy: Enterprise Data Never Leaves Your VPC.

Every byte bound for the reasoning engine passes through an Envoy sidecar inside your cluster. Credentials and connection strings are replaced with fixed markers. Code structure and stack geometry pass through untouched, because that is the part the model actually reasons over.

RawAWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCY
Scrubbed[HASH_AWS_KEY_0x21C8]
Rawpostgres://admin:s3cr3t_p@db.internal:5432/payments
Scrubbed[HASH_DB_CONN_0x9F41]
Rawuser_email="navdeep@acme-corp.com"
Scrubbed[HASH_PII_EMAIL_0x77B2]
RawBearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
Scrubbed[HASH_JWT_0x0E5A]
Rawpool_size: 5 // was 100
Scrubbedpool_size: 5 // was 100
Rawat PaymentService.acquire (pool.go:184)
Scrubbedat PaymentService.acquire (pool.go:184)

The two highlighted rows are byte-identical on both sides. Anyone can redact a password; preserving code geometry while removing every secret is the part that makes the causal analysis possible at all.

Trust signal

When Odonat Refuses to Act.

Production is messy. If our causal engine cannot isolate a single culprit with ≥ 85% confidence, Odonat safely fails closed. We refuse to hallucinate or guess. Instead, the system immediately pages the human on-call via Slack with the candidates it considered and why it eliminated the rest.

Odonat is wrong

It reverts a commit that was not the cause.

You lose a deploy, not data. The allowlist contains only reversible operations: a wrong revert is undone by reverting the revert, through the same pull request flow, with the reasoning attached. It never touched a schema, a table or a namespace, because it cannot.

Odonat is down

The agent crashes, or you uninstall it mid-incident.

Nothing in your delivery path depends on it, because nothing in your delivery path calls it. Odonat sits beside production and polls Alertmanager; it is not in CI and not in the merge path. If the agent stops, alerts fire exactly as they did before you installed it and nobody is blocked. The failure mode is that you go back to finding the bad deploy by hand

The model provider is out

The upstream LLM is rate limited, degraded, or unreachable.

Nothing stops, because there is no model to be unavailable. Every stage (ingestion, correlation, the gates and the safety plane) is deterministic code with no inference call in it. There is no provider to be down, no rate limit to hit, and no behaviour that changes under you between one incident and the next.

Honest boundaries

What Odonat catches, and what it will never claim to.

An autonomous system that cannot state its own limits should not have write access to your production environment. Here are ours, in writing.

Odonat intercepts

  • An alert that names a service, where one workload of that service rolled out in the last half hour
  • Which of several changed services could have caused it, by eliminating everything that shipped after the symptom started
  • Deployments, DaemonSets and Argo Rollouts, where reverting the commit restores the previous spec
  • A commit already reverted, which is adopted rather than opened a second time

Odonat does not

  • Anything before a merge. There is no traffic capture, no replay and no CI integration
  • Hardcoded secrets or vulnerable dependencies. Odonat runs no scanner of any kind
  • A change that is not a manifest change, such as a runtime config push or a feature flag
  • Gradual degradation with no identifiable start, because elimination needs a symptom start time
  • Business logic that passes every test and degrades no metric, such as a 5% discount where policy allowed 10%
  • Physical datacenter failures, fibre cuts, region-wide hypervisor crashes
  • Zero-day kernel exploits before a CVE signature exists
  • Cosmetic CSS and typography bugs that alter no request and no log line

Dogfooding·Odonat is currently dogfooding on live production traffic, successfully gating deployments and managing telemetry for an active AI-powered platform with real users.

Put it in front of your worst incident.

Runs entirely inside your VPC with zero inbound ports. Bring the last SEV your team post-mortemed and we will walk the causal graph against it.