KB-2645
Lifecycle DDL Ratification · 05 Git Status + Commit Result
5 min read Revision 1
dot-iu-cutterv0.5lifecycle-ddl-ratificationgit-commitg5-passdieu442026-05-20
dot-iu-cutter v0.5 — Lifecycle DDL Ratification · Git Status + Commit Result
doc 5 of 6 · 2026-05-20
phase : G5 — commit local (no push/tag/deploy) outcome : PASS
1. Pre-commit state
repo_root : /Users/nmhuyen/iu-cutter-build/repo/iu-cutter
current_branch : feature/constitution-snapshot-mark-dryrun
HEAD_pre : 32cfa939ca4025242c14e5de945f2cd8d95b5205
main_pre : 32cfa939ca4025242c14e5de945f2cd8d95b5205 (HEAD == main)
working_tree_pre : clean
remote : none configured
2. Files staged
A sql/lifecycle/README.md
A sql/lifecycle/bundle_a_vocab_and_log.sql
A sql/lifecycle/bundle_b_immutability.sql
A sql/lifecycle/bundle_c_fn_iu_enact.sql
A sql/lifecycle/bundle_d_gateway_and_grants.sql
A sql/lifecycle/bundle_e_fn_iu_apply_edit_draft_patch.sql
A sql/lifecycle/fingerprints.yaml
A sql/lifecycle/rollback_runbook.sql
A sql/lifecycle/verify_behavioral_probes.sql
A sql/lifecycle/verify_postapply.sql
A sql/lifecycle/verify_preflight.sql
11 files; only additions; no Python or pre-existing file modified.
3. Commit
commit_sha : 1cd286e039357018c40a1281599e17961b848749
short_sha : 1cd286e
branch : feature/constitution-snapshot-mark-dryrun
parent : 32cfa93
files_changed : 11
insertions : 1335
deletions : 0
co_authored_by : Claude Opus 4.7 (1M context)
Commit message (subject + summary)
feat(sql/lifecycle): ratify M3a lifecycle DDL bundles A..E into operator-runbook track
Mirrors the sovereign-applied lifecycle substrate (v0.5 M3a-retry, 2026-05-20)
into a repo-tracked operator runbook for reproducibility. Bundles capture the
DDL byte-for-byte as stored in live PG: function bodies extracted from
pg_proc.prosrc and embedded in CREATE OR REPLACE statements; md5(prosrc)
matches the M3a-retry post-apply pins.
Full message includes the file inventory, fingerprint table, operator-runbook disclaimer, regression result, and a "no production DDL / no deploy / no remote push, no tag" affirmation.
4. Post-commit state
HEAD_post : 1cd286e039357018c40a1281599e17961b848749
main_post : 32cfa939ca4025242c14e5de945f2cd8d95b5205 (UNCHANGED)
main_equals_head_post : false (feature is ahead by 1 commit)
working_tree_post : clean
push_executed : false (no remote configured; not authorized anyway)
tag_created : false (not authorized)
deploy_executed : false (not authorized)
restart_executed : false (not authorized)
5. Recent commit ladder (post-commit)
1cd286e feat(sql/lifecycle): ratify M3a lifecycle DDL bundles A..E into operator-runbook track
32cfa93 feat(write-VERIFY/M2): add ledger_v2_canonical_verify DOT-992 recorder + tests
7133c44 feat(leg-B/M1): add ledger_v2_canonical_cut governed recorder + tests
6a56bc3 feat(canonical-path): add fn_iu_create canonical adapter + cutprod_canonical + tests
f20c79c feat(R1): add --mode production-leg-a-only + execute_leg_a_only seam (UB-2)
6. main-branch fast-forward feasibility (NOT executed)
ff_feasible : YES (linear; main is direct ancestor of feature)
ff_commands_NOT_executed:
- git checkout main
- git merge --ff-only feature/constitution-snapshot-mark-dryrun
- git checkout feature/constitution-snapshot-mark-dryrun
authorization_state : NOT_AUTHORIZED_BY_THIS_MACRO
note : Earlier M4-FF macro fast-forwarded main 4367c83→32cfa93
under a separate sovereign ruling. The same single-line
ruling pattern would apply here for 32cfa93→1cd286e.
That call is sovereign; this macro stops at the
feature-branch commit.
7. Reversal command (NOT executed)
reverse_command_if_needed :
- git checkout feature/constitution-snapshot-mark-dryrun
- git reset --hard 32cfa93 # destructive; ONLY under sovereign approval
files_to_restore_post_reset :
none (all 11 added files would be discarded; pre-commit state was clean)
8. Gate disposition
G5_clean_working_tree_pre : PASS
G5_files_staged : PASS (11/11 under sql/lifecycle/)
G5_commit_landed : PASS (1cd286e on feature branch)
G5_commit_message_self_contained : PASS (file inventory + md5 + disclaimer)
G5_main_unchanged : PASS (32cfa93)
G5_no_push : PASS (no remote configured)
G5_no_tag : PASS
G5_no_deploy_restart : PASS
G5_no_hooks_skipped : PASS
G5_no_amend : PASS (new commit, not --amend)
9. STOP
Local ratification commit landed. Proceed to doc 06 (final macro report).