KB-4590

dot-iu-cutter v0.4 PG-backed Dry-run — Planning Phase Report (2026-05-17)

4 min read Revision 1
dot-iu-cutterv0.4db-adapterdry-runreportdieu44

dot-iu-cutter v0.4 — PG-backed Dry-run PLANNING PHASE REPORT

Date: 2026-05-17 · Phase: v0.4 PG-backed dry-run DESIGN / COMMAND-REVIEW (planning only).

1. Outcome

Authored the complete planning package for the first PG-backed dry-run of the accepted RealPostgresAdapter (commit 56d3732, FINAL CODE PASS). Nothing was executed. No production connection, no secret read, no .env edit, no code change, no commit, no deploy, no CUT/VERIFY.

2. Deliverables (all in knowledge/dev/laws/dieu44-trien-khai/v0.4-db-adapter-dry-run/, rev 1)

Doc Content
…-design-master-2026-05-17.md Environment topology, psycopg3 strategy, harness wiring, 12-scenario catalogue, data lifecycle, DR-1…DR-8 open decisions
…-command-review-2026-05-17.md Proposed C-01…C-13 + gates G-01…G-13, abort matrix (NOTHING executed)
…-verification-plan-2026-05-17.md G-14…G-25, expected row-count matrix, false-negative defences, verdict rule
…-rollback-plan-2026-05-17.md L0–L3 rollback layers, exact-name teardown, net-zero closure criterion
…-risk-review-2026-05-17.md R1–R11 register, concentration control (G-10), residual class STANDARD
…-report-2026-05-17.md This report

3. Read-only grounding performed (no DB connection, no secret)

Host inspection only: docker container list (prod PG postgres = postgres:16, 127.0.0.1:5432, PG 16.13; 3 protected prior dry-run containers identified), df (32 GB free), python 3.12.3 + venv + pip 24.0 present, pg_dump/pg_dumpall 16.13 in prod container. No psql query against production, no .env read.

4. Key design positions (for GPT review)

  • Isolated postgres:16 env, fresh read-only pg_dump (workflow_admin), dry-run-equivalent roles with dry-run-only passwords (no prod SCRAM imported), G-10 DR-sysid≠PROD hard pre-write abort, no published port, ephemeral harness container (psycopg3 pinned, un-vendored, disposable), iu-cutter mounted read-only (phases.py/db_adapter.py unchanged), append-only teardown by env destruction (no DELETE/TRUNCATE), exact-name-only docker ops protecting prior envs.
  • Open decisions DR-1…DR-8 require GPT rulings (role strategy, harness locus, data lifecycle, idempotency framing, 42501 proof method, sslmode=disable, backup principal, retention).

5. Git SSOT compliance (mandatory completion fields)

  • Branch: main
  • Parent / accepted HEAD: 56d3732cb74d07546c938242180a434ed1067a9a (parent of that: 689e53e)
  • New commit hash: none — no code change this phase, no commit needed (planning/KB only)
  • Files changed: none in /opt/incomex/dot; 6 KB documents created in Agent Data
  • git status --short -- iu-cutter: empty (clean, == HEAD)
  • Test command & result: not applicable (no code change); last authoritative remains python3 -m unittest discover -s tests → 92/92 OK at 56d3732

6. Boundaries honoured

No dry-run execution · no production connection · no production secret read · no .env edit · no code commit · no production row writes · no CUT/VERIFY in production · no deploy · no self-advance.

7. Next gate

GPT review of this 6-document package (incl. DR-1…DR-8 rulings). Execution of the dry-run requires a separate explicit authorization after that review. No self-advance.

Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.4-db-adapter-dry-run/dot-iu-cutter-v0.4-pg-backed-dry-run-report-2026-05-17.md