echo "URL: $SUPABASE_URL" && echo "DB: $SUPABASE_DB_URL" | sed 's/:[^:@]*@/:****@/' && psql "$SUPABASE_DB_URL" -c "SELECT count(*) AS row_count FROM public.payments;" -c "SELECT * FROM public.incident_log;" -c "\d public.payments"
URL: https://<ref>.supabase.co
DB: postgresql://postgres.<ref>:<redacted>@aws-0-us-east-1.pooler.supabase.com:5432/postgres
row_count
-----------
80
(1 row)
id | ran_at | details
----+--------+---------
(0 rows)
Table "public.payments"
Column | Type | Collation | Nullable | Default
--------------+--------------------------+-----------+----------+---------
id | integer | | not null |
ref_code | text | | not null |
payer | text | | not null |
amount_cents | integer | | not null |
paid_at | timestamp with time zone | | not null |
Indexes:
"payments_pkey" PRIMARY KEY, btree (id)
pg_dump "$SUPABASE_DB_URL" --table=public.payments --data-only --column-inserts --on-conflict-do-nothing > /tmp/payments_backup.sql && echo "Backup done, size:" && wc -c /tmp/payments_backup.sql && head -5 /tmp/payments_backup.sql && echo "---" && tail -5 /tmp/payments_backup.sql
Backup done, size: 15077 /tmp/payments_backup.sql -- -- PostgreSQL database dump -- \restrict C7liheiyhLEBQOMrdrNZarEreN33aKqJxUXaGxVMPDl3zZzb2HSf9iweatkhVEw --- -- PostgreSQL database dump complete -- \unrestrict C7liheiyhLEBQOMrdrNZarEreN33aKqJxUXaGxVMPDl3zZzb2HSf9iweatkhVEw
grep -c "^INSERT INTO" /tmp/payments_backup.sql && grep "^INSERT INTO" /tmp/payments_backup.sql | head -2
80 INSERT INTO public.payments (id, ref_code, payer, amount_cents, paid_at) VALUES (1, '6C8935605030', 'Payer-caffc0dc43', 30036, '2026-03-01 00:07:00+00') ON CONFLICT DO NOTHING; INSERT INTO public.payments (id, ref_code, payer, amount_cents, paid_at) VALUES (2, '300351D74397', 'Payer-b964e8caa9', 101426, '2026-03-01 00:14:00+00') ON CONFLICT DO NOTHING;
psql "$SUPABASE_DB_URL" -c "SELECT md5(string_agg(row_hash::text, '' ORDER BY row_hash)) AS pre_fingerprint FROM (SELECT md5(ROW(id,ref_code,payer,amount_cents,paid_at)::text) AS row_hash FROM public.payments ORDER BY id) s;"
pre_fingerprint ---------------------------------- 5a7abe8b5c91bd2f5bbaca32d7677935 (1 row)
psql "$SUPABASE_DB_URL" -c "SELECT public.run_incident();"
run_incident ------------------- incident executed (1 row)
psql "$SUPABASE_DB_URL" -c "SELECT count(*) FROM public.payments;" -c "SELECT * FROM public.payments LIMIT 5;" -c "SELECT * FROM public.incident_log;"
count
-------
54
(1 row)
id | ref_code | payer | amount_cents | paid_at
----+--------------+-----------+--------------+------------------------
1 | 6C8935605030 | CORRUPTED | 0 | 2026-03-01 00:07:00+00
2 | 300351D74397 | CORRUPTED | 0 | 2026-03-01 00:14:00+00
4 | FD441D715532 | CORRUPTED | 0 | 2026-03-01 00:28:00+00
5 | 49C2E5E745B1 | CORRUPTED | 0 | 2026-03-01 00:35:00+00
7 | E4006BBC4247 | CORRUPTED | 0 | 2026-03-01 00:49:00+00
(5 rows)
id | ran_at | details
----+-------------------------------+--------------------------------------
1 | 2026-07-24 05:52:04.652809+00 | payments corrupted by incident drill
(1 row)
psql "$SUPABASE_DB_URL" -c "TRUNCATE TABLE public.payments;" && psql "$SUPABASE_DB_URL" -f /tmp/payments_backup.sql
TRUNCATE TABLE SET SET SET SET SET SET set_config ------------ (1 row) SET SET SET SET INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1 INSERT 0 1
psql "$SUPABASE_DB_URL" <<'EOF' SELECT count(*) AS row_count FROM public.payments; SELECT md5(string_agg(row_hash::text, '' ORDER BY row_hash)) AS post_fingerprint FROM ( SELECT md5(ROW(id,ref_code,payer,amount_cents,paid_at)::text) AS row_hash FROM public.payments ORDER BY id ) s; SELECT * FROM public.incident_log; SELECT * FROM public.payments LIMIT 5; EOF
row_count
-----------
80
(1 row)
post_fingerprint
----------------------------------
5a7abe8b5c91bd2f5bbaca32d7677935
(1 row)
id | ran_at | details
----+-------------------------------+--------------------------------------
1 | 2026-07-24 05:52:04.652809+00 | payments corrupted by incident drill
(1 row)
id | ref_code | payer | amount_cents | paid_at
----+--------------+------------------+--------------+------------------------
1 | 6C8935605030 | Payer-caffc0dc43 | 30036 | 2026-03-01 00:07:00+00
2 | 300351D74397 | Payer-b964e8caa9 | 101426 | 2026-03-01 00:14:00+00
3 | 381DA59BBE42 | Payer-77e253b14e | 484618 | 2026-03-01 00:21:00+00
4 | FD441D715532 | Payer-e8610229a5 | 470397 | 2026-03-01 00:28:00+00
5 | 49C2E5E745B1 | Payer-9719c24260 | 193265 | 2026-03-01 00:35:00+00
(5 rows)
8 earlier narration turn(s) are in the raw transcript.
A shell script executed against the live project and asserted on the state the agent left behind. No model judged another model.
Raw transcript · Task definition and verifier · Every attempt