Clone Extended SQL F_prod_01 — Production Ownership Seed Commit (self-guarding, gated; sha256 4bf60081…)
-- ============================================================================
-- F_prod_01 — PRODUCTION OWNERSHIP SEED COMMIT (SELF-GUARDING; GATED)
-- Target DB: directus (PRODUCTION)
-- Channel: ssh contabo -> docker exec -i postgres psql -U workflow_admin -d directus
-- -v ratified_apr=APR-BOOT-AUTHMODEL-1 -f -
-- Aborts unless: db='directus' AND os_proposal_approvals>=1 AND gap=210 AND own=0 AND conflict=0.
-- Effect on success: governance_object_ownership 0 -> 30; gap 210 -> 0.
-- ============================================================================
\set ON_ERROR_STOP on
\pset pager off
\echo ====================ENTRY_BASELINE==================== SELECT current_database() AS db, (SELECT count() FROM os_proposal_approvals) AS ospa, (SELECT count() FROM governance_object_ownership) AS own_entry, (SELECT count() FROM v_object_owner_gap) AS gap_entry, (SELECT count() FROM v_object_owner_conflict) AS conflict_entry;
BEGIN;
DO $$ DECLARE v_db text; v_ospa int; v_gap int; v_own int; v_conf int; BEGIN SELECT current_database() INTO v_db; IF v_db <> 'directus' THEN RAISE EXCEPTION 'WRONG DB: % (expected directus). ABORT.', v_db; END IF; SELECT count() INTO v_ospa FROM os_proposal_approvals; IF v_ospa < 1 THEN RAISE EXCEPTION 'GATE CLOSED: os_proposal_approvals=% (<1). ABORT.', v_ospa; END IF; SELECT count() INTO v_gap FROM v_object_owner_gap; SELECT count() INTO v_own FROM governance_object_ownership; SELECT count() INTO v_conf FROM v_object_owner_conflict; IF v_gap <> 210 THEN RAISE EXCEPTION 'PREFLIGHT DRIFT: gap=% (expected 210). ABORT.', v_gap; END IF; IF v_own <> 0 THEN RAISE EXCEPTION 'NOT A CLEAN SEED: ownership=% (expected 0). ABORT.', v_own; END IF; IF v_conf <> 0 THEN RAISE EXCEPTION 'PRE-EXISTING CONFLICT: %. ABORT.', v_conf; END IF; RAISE NOTICE 'GATE OPEN: db=% ospa=% gap=% own=% conflict=% — proceeding.', v_db, v_ospa, v_gap, v_own, v_conf; END $$;
INSERT INTO governance_object_ownership (object_type, object_ref, scope, owner_kind, owner_gov_code, is_inherited_anchor, lifecycle_status, approval_ref, source_design_ref, created_by) SELECT 'group', g.code, s.scope_code, 'accountable', g.owner, true, 'active', :'ratified_apr', 'F6-anchor-prod', 'F6_OWNERSHIP_SEED_COMMIT' FROM (VALUES ('GRP-GOVERNANCE','GOV-COUNCIL'), ('GRP-REGISTRY','GOV-KG-SYS'), ('GRP-AI','GOV-DOT'), ('GRP-BUSINESS','GOV-MOIT'), ('GRP-WORKFLOW','GOV-DOT') ) g(code, owner) CROSS JOIN governance_responsibility_scope s WHERE s.status='active';
DO $$ DECLARE v_new int; v_gap int; v_conf int; BEGIN SELECT count() INTO v_new FROM governance_object_ownership WHERE created_by='F6_OWNERSHIP_SEED_COMMIT'; SELECT count() INTO v_gap FROM v_object_owner_gap; SELECT count(*) INTO v_conf FROM v_object_owner_conflict; IF v_new <> 30 THEN RAISE EXCEPTION 'EXPECTED 30 anchors, got %. ABORT.', v_new; END IF; IF v_gap <> 0 THEN RAISE EXCEPTION 'EXPECTED gap 0, got %. ABORT.', v_gap; END IF; IF v_conf <> 0 THEN RAISE EXCEPTION 'EXPECTED conflict 0, got %. ABORT.', v_conf; END IF; RAISE NOTICE 'PRE-COMMIT OK: new=30 gap=0 conflict=0 — committing.'; END $$;
COMMIT;
\echo ====================POST_COMMIT_VERIFY==================== SELECT (SELECT count() FROM governance_object_ownership) AS own_after, (SELECT count() FROM v_object_owner_gap) AS gap_after, (SELECT count() FROM v_object_owner_conflict) AS conflict_after, (SELECT count() FROM event_outbox WHERE event_domain='governance') AS gov_emit; \echo ====================DONE====================