KB-3646

18c — IU Birth Trigger Install Report

4 min read Revision 1
18ciu-birth-triggerdot-119installreportpass

18c — IU Birth Trigger Install Report

Date: 2026-05-05 Controlling: 18c rev2 prompt + 18a rev4 + 18b rev3 + DOT-119 v2.0.0 Status: PASS — install verified, no rollback


§1. Preflight

DOT-119 v2 behavior

Check Value
Path /opt/incomex/dot/bin/dot-birth-trigger-setup
Size 14417 bytes
md5 5883bce405b86ab436e885cf16fd22de
CREATE OR REPLACE FUNCTION fn_birth_registry_auto count 0 ✓
KNOWN_V2_FN_HASH count 0 ✓
--help exit 0, prints v2.0.0

Metadata + table

Check Expected Actual
collection_registry (information_unit) synthetic_id | NULL | manual synthetic_id | (empty) | manual
Table exists 1 1 ✓
IU rows 0 0 ✓
Existing trigger trg_birth_information_unit 0 0 ✓

Baselines

Metric Baseline
fn_birth_registry_auto md5 1f729b3571a74963089bb3ef388217f3
Trigger count (trg_birth_%) 30
IU birth count (collection_name='information_unit') 0
Total birth count 75619

§2. Dry-run

{"status":"dry-run","exit_code":0,"collection":"information_unit","strategy":"synthetic_id","code_column":"","trigger_name":"trg_birth_information_unit","function":"fn_birth_registry_auto","args":"'__birth_synthetic_id__'","trigger_exists":false,"proposed_sql":"CREATE TRIGGER trg_birth_information_unit AFTER INSERT ON public.information_unit FOR EACH ROW EXECUTE FUNCTION fn_birth_registry_auto('__birth_synthetic_id__');","fn_hash":"1f729b3571a74963089bb3ef388217f3","synthetic_capability":"pass"}

Gates: strategy=synthetic_id ✓ · args='__birth_synthetic_id__' ✓ · synthetic_capability=pass ✓ · trigger_exists=false ✓ · proposed_sql OK ✓ · exit 0 ✓.


§3. Execute

BEGIN
WARNING:  [TRIGGER-GUARD] DDL detected: CREATE TRIGGER on trg_birth_information_unit on public.information_unit
CREATE TRIGGER
COMMIT
{"status":"success","exit_code":0,"collection":"information_unit","trigger_name":"trg_birth_information_unit","strategy":"synthetic_id","fn_hash":"1f729b3571a74963089bb3ef388217f3"}

Exit 0 ✓.


§4. DOT-119 verify

{"status":"verified","exit_code":0,"collection":"information_unit","trigger_name":"trg_birth_information_unit","function":"fn_birth_registry_auto","fn_hash":"1f729b3571a74963089bb3ef388217f3"}

Exit 0 ✓.


§5. Independent SQL trigger def

tgname                     | func                   | def
trg_birth_information_unit | fn_birth_registry_auto | CREATE TRIGGER trg_birth_information_unit AFTER INSERT ON public.information_unit FOR EACH ROW EXECUTE FUNCTION fn_birth_registry_auto('__birth_synthetic_id__')
(1 row)

Gates: 1 row ✓ · func = fn_birth_registry_auto ✓ · def contains '__birth_synthetic_id__' ✓.


§6. Post-verify invariants

Metric Baseline After Δ Verdict
fn_birth_registry_auto md5 1f729b3571a74963089bb3ef388217f3 1f729b3571a74963089bb3ef388217f3 0 ✓ no drift
Trigger count (trg_birth_%) 30 31 +1 ✓ exactly +1
IU birth count 0 0 0
Total birth count (audit only) 75619 75619 0 ✓ no drift
IU rows 0 0 0

§7. Rollback

  • rollback_happened: no
  • All post-verify gates passed; B4R not invoked.

§8. Hard boundaries confirmation

Boundary Confirmed
No raw CREATE TRIGGER / DROP TRIGGER ✓ (qua DOT-119 only)
No fn_birth_registry_auto edit ✓ (md5 unchanged)
No IU rows inserted ✓ (count 0 → 0)
No Pack 2B
No DDL khác
No P3 / HC

Verdict

PASS — trg_birth_information_unit installed via DOT-119 v2.0.0, all 18c rev2 gates green, no rollback, fn hash invariant held, IU pipeline ready cho insert đầu tiên.


18c install report | 2026-05-05 | Opus 4.7 (1M)