KB-1917 rev 2
APR Decision Package — FAC-07/08/09 (APPROVED)
4 min read Revision 2
APR Decision Package — FAC-07 / FAC-08 / FAC-09
ID: P9-E4-FACETS-D38 Phase: P9 Entry Gate, E4 → APR Decision Trạng thái: ✅ APPROVED — 3/3 candidates approved Phiên: S183 | Ngày: 2026-04-27 Prerequisite: E4 v0.2 GPT PASS Scope: taxonomy_facets ONLY. Không taxonomy_labels. Không entity_labels.
1. Tóm tắt cho User/Council
Hệ thống "Text as Code" (Đ38) cần phân loại mỗi miếng tài liệu theo 3 góc nhìn. Hiện có 7 loại nhãn (FAC-01→06 + FAC-PROV). Cần thêm 3 loại mới:
| # | Code | Tên | Ý nghĩa |
|---|---|---|---|
| 1 | FAC-07 | Thuộc tài liệu nào? | Miếng này đến từ tài liệu gốc nào |
| 2 | FAC-08 | Chủ đề nội dung? | Miếng này nói về gì |
| 3 | FAC-09 | Tầng kiến trúc? | Miếng này thuộc tầng nào |
Đây CHỈ là đăng ký "loại nhãn" (facets). Giá trị nhãn cụ thể (labels) cần đơn riêng sau.
2. Quyền quyết định
User/Council có 4 lựa chọn cho MỖI candidate:
| Quyết định | Ý nghĩa | Hành động sau |
|---|---|---|
| Approve | Tạo đúng như đề xuất | E5 tạo facet qua Directus API |
| Modify | Đổi code/tên/mô tả rồi tạo | E5 tạo theo bản sửa, update P8 §5.1 |
| Reject | Không tạo | Thiết kế lại, update P8 §5.1 |
| Defer | Chưa quyết | Giữ nguyên, hỏi lại sau |
3. Machine-readable Decision Form
{
"apr_package_id": "P9-E4-FACETS-D38",
"scope": "taxonomy_facets_only",
"labels_in_scope": false,
"entity_labels_in_scope": false,
"candidates": [
{
"code": "FAC-07",
"name": "Thuộc tài liệu nào?",
"description": "Phân loại text unit theo document source gốc. Áp dụng cho D38 Text as Code logical units.",
"decision": "approve",
"modified_values": null
},
{
"code": "FAC-08",
"name": "Chủ đề nội dung?",
"description": "Phân loại text unit theo chủ đề nội dung chính. Áp dụng cho D38 Text as Code logical units.",
"decision": "approve",
"modified_values": null
},
{
"code": "FAC-09",
"name": "Tầng kiến trúc?",
"description": "Phân loại text unit theo design/legal/operational layer. Áp dụng cho D38 Text as Code logical units.",
"decision": "approve",
"modified_values": null
}
],
"decided_by": "User/Council via GPT direction",
"decided_at": "2026-04-27T00:00:00+07:00",
"next_if_approved": "E5 scoped execution prompt via DOT/API — tạo taxonomy_facets only",
"next_if_modified": "patch P8 §5.1 alias mapping, then E5 with modified values",
"next_if_rejected": "redesign approach — reuse existing FAC or restructure, update P8 §5.1",
"next_if_deferred": "hold — revisit in next session"
}
4. Constitutional Alignment
| Law | Status |
|---|---|
| Đ24 — labels qua entity_labels only | ✅ Không tạo labels trong E4/E5 |
| Đ32 — APR cho taxonomy mutation | ✅ Decision package formal, approved |
| Đ33 — Directus API, không SQL tay | ✅ E5 sẽ dùng API |
| Đ35 — DOT-first | ✅ DOT-TAC-LABEL-SYNC execute nếu approved |
| P8 v0.4 §5.1 | ✅ Candidate codes khớp alias mapping |
5. Scope Boundary
| Mutation | In scope? | Gate |
|---|---|---|
| taxonomy_facets INSERT (3 rows) | ✅ APPROVED | E5 (cần prompt/gate riêng) |
| taxonomy_labels INSERT | ❌ | Cần APR riêng |
| entity_labels INSERT | ❌ | Cần DOT + gate riêng |
| APR records in approval_requests | ❌ | Cần prompt/gate riêng |
6. Reference
| Doc | Path |
|---|---|
| E4 APR Request Package v0.2 | P9-e4-apr-request-fac-07-08-09.md |
| P8 v0.4 §5.1 | P8-implementation-design-plan-v0-1.md |
| E-E3 Amendment | P8-s5-amendment-e-e3.md |
| Existing facets | FAC-01→06 + FAC-PROV (7 total) |
APR Decision Package P9-E4-FACETS-D38 | S183 | 2026-04-27 | Opus 4.6 Status: ✅ APPROVED — 3/3 candidates Decided by: User/Council via GPT direction Decided at: 2026-04-27 Asia/Ho_Chi_Minh