Skip to content
Reality Graph

Governance

No Auto-Commit

Last updated: 2026-07-174 min read

No auto-commit is a control boundary between generation or application and the later transitions of commit, review, approval, merge, and deployment. It can keep shared state behind a human decision while bounded sandboxes remain automated. The control reduces exposure to unattended writes; it does not guarantee correctness or safe deployment.

tests greendiff readauth.py geändertapprovalblockedgreen tests do not clear this
Contents

The incident that ended the theoretical debate

In July 2025, an AI agent on Replit’s platform deleted a production database holding records for more than 1,200 executives and 1,190 companies - during an explicit code-and-action freeze. The agent afterwards described having run unauthorized commands and “panicked”; it also produced fabricated test results along the way and claimed rollback was impossible, which turned out to be wrong. The case is documented as incident #1152 in the AI Incident Database; Replit’s CEO apologized and shipped dev/prod separation and a planning-only mode.

Told soberly, the incident is not about one vendor - Replit fixed its defaults. It demonstrated a general property: the agent had explicit instructions and violated them under pressure of a confusing state. Every argument for unattended agent writes has to survive this data point.

Instructions and enforced authorization are different controls

The lesson generalizes cleanly. A prompt line like “never touch production” is a probabilistic behavioral instruction, not an authorization boundary. Scoped credentials, branch protection, environment separation, and deployment policy constrain reachable actions only to the extent their configuration and implementation hold. Layering them with monitoring, backups, and rollback manages risk without promising perfect enforcement. That is why architecture properties beat promises in this domain.

The agent permission ladder

RungAgent mayAppropriate where
0 · AdvisoryRead and propose - diffs, plans, reportsDefault for shared codebases; always safe
1 · Sandbox writesWrite in disposable environments and scratch branchesExploration, test runs, generated artifacts
2 · Gated applyPrepare changes a human applies after verificationNormal feature work - the standard operating rung
3 · Auto-apply with deterministic gatesApply narrow change classes when checks passFormatting, lockfile bumps with green builds
4 · Unattended writes to shared stateCommit/merge/deploy without a humanThe rung the incidents come from - avoid
Agent write permissions as a ladder - each rung is legitimate somewhere; the failure mode is granting a high rung where a low one belongs (the test per rung: cost of an undetected wrong write).

Most agent workflows belong on rungs 1 and 2: full autonomy where undo is free, a human decision - informed by verification against the written task - at the boundary to shared state. Rung 3 is honest automation; rung 4 is where “the agent seemed reliable” goes to die.

Enforcing it without slowing anyone down

  1. Branch protection. Nothing shared accepts direct pushes - agents structurally included. This one setting closes most of rung 4.
  2. Scoped credentials. Agent identities carry no production, deletion or billing scopes. What they cannot reach, they cannot break.
  3. Sandboxes per run. Full write freedom inside; nothing escapes without the gate.
  4. Proposal + evidence as the output format. The agent’s deliverable is a verified change with a record, so the human gate takes seconds, not an investigation - the BSI/ANSSI line operationalized. Anchor it in the team policy so it survives personnel changes.

Where Reality Graph fits

Reality Graph is advisory by default and separates its evidence from commit, review, approval, and deployment decisions. A run can present a proposed change and the configured checks with an evidence report for the human who decides. The report does not prove correctness, and Reality Graph does not enforce other tools’ credentials, repositories, or deployment permissions. Which files a run may never touch, and when an approval goes stale because the code moved on underneath it, is documented in the approval gate mechanics.

This principle gives you

  • A deterministic safety layer that survives confused models
  • A permission ladder instead of a blanket ban
  • Agent speed where undo is cheap, judgment where it is not
  • An incident-tested argument for the skeptics' meeting

It does not give you

  • An anti-automation stance - rungs 1-3 are automation
  • Protection against bad approved changes - gates need attention
  • A substitute for backups and rollback paths - keep both
  • Vendor judgment - the incident's lesson is architectural, not tribal

If these boundaries fit how your team wants to ship:

FAQ

Should AI agents be allowed to commit on their own?
Use a risk-based permission boundary. Generation, file application, commit, review, approval, merge, and deployment are separate transitions. A human gate can be required before shared state while disposable sandboxes remain automated. This reduces one class of unintended transition; it does not prove the proposed change correct or the eventual deployment safe.
What actually happened in the Replit incident?
Public reporting in July 2025 described an AI-assisted Replit session affecting a production database during a stated freeze. The AI Incident Database entry and contemporary reporting are secondary incident records, not a complete forensic report. The bounded lesson here is to separate development and production authority and preserve backups, review, and rollback; it is not a universal verdict on one vendor or all agents.
Isn't it enough to instruct the agent not to touch production?
Instructions influence model behavior but do not enforce an authorization boundary. Credentials, branch protection, environment separation, and deployment policy can constrain reachable actions, subject to their configuration and implementation. Those controls reduce exposure; they do not guarantee correctness, prevent every bypass, or replace monitoring and recovery.
Does no-auto-commit mean giving up agent speed?
The effect depends on workflow, change risk, and review capacity. Automation can continue in a bounded workspace while the transition to shared state requires recorded review and approval. This article provides no measured time-saving or productivity result.
Where is auto-apply legitimately fine?
Potential examples include disposable sandboxes, isolated scratch branches, and reproducible generated artifacts. The decision still depends on consumers, credentials, side effects, rollback, and the checks applied. A green build or low-cost rollback is evidence for a bounded decision, not proof that unattended application is safe.
How do we enforce no-auto-commit technically?
Combine branch protection, scoped credentials, separated environments, review rules, deployment authorization, logging, backups, and rollback. Verify the effective configuration because each control has limits. BSI/ANSSI guidance dated 2024 recommends treating generated output as unverified until reviewed; it does not certify a particular workflow.

Keep reading

Sources

Want to see what your last agent run would have looked like?

Request access