Slide 23 of 28
Part 4 — PreventionSlide 23
Slide 23 · MIT06 — Confirmation Gates for Destructive Operations
MIT06: Before irreversible code executes, the agent must stop and explicitly confirm with a human.
Not every code execution needs a confirmation gate. The ones that are irreversible, large-scale, or affect production always do.
What a confirmation gate is

A confirmation gate is a mandatory pause in the agent's execution flow where it presents what it is about to do and waits for explicit human approval before proceeding. The agent does not proceed autonomously — it halts until a human says "yes."

This is not the same as the agent asking "are you sure?" in natural language. It's a structured workflow pause with a specific confirmation action (button click, explicit "approve" command) that is logged and auditable.

When a confirmation gate is required

Irreversible operations: Any code that deletes data, drops tables, removes files, deregisters services, or terminates processes. Anything where "undo" is not available or requires significant recovery effort.

Production-scoped operations: Any code that runs against a production system rather than a development or staging environment. The production/non-production boundary should be a hard gate.

Bulk operations: Any code whose effect scales with data size — DELETE WHERE, bulk file operations, mass API calls. The potential impact is unbounded without explicit scope confirmation.

Elevated permission operations: Any code that uses credentials, IAM roles, or API keys with write or admin permissions. Read-only operations on sandboxed data can be autonomous; write operations with elevated access cannot.

The agent's responsibility in a confirmation gate

The agent should present: what it will do (the specific code or operation), what systems it will affect (production database X, files in directory Y), what the scope is (estimated rows affected, files matched), and whether it is reversible (with what backup or rollback path). The human approves or declines with full information.

← Back MIT08 + MIT09 — Logging and Code Scanning →