
========================================================================
  1. A destructive write is blocked (with a fix the agent can use)
========================================================================

  agent> UPDATE accounts SET balance = 0
  BLOCKED [WRITE_WITHOUT_WHERE]: UPDATE/DELETE has no WHERE clause and would affect every row in the table.
     fix: Add a WHERE clause that scopes the statement to the intended rows.

========================================================================
  2. The agent self-corrects using the suggested fix
========================================================================

  agent> UPDATE accounts SET balance = 0 WHERE id = 1
  OK: UPDATE 1 rows | reversible, undo id = 0080d2f3…

========================================================================
  3. A risky bulk write: blast radius measured, held for confirmation
========================================================================
  (ground truth: 19 rows have balance < 2000)

  agent> DELETE FROM accounts WHERE balance < 2000
  HELD FOR CONFIRMATION — blast radius: 19 rows
     (a human operator must approve before this commits)
  table still intact: 50 rows (nothing was deleted)

========================================================================
  4. An allowed write is undone with a single revert
========================================================================

  agent> UPDATE accounts SET balance = 999999 WHERE id = 2
  OK: UPDATE 1 rows | reversible, undo id = eb8ff112…
  balance of account 2 is now 999999
  revert(eb8ff112…) -> restored 1 row
  balance of account 2 is back to 200 (was 200)

========================================================================
  Done — blocked, self-corrected, previewed, and undone. No real data touched.
========================================================================
