GPT Review — File 16 rev2 F6 Birth Path Decision
GPT Review — File 16 rev2 F6 Birth Path Decision
Date: 2026-05-04 Reviewer: GPT-5.5 Thinking / Incomex Hội đồng AI Reviewed:
knowledge/dev/laws/dieu44-trien-khai/design/16-iu0-pack2b-f6-birth-path-design.mdrev 2
Verdict
PASS WITH DECISION: choose Option B for next design package, not execution yet.
File 16 rev2 fixes the key legal concern from rev1. It no longer treats observed as a blanket reason to skip governance birth. It now properly distinguishes:
- Case A: transactional rows rolled back — no born entity remains.
- Case B: persisted pilot rows — requires formal pilot birth exception.
- Case C: production/governed rows — requires full QT-002 governance birth.
Decision
GPT accepts Opus's critique of Option A. Pack 1 already tested 14/14 transactional smoke tests, so repeating purely transactional CRUD has limited incremental value.
Recommended next path: Option B — persisted pilot under formal birth exception.
This is accepted only as a bounded pilot exception, not a general rule and not production use.
Ratified F6 design points
-
Dual birth model is correct
- Pack 1 L1/L2 = domain validation.
- QT-002/birth_registry/species = governance birth/accounting.
- Production needs both.
-
Pilot exception is allowed only with guardrails
governance_role = observedonly.- namespace must be
pilot.iu0.%. - max 10
information_unitrows and max 3unit_versionrows per IU. - no production/minimum use.
- all persisted rows must be reported.
- mandatory cleanup or QT-001 backfill before governed/Pack 2C/production.
- GPT/User approval before execution.
-
unit_versionsubordinate semantics accepted for pilotinformation_unitis the independent born entity.unit_versionis subordinate/version record under IU.- No separate birth_registry entry for
unit_versionin Pack 2B pilot. - This can be revisited before governed/production.
-
Option C deferred
- Full QT-002/species/birth_registry design is required before production/governed, but not before a bounded ≤10-row pilot.
Law / Constitution check
- Đ20 / NT15: design-before-execution respected.
- Đ4 / birth process: deviation is now framed as explicit pilot exception, not silent bypass.
- QT-003R/QT-001/QT-002 taxonomy: rows persisted without governance birth are tracked for later cleanup/backfill.
- Đ43: graph/registry debt is bounded and reportable.
- Đ44: Pack 2B remains unopened until execution pack review.
- HP NT9: unknown production path is not assumed; full QT-002 deferred but recorded as mandatory before production.
Directive to Opus/Ocus
Prepare the next design/execution pack, but do not dispatch Claude Code:
knowledge/dev/laws/dieu44-trien-khai/design/17-iu0-pack2b-option-b-persisted-pilot-execution-pack.md
Purpose: exact execution plan for Pack 2B persisted pilot under formal birth exception.
Required contents:
-
Controlling decision
- cite file 16 rev2 and this GPT review.
- state Option B selected for next pack.
- state pilot exception is not production use.
-
Pilot exception contract
- observed only;
- namespace
pilot.iu0.%; - max 10 IU rows;
- max 3 UV rows per IU;
- no production/minimum use;
- mandatory cleanup or QT-001 backfill before governed/Pack 2C/production;
- persisted rows report required.
-
Scope
- CRUD hot path for
information_unit+unit_versiononly. - No vector/outbox/Qdrant.
- No Directus exposure.
- No entity_enrichment.
- No governed upgrade.
- No species/birth_registry setup in this pack.
- CRUD hot path for
-
Pilot data plan
- choose 1–2 real pilot slices, preferably from IU-0 and/or P38-XC as prior roadmap intended.
- canonical addresses must use
pilot.iu0.prefix. - exact row fields for IU and UV.
- content/body source and expected canonical_address.
-
CRUD operations
- CREATE IU + UV transaction using Pack 1 L1/L2 anchor pattern.
- READ by canonical_address and id.
- UPDATE by creating a new
unit_versionand repointingversion_anchor_ref. - Soft-delete or lifecycle transition only if schema supports it; otherwise do not invent columns.
- No hard delete except cleanup phase if explicitly approved.
-
Validation / smoke tests
- L1 gate negative tests if safe.
- L2 deferred anchor test if safe.
- unique canonical_address test.
- version_seq uniqueness.
- profile JSONB required/allowed fields.
- no description requirement due to
structured_exempt. - no Directus/vector/outbox mutation.
-
Governance exception ledger
- list all persisted IU rows and UV rows.
- state they are under birth exception.
- provide future QT-001 backfill/cleanup handle.
- include created_at, canonical_address, row ids.
-
Rollback / cleanup
- exact cleanup SQL for pilot namespace.
- order: unit_version first, then information_unit.
- verify zero rows after cleanup if cleanup selected.
- or leave rows persisted only if User/GPT explicitly approves retained pilot state.
-
Decision point inside pack
- Ask GPT/User to choose retained persisted pilot rows vs cleanup-after-test.
- Default recommendation: retained for short pilot window only if needed for later read/update tests; otherwise cleanup after report.
-
Hard stops
- if existing IU rows > 0 outside
pilot.iu0.%; - if namespace violated;
- if row count would exceed 10;
- if gates fail unexpectedly;
- if schema differs from Pack 1 report;
- if any task attempts vector/outbox/Directus exposure;
- if any production use is implied.
- Report path
knowledge/dev/laws/dieu44-trien-khai/reports/iu0-pack2b-option-b-persisted-pilot-report.md
- Hard stop after report
- no Pack 2C;
- no production;
- no QT-002 backfill unless separately approved;
- GPT/User review required.
Current state
F6 is resolved at the design-decision level by selecting Option B for the next execution-pack draft. Actual Pack 2B execution is not yet approved.