IU Birth Philosophy — P2B-P1 Interpretation + Next Direction
IU Birth Philosophy — P2B-P1 Interpretation + Next Direction
Date: 2026-05-05 | Status: CLARIFICATION NOTE Authority: User directive + GPT review + QT-002 (birth-process-v1.md) + birth-procedures v3.1
§1. P2B-P1 PASS — tóm tắt kỹ thuật
- 1 IU + 1 UV created trong single transaction
- Birth trigger (
trg_birth_information_unit) fire tự động entity_code = information_unit::3ffbbaa5-f22a-4df4-8bc6-c27eab2787fe- UV subordinate — no birth row (đúng)
- fn_hash, trigger count unchanged
- All 9 checks PASS
§2. P2B-P1 là test harness, KHÔNG PHẢI quy trình vận hành
P2B-P1 chứng minh: dây chuyền IU+UV+birth trigger chạy được.
P2B-P1 KHÔNG phải mẫu: cho Agent tương lai lặp lại.
Những bước thủ công trong P2B-P1 (query vocab, build JSON, compute hash, manage transaction, link anchors) là diagnostic steps, không phải operational workflow. Agent tương lai không cần biết và không nên làm những bước này.
File 19 (Pack 2B design) và prompt P2B-P1 phải được hiểu là test artifacts. Nếu bất kỳ tài liệu tương lai nào tham chiếu P2B-P1 như "quy trình tạo IU", đó là SAI.
§3. Quy trình khai sinh đúng — QT-002
Quy trình đã enacted tại knowledge/ops/processes/birth-process-v1.md (QT-002):
Triết lý: Khai sinh TRƯỚC, tạo thực thể SAU.
- Kiểm tra loài (species_collection_map)
- INSERT birth_registry TRƯỚC (= "giấy phép sinh")
- INSERT thực thể SAU (dùng birth code)
- Xác nhận khớp (cả 2 tồn tại)
- Birth trigger fire → ON CONFLICT DO NOTHING (belt-and-suspenders)
P2B-P1 đi ngược bước 2-3: tạo entity trước, trigger tạo birth sau. Đúng kỹ thuật (trigger đảm bảo birth luôn tồn tại), nhưng không đúng triết lý QT-002.
§4. Phân biệt: bug code/tooling vs bug quy trình
| Vấn đề | Loại | Cách xử lý |
|---|---|---|
| Agent phải tự query vocab, build JSON, compute hash | Bug tooling | Tạo DOT tool wrap tất cả |
| Agent phải tự manage transaction + link anchors | Bug tooling | DOT tool tự xử lý circular FK |
| IU chưa có DOT tool tạo entity | Bug tooling | Tạo dot-iu-create |
| Trigger fire SAU entity thay vì birth TRƯỚC entity | Khác biệt nhỏ vs QT-002 | Có thể chấp nhận (trigger = safety net) hoặc DOT tool implement QT-002 full |
| L1/L2 birth gates hoạt động | KHÔNG phải bug | Đúng thiết kế |
| Birth trigger auto-fire | KHÔNG phải bug | Đúng thiết kế — đây là "buộc giấy vào chân em bé" |
Quy trình khai sinh (QT-002) KHÔNG CẦN SỬA. Chỉ cần tạo tooling cho IU.
§5. DOT hai chiều — kênh chính + động cơ phụ + cảnh báo
5.1 Nguyên tắc chung (không riêng IU)
Mọi lifecycle quan trọng trong Incomex phải có:
- Kênh chính (main engine): happy path, xử lý bình thường
- Động cơ phụ (auxiliary engine): xử lý khi thực tế bypass/lỗi kênh chính
- Cảnh báo sớm (warning signal): khi động cơ phụ phải chạy = tín hiệu system health có vấn đề, KHÔNG nhất thiết là data corruption
Động cơ phụ chạy = hệ thống vẫn hoạt động (self-healing), nhưng cần điều tra tại sao kênh chính bị bypass.
5.2 Birth-specific mapping
| Vai trò | Cơ chế | Evidence |
|---|---|---|
| Main engine | QT-002 khai rồi mới sinh (birth-first canonical) | birth-process-v1.md, birth-procedures.md v3.1 |
| Safety belt | fn_birth_registry_auto trigger auto-birth on INSERT |
DOT-119 v2, 31 triggers |
| Auxiliary engine | QT-001 retrofit/backfill scan cho entity đã sinh nhưng thiếu birth | dot-birth-backfill, birth-process-v1.md |
| Orphan detector | Entity không có birth_registry sau cả hai kênh | Điều 19 Orphan Scanner (Side B), fn_registry_health() |
| Ghost detector | birth_registry/traces còn lại cho entity đã xóa/retired | QT-006 khai tử, fn_registry_health() |
| Warning signal | auxiliary/backfill count, orphan count, ghost count | fn_registry_health() gap detection |
5.3 Monitoring/alert requirements (future tooling)
Reporting cần phân biệt:
- Main path success count (QT-002 birth-first)
- Trigger-created-birth count (safety belt fire — birth chưa có trước INSERT)
- Auxiliary/backfill count (QT-001)
- Orphan count (entity không birth)
- Ghost count (birth không entity)
Đây là health signals. Trigger-created-birth cao = main path bị bypass nhiều = cần điều tra tool/workflow.
§6. dot-iu-create — wrapper kênh chính, KHÔNG phải quy trình mới
dot-iu-create KHÔNG phải quy trình khai sinh mới. Nó là wrapper/tool đóng gói kênh chính (QT-002) cho IU family.
Tool phải:
- Implement QT-002 canonical path: khai birth TRƯỚC → tạo entity SAU
- Dựa vào trigger như safety belt (ON CONFLICT DO NOTHING nếu birth đã khai)
- Report nếu trigger phải tự tạo birth thay vì chỉ confirm birth đã khai trước
- Tự validate vocab, tính hash, link anchors, manage transaction
- Agent chỉ truyền params tối thiểu, KHÔNG cần biết internal mechanics
dot-iu-create \
--canonical-address=... \
--title="..." \
--body="..." \
--unit-kind=law_unit \
--section-type=article \
--owner=system
§7. KHÔNG sáng tạo quy trình khai sinh thứ ba
- KHÔNG thay QT-001 (backfill) hoặc QT-002 (birth-first)
- KHÔNG biến P2B-P1 test harness thành quy trình thứ ba
- Hardcode còn lại = bug code/tooling, refactor DƯỚI quy trình hiện có (evidence: DOT-119 v1→v2 repair, metadata-driven redesign)
- IU không đặc biệt — tuân thủ cùng triết lý khai sinh như 166 collections khác
Superseding / clarification cho tài liệu test
| File | Clarification |
|---|---|
design/19-iu0-pack2b-* |
Test design. Không phải operational process reference. |
prompts/19-p2b-p0-* và prompts/19-p2b-p1-* |
Test prompts. Không phải mẫu cho Agent vận hành. |
reports/19-p2b-p0-* và reports/19-p2b-p1-* |
Test evidence. Chứng minh pipeline chạy, không phải SOP. |
§8. Evidence dẫn chiếu
| Document | Path | Vai trò |
|---|---|---|
| QT-001/QT-002 canonical | knowledge/ops/processes/birth-process-v1.md |
Quy trình khai sinh gốc |
| QT-001→006 unified | knowledge/dev/architecture/birth-procedures.md v3.1 |
Quy trình quản lý thực thể đầy đủ |
| Điều 0-G Birth Registry Law | knowledge/dev/architecture/birth-registry-law.md |
Luật khai sinh |
| Điều 19 Orphan Scanner | knowledge/dev/laws/law-19-orphan-scanner.md |
Orphan detection (Side B) |
| DOT-119 v2 | /opt/incomex/dot/bin/dot-birth-trigger-setup |
Trigger installer (metadata-driven) |
| fn_birth_registry_auto | PG function, 31 triggers | Safety belt — auto-birth on INSERT |
| fn_registry_health | PG function | Gap detection (orphan/ghost) |
§9. Next direction
- KHÔNG mở Pack 2C — chốt triết lý tooling trước
- Thiết kế
dot-iu-create— wrapper QT-002 cho IU, KHÔNG phải quy trình mới - Nếu cần thêm evidence về birth pipeline hiện tại (tools nào đã implement QT-002, hardcode còn ở đâu, backfill coverage), dispatch Agent điều tra read-only
- GPT/User review note rev2 trước khi tiếp
IU Birth Philosophy note rev2 | 2026-05-05 | P2B-P1 = test harness. QT-002 = canonical. DOT hai chiều. Next = dot-iu-create wrapper.