# Make recovery proof: controlled failure and second whole run

This is a silent retrospective with descriptive captions. No speech or audio was recorded.

- 00:00:00.000 — Make's history records a one-credit reset, a 39-credit controlled failure and a 94-credit second whole run.
- 00:00:13.000 — The first manual attempt ended after 20 seconds. It used 39 credits and stopped before ROW-004's spreadsheet write.
- 00:00:25.000 — Module 40 returned the injected failure for ROW-004. The response says no spreadsheet write or receiver event was created there.
- 00:00:38.000 — At that checkpoint, ROW-001 to ROW-003 were saved. Seven new rows, including ROW-004, were still Ready.
- 00:00:52.000 — The second whole manual run reread the same batch. It finished in 49 seconds and used 94 credits.
- 00:01:03.000 — On attempt 2, module 40 returned HTTP 200 with ok true and decision allow. This was a new full run, not Replay.
- 00:01:15.000 — Module 42 then updated 'Make Orders'!A5:G5: one row, seven columns and seven cells.
- 00:01:25.000 — The final readback accounts for all 12 rows: six updates, four holds and two prior-batch rows unchanged.
- 00:01:34.000 — The two run attempts used 133 credits. With the reset, this controlled manual demonstration used 134.

The batch is `make-recovery-20260919-135520`. The reset run is `8e33b041b567448ebaf0559083a1700d`. It finished in two seconds and used one operation, one credit and 1.1 KB.

The failed run is `d15332248f6a466ea38610e1a0e68d48`. It finished in 20 seconds and used 39 operations, 39 credits and 26.8 KB. Module 40 returned the controlled conflict for ROW-004 attempt 1. The native response says that test call created no spreadsheet write and no receiver event.

The second whole manual run is `59b70d3ff7874144a480af744c7c1ed9`. It finished in 49 seconds and used 94 operations, 94 credits and 59.0 KB. This was a new full run that reread current state. It was not automatic recovery, Make Replay or incomplete-execution recovery.

The clip shows the module 40 controlled-failure response inside the 39-credit first attempt and the attempt-2 allow response inside the 94-credit second run. Those HTTP module operations are already included in their run totals and are not added again to the 134-credit demonstration total. No total endpoint-invocation audit was captured.

The first manual attempt saved ROW-001 to ROW-003 before ROW-004 stopped. The second attempt was a new whole manual run that reread current state. Module 40 allowed ROW-004 attempt 2. The selected module 42 output shows one update to `'Make Orders'!A5:G5`: one row and seven cells. The final exact readback shows six updated rows, four held rows and two prior-batch rows unchanged.

The failed and final tables are sanitized renderings of exact `Make Orders!A1:G13` readbacks. The live Lovable Viewer was unavailable, so the final scene is a sanitized exact saved-row readback. It is not live Viewer footage.

The kept native source ranges are `00:05–00:18`, `00:35–00:47`, `00:51–01:04`, `01:16–01:27`, `02:15–02:27` and `02:34–02:44`. The two saved-row scenes are held for 14 and 18 seconds. Hard cuts remove navigation and loading. Crops exclude the operator name, the HTTP input and endpoint, and the Google Sheet identifier.

No separate write-attempt audit was captured for ROW-001 to ROW-003 during the second run. The final values are consistent with rereading already-accounted rows, but this package does not prove that those three rows were not physically rewritten.

This proves one controlled two-attempt manual test on a fictional fixture. It does not establish automatic recovery, ongoing reliability, comparative ease, maintenance cost or future credit use. The package is prepared only for the private local comparison preview and not for public distribution.
