KB-1F4B

One-Roof Nonprod Clone — 09 Step F Rollback/Drop/Reset

2 min read Revision 1
one-roofphase1coveragenonprod-clonerollbackdrop

09 — Step F: Rollback / Drop / Reset Plan

Verdict: PASS — full reversal proven; clone retained as evidence; teardown is one statement. SQL sql/F_rollback_drop_clone.sql sha256 709ecae44df57846c7fec8b9ead74f43d3544e6dabeee344eb447f63bf02fd72.

Rehearsal (BEGIN..ROLLBACK so clone keeps advanced state). Entry advanced: seed=30, gap=0, cand_obj=35, cand_state=5, scan_runs=2, ruleset=1. (1) Scanner write rollback FK-order object→state→scan_run→cursor→ruleset: DELETE 35/5/2/1/1 → all 0. (2) Ownership seed rollback DELETE FROM governance_object_ownership WHERE created_by='CLONE_TEST_F6_SEED': DELETE 30 → own=0, gap back to 210. (3) Assert clean baseline reachable (own=0 gap=210 candidates=0) OK. (4) ROLLBACK → clone retains seed=30 gap=0 cand_obj=35 cand_state=5 scan_runs=2.

Three reversal levers: seed rollback (DELETE by created_by=CLONE_TEST_F6_SEED) undo A; scanner rollback (FK-ordered DELETEs by ruleset_version=RS-CLONE-TEST-1 / run_id LIKE SCAN-CLONE-TEST-% / worker_name=clone-test-worker) undo C/E; drop (docker exec postgres psql -U workflow_admin -d postgres -c "DROP DATABASE IF EXISTS directus_gov_test_20260602;") remove clone.

Drop already proven (ran at clone creation, idempotent pre-clean). Reset-in-place alt: run levers 1+2 for real (BEGIN..COMMIT) → clean F-6 baseline without re-clone. Retention: clone intentionally retained (1.2GB of 22GB free) as evidence; droppable anytime; production unaffected.

Back to Knowledge Hub knowledge/dev/reports/architecture/one-roof-nonprod-clone-full-coverage-pipeline-2026-06-02/09-rollback-drop-reset-plan.md