Điều 3: Luật Metadata
ĐIỀU 3: LUẬT METADATA — MỌI THỨ PHẢI CÓ NHÃN DÁN
§1. Nguyên tắc
Mỗi thực thể, kể cả đơn vị nhỏ nhất, phải mang metadata đầy đủ. Metadata phải tìm kiếm được (search/query).
Metadata = ngôn ngữ để hệ thống TỰ HIỂU MÌNH. Khi metadata đủ → AI tự trả lời: thực thể này dùng ở đâu? ai quản lý? liên quan gì? trạng thái?
§2. Khung metadata bắt buộc
| Field | Mục đích | Bắt buộc |
|---|---|---|
| code | Mã PREFIX-NNN | ✅ |
| name | Tên hiển thị (VN) | ✅ |
| name_en | Tên tiếng Anh (cho AI/agents) | ✅ |
| description | Mô tả mục đích kinh doanh | ✅ |
| classification | Phân loại: core/module/data/governance/operational | ✅ |
| status | Vòng đời: draft → active → deprecated → retired | ✅ |
| owner | Ai/agent chịu trách nhiệm | ✅ |
| layer | Tầng kiến trúc (1-5) | ✅ |
§3. Khung metadata mở rộng (tuỳ chọn)
| Field | Mục đích | Bắt buộc |
|---|---|---|
| tags | Nhãn tự do, dùng cho search/filter | 🟡 |
| used_by | Danh sách thực thể đang dùng (dependency ngược) | 🟡 |
| triggers | Danh sách sự kiện mà thực thể này kích hoạt | 🟡 |
| triggered_by | Danh sách sự kiện kích hoạt thực thể này | 🟡 |
| related_to | Liên kết tới thực thể liên quan (không phải dependency cứng) | 🟡 |
Nguyên tắc mở rộng: Khi tương lai phát sinh loại metadata mới → thêm field vào khung. KHÔNG tạo bảng riêng cho metadata. Metadata gắn liền với thực thể, không tách rời.
§4. Metadata cho checkpoint và quy trình
Checkpoint là thực thể → cần metadata đầy đủ:
- CP type: nằm trong bao nhiêu tổ hợp? trigger bao nhiêu quy trình? đang dùng ở đâu?
- CP set: chứa bao nhiêu checkpoints? gắn với node nào? quy trình nào dùng?
- CP instance: đang ở trạng thái nào? ai verify? bằng chứng gì?
Quy trình Tầng 4 (khách hàng) sẽ có hàng ngàn checkpoint instances → metadata PHẢI query được để trả lời: "Khách hàng X đã qua những checkpoint nào? Còn thiếu gì?"
§5. Hệ quả
Thêm 1 label mới cho 20.000 fields → phải có batch update 1 lệnh. Làm thủ công từng field → thiết kế SAI.
§6. Công cụ có sẵn
Directus meta.note (mô tả), meta.group (phân loại), translations (đa ngôn ngữ) đã có sẵn. ✅ ĐÃ KHAI THÁC: meta.note 100% filled, meta.group 86.8% filled. Tools: dot-metadata-audit + dot-metadata-fill.