KB-61D0
GPT Review — P5 Schema Draft v0 Round 1
5 min read Revision 1
gptreviewdieu38p5schema-draftround12026-04-26
GPT Review — P5 Schema Draft v0 Round 1
Kết luận
P5 Draft v0 đúng hướng và đủ nền để tiếp tục, nhưng chưa nên upload KB nguyên trạng.
Trạng thái đề xuất: PASS có điều kiện — cần patch trước khi upload.
Điểm đạt
- Giữ đúng doctrine unit-centric: logical_unit là identity, unit_version là content.
- Publication không chứa content inline; membership trỏ unit_version.
- Không tạo label registry song song; dùng Đ24 entity_labels.
- section_type tách khỏi Đ24 classification label.
- Qdrant/vector giữ projection-only.
- Change-set/APR chỉ hook, không redesign Đ32.
- Không apply SQL production, không migration thật.
Rủi ro/xung đột cần sửa
doc_codeđang bị mô tả là “Classification label canonical document”, dễ mâu thuẫn với chính CI-4/Đ24. Phải đổi thành structural/document-lineage binding, không phải classification label.logical_unit.doc_codeFK tớipublication.doc_codekhông ổn vìpublication.doc_codekhông unique khi có nhiều versions. Cần thêm khái niệmpublication_series/publication_identityhoặc ghi rõ FK này deferred/open decision. Không được FK trực tiếp vào non-uniquepublication.doc_code.- Bảng
published_snapshot_memberdùng cho cả proposed publication có thể trỏ draft; tên “published” gây lệch nghĩa. Đề xuất đổi thànhpublication_memberhoặc phân biệtpublication_memberdraft/proposed vàpublished_snapshot_memberenacted snapshot. unit_version.lifecycle_statuscóretired; retire thường là trạng thái của logical_unit. Unit_version nên chủ yếu draft/enacted/superseded/withdrawn/archived; logical_unit mới retired. Nếu giữ retired ở unit_version phải giải thích rõ.body_hashchỉ hash body, trong khi title/description/profile có thể ảnh hưởng content/review. Nên đổi thànhcontent_hashhoặc thêmbody_hash+metadata_hash.- Profile metadata chỉ đặt trên
unit_version; C2/L3 nói metadata áp cho document/publication, unit, component, relation. P5 v0 có thể giới hạn Unit/Publication/Metadata slice nhưng cần nói rõ profile_data ở publication/logical_unit/unit_version phân tầng thế nào, không để hiểu mọi profile chỉ sống ở unit_version. - Vector hooks chỉ có status trên unit_version, chưa có nơi biểu đạt nhiều chunks trong một unit_version. Cần thêm
vector_projection_manifest/unit_version_chunk_manifestở mức concept hoặc ghi rõ thuộc P6 nhưng P5 phải có hook đủ để kiểm CI-2. section_type_vocabvàpublication_type_vocablà registry/vocabulary mới. Phải nói rõ đây là controlled vocabulary cho structural metadata, không thay thế Đ24 taxonomy/entity_labels. Nếu một value cần pivot cross-system thì map/sync sang Đ24 qua rule riêng.tiertrên logical_unit là TEXT derived, nhưng chưa nêu source/rule. Nên đểtiernullable derived/cache hoặc chuyển sang computed/materialized view; không để agent manual.- “Agent chuyển thành DDL thật tại P6” sai roadmap. P6 là checker/DOT design. DDL thật chỉ sau P5 PASS và User duyệt implementation/migration path. Sửa câu mục tiêu.
change_set.apr_id UUIDcó thể sai kiểu với APR hiện hành. Ghi là opaque reference/foreign key to APR system, type xác định ở integration design.- Birth gate “description NOT NULL” cần đọc theo L3/C2: required theo profile/object family. Nếu tuyệt đối hóa sẽ mâu thuẫn với heading/container edge cases. Nên default required cho content-bearing unit; exception theo section_type.
Kiểm theo luật/nguyên tắc
- NT1/NT13: PASS nếu PG là SoT và Qdrant projection-only.
- NT11: PASS có điều kiện; cần tránh khai thừa label/doc_code/section_type trùng Đ24 hoặc PG catalog.
- NT2: PASS có điều kiện; birth gate/checker phải là cơ chế máy nhưng chưa chốt implementation.
- NT4: PASS có điều kiện; vocabulary/profile nên config/registration path, không hardcode vĩnh viễn.
- Đ24: PASS có điều kiện; không tạo label registry song song, cần làm rõ vocab structural khác label classification.
- Đ32: PASS; APR chỉ hook, không redesign.
- Đ33: PASS có điều kiện; không runtime vượt gateway hợp pháp, không apply SQL production.
- LSL-01/C1A: PASS có điều kiện; sửa doc_code wording, membership naming và vector chunk manifest.
Chỉ đạo Opus
Patch P5 Draft v0 trước khi upload. Không cần viết lại toàn bộ. Tập trung sửa 12 điểm trên, rồi trả bản v1 cho GPT review lại.
Sau khi patch
Nếu v1 đạt, upload KB tại knowledge/dev/laws/dieu38-trien-khai/P5-schema-draft-v0.md hoặc P5-schema-draft-v1.md tùy quy ước User chọn. Chưa làm SQL/apply/migration/DOT.