IU-0 Pack 2A — DOT Governance Registration Execution Pack (rev4)
IU-0 Pack 2A — DOT Governance Registration Execution Pack
Date: 2026-05-04 Status: DESIGN rev4 — chờ GPT/User approve dispatch Scope: Đăng ký information_unit + unit_version vào governance qua DOT tools Ranh giới: Không DDL. Không IU production rows. Không raw SQL INSERT. Không Directus exposure. Không Pack 2B/2C. Rev 2: source_kind native, bỏ raw DELETE rollback, description Đ3 §A.3, provenance PROV-DOT. Rev 3: Thêm Context Graph Gate (Đ20 §0 + Đ43). Rev 4: Thêm Birth Process Classification (Đ20 Process Resolver). STOP nếu IU rows >0. Decision basis: 12a + 12b + 12c + discovery report + GPT reviews + birth-process-v1.md
§0. Context Graph Gate — Điều 20 §0 + Đ43
PASS. Tham chiếu 12b-iu0-pack2a-context-graph-gate-application.md. Build 20260504-040018-372b48. 5 files, 10 luật, 0 red zone vi phạm.
§0A. Birth Process Classification — Process Resolver
Tham chiếu: 12c-iu0-pack2a-birth-process-classification.md + knowledge/ops/processes/birth-process-v1.md
Pack 2A không phải QT-001 (backfill — IU tables có 0 data rows, không có gì để backfill). Pack 2A không phải QT-002 (birth-first — không tạo entity mới, chỉ đăng ký bảng vào catalog).
Pack 2A = Readiness Governance Registration: đăng ký PG tables đã tồn tại vào collection_registry. Birth process cho collection_registry rows (COL-NNN) được trigger chain tự xử lý (gen_code → fn_birth_gate → fn_description_birth_guard → fn_birth_registry_auto → fn_auto_label_provenance).
STOP condition rev4: Nếu preflight phát hiện information_unit hoặc unit_version có >0 data rows → STOP. Phải reclassify sang QT-001/backfill analysis.
§1. Evidence summary
dot-collection-registerv1.1.0: active, paired, writes qua Directus API (Đ7 compliant)- Tool whitelists: source_kind
registry|native|derived|policy, storage_roleprimary|junction|log|system, governance_rolegoverned|observed|excluded - Description min_length: 30, auto-gen chỉ cho governed+empty
- IU MISSING: collection_registry=0, birth_registry=0, meta_catalog=0, directus_collections=0
- Raw SQL INSERT: BLOCKED. Admin fallback: unjustified.
§2. Legal basis
Đ2, Đ3, Đ4, Đ7, Đ14, Đ20 v1.2/NT15, Đ35 v5.2, Đ36, Đ43, Đ44, HP NT1/NT9/NT13. Process: birth-process-v1.md (QT-001/QT-002 — both N/A, readiness case).
§3. Parameter decisions
| Parameter | Giá trị | Lý do |
|---|---|---|
| governance_role | observed |
Pilot/readiness. HC-SCHEMA risk nếu governed. Nâng sau khi align description/species/HC-SCHEMA |
| migration_state | pilot |
IU-0 pilot, 0 rows |
| storage_role | primary (cả 2) |
Version domain data, không operational log |
| source_kind | native |
Application table. Preflight verify trước write |
| Directus exposure | NO | — |
| species | SKIP | observed không yêu cầu |
§4. Description — Đ3 §A.3
- information_unit:
[observed] Chứa đơn vị thông tin có version và identity_profile. Lớp Kho. Thuộc Đ44 (IU-0 pilot). FK anchor tới unit_version. - unit_version:
[observed] Chứa lịch sử version immutable cho information_unit. Lớp Kho. Thuộc Đ44 (IU-0 pilot). FK tới information_unit.
DOT-channel birth/basic (PROV-DOT). Đ3 C1–C4 ✅.
§5. Tool command plan
Phase 1: Preflight (read-only)
- Verify source_kind
nativeaccepted - IU chưa đăng ký collection_registry (0 rows)
- Rev4: IU data rows = 0 (
SELECT count(*) FROM information_unit; SELECT count(*) FROM unit_version;). Nếu >0 → STOP, reclassify QT-001 - --dry-run available?
Phase 2: Dry-run (nếu có)
Phase 3: Register (write)
/opt/incomex/dot/bin/dot-collection-register information_unit \
--governance_role observed --source_kind native --migration_state pilot --storage_role primary \
--description "[observed] Chứa đơn vị thông tin có version và identity_profile. Lớp Kho. Thuộc Đ44 (IU-0 pilot). FK anchor tới unit_version." --cloud
/opt/incomex/dot/bin/dot-collection-register unit_version \
--governance_role observed --source_kind native --migration_state pilot --storage_role primary \
--description "[observed] Chứa lịch sử version immutable cho information_unit. Lớp Kho. Thuộc Đ44 (IU-0 pilot). FK tới information_unit." --cloud
Phase 4: Verify (internal + external)
Phase 5: Trigger governance
§6. Rollback
Forward-only + --update. Raw DELETE = legal design riêng.
§7. Điều 20 v1.2
1 run ~5min. Internal + external evidence. Mini postmortem nếu STOP/fail.
§8. Report
Upload: knowledge/dev/laws/dieu44-trien-khai/reports/iu0-pack2a-dot-governance-registration-report.md
§9. Hard stop
Không Pack 2B/2C, CRUD, IU rows, outbox, Qdrant, Directus exposure, raw SQL.
§10. Follow-ups
| # | Follow-up | Blocking? |
|---|---|---|
| F1 | Nâng governed | Trước production |
| F2 | Species registration | Trước governed |
| F3 | Provenance PROV-AI | TD riêng |
| F4 | Duplicate birth triggers cleanup | Non-blocking |
| F5 | Tool whitelist gaps | Non-blocking |
| F6 | Birth path cho IU data rows (QT-002 hoặc Đ44-specific) | BLOCKING trước Pack 2B |
CHANGELOG
| Rev | Ngày | Thay đổi |
|---|---|---|
| 1 | 2026-05-04 | Draft — raw SQL, blocked |
| 2 | 2026-05-04 | DOT tools, source_kind native, Đ3 §A.3, forward-only rollback |
| 3 | 2026-05-04 | Context Graph Gate (12b) |
| 4 | 2026-05-04 | Birth Process Classification (12c). Process Resolver: Pack 2A = readiness registration, không QT-001/QT-002. STOP nếu IU rows >0. F6: birth path cho IU data rows blocking trước Pack 2B. |