KB-4552

Read-Only birth_registry Trigger-Map Recheck (2026-06-18)

5 min read Revision 1
laws-newR2-B2birth-registrytrigger-mapread-only-evidencefresh-readonlydesign-onlynon-authorizing2026-06-18

Read-Only birth_registry Trigger-Map Recheck

Date: 2026-06-18 · Workstream: LEGO-PILOT-SLICE-0-R2-B2-READONLY-EVIDENCE-OWNER-PATH-MACRO-2026-06-18 (Deliverable 7 of 30) · Editorial revision: rev1 Class: read-only birth-lane evidence (trigger map) · READ-ONLY · NON-ENACTING · NON-AUTHORIZING · NOT technical design · NO trigger change · NO write performed.

Metadata convention. Editorial revision (rev1) only. AgentData storage revision/content_length authoritative at read time; not pinned here.

Trigger-map lock. This packet records the fresh read-only census of birth-related triggers on birth_registry. It enables/disables/creates nothing; it only reads pg_trigger.


0. Status and non-authorization

STATUS: PASS — engineering / read-only. The birth-trigger census is re-confirmed this run: birth INSERT triggers mint certified=false; the auto-certify consumer is present; no inspect-named producer trigger exists. Engineering PASS ≠ authority PASS. Default disposition: HOLD. No trigger enable/disable/create; no DB write/DDL/DML; no TD; no blocker resolved.

Evidence basis — FRESH_READONLY_EVIDENCE (FQ-7, FQ-8). Reading discipline: main process, no reader-agents.


1. Purpose

Census the birth triggers read-only: confirm the producer/consumer split (many INSERT triggers mint uncertified rows; one auto-certify consumer reads the stud; zero inspect-named producers). §4 records the counts.

The one rule: the trigger map proves the B2 gap structurally — births are minted continuously, but nothing writes the inspect_* stud. Reading the map changes no trigger.


2. Sources / evidence read

Deliverable 1 (FQ ledger); R2a (192 birth triggers carried; producer absent); Đ0-G (fn_birth_registry_auto design; "thêm cột = thêm inspector"). Read directly, main process.


3. Accepted baseline (carried)

R2a (INHERITED): 192 birth triggers (191 enabled) mint certified=false; inspect-named triggers = 0; the auto-certify consumer is live but starved. Đ0-G snapshot (2026-05-05): 162 instances (31 trg_birth_* + 131 legacy).


4. Read-only evidence observed (FRESH, 2026-06-18)

FQ-7 — pg_trigger (NOT internal), birth name patterns:

Pattern count enabled
birth_trigger_% (legacy) 131 131
trg_birth_% (DOT-119 v2) 40 40
inspect-named (%inspect%) 0
auto_certify (%auto_certify%) 1 (within trg_birth_%: trg_birth_auto_certify) 1

171 birth-pattern triggers, all enabled; 0 inspect-named producer triggers.

FQ-8 — consumer: trg_birth_auto_certify (tgenabled='O') on birth_registry.

Reconciliation with R2a's "192/191" (INHERITED): R2a counted 192 birth triggers via a broader filter; this run's pattern-scoped census (legacy + trg_birth_*) returns 171, all enabled, with the trg_birth_* family grown 31→40 since the Đ0-G 2026-05-05 snapshot and legacy stable at 131. The material facts are identical and unchanged: birth INSERT triggers mint certified=false, the auto-certify consumer is enabled, and inspect-named producer triggers = 0. The 171-vs-192 difference is a name-pattern/coverage scope difference, not a contradiction; a future read-only pass could enumerate every birth-relevant trigger by relation (tgrelid) to reconcile exactly.


5. Classification / result

  • Producer gap structurally confirmed (FRESH): 0 inspect-named triggers → nothing on the trigger layer writes the inspect_* stud.
  • Consumer live (FRESH): trg_birth_auto_certify enabled (reads stud → flips certified).
  • Mint continues (FRESH, via Deliverable 8): 171 enabled birth INSERT triggers default certified=false.

This corroborates G-2 (B3/B4) and the B2 MISSING gap; it closes no gate and changes no trigger.


6. Owner-gated future work

Future work Gate required Forbidden now?
Create/enable an inspection producer (trigger/runner) Điều 32 + S2 + channel Yes
Disable/alter any birth trigger Điều 32 Yes

7. What remains unresolved

  • The exact full birth-trigger count by relation (171 pattern-scoped vs R2a's 192) is a minor reconciliation owed to a future read-only pass — material facts unchanged.
  • Blockers — all OPEN.

8. Ready for GPT/Codex review

Yes — as a read-only trigger-map recheck.

Core rule: 171 birth-pattern triggers all enabled mint uncertified rows; the auto-certify consumer is enabled; 0 inspect-named producer triggers — the B2 gap is structural and FRESH-confirmed; no trigger changed.

Default disposition: HOLD. Engineering PASS ≠ authority PASS. All blockers remain OPEN.

Back to Knowledge Hub knowledge/dev/laws-new/newlaws/consolidation/readonly-birth-registry-trigger-map-recheck-2026-06-18.md