KB-18BD
h11a-description-basic-missing
2 min read Revision 1
querydescription-governances178-fix28
id: H11a name: Description Basic Missing severity: CRITICAL category: description-governance law: dieu43-system-context-law §9.1 related: H11b, dieu3-metadata §2.5, dieu3-metadata §2.6 deployed: 2026-04-22 session: S178-Fix28
H11a — Description Basic Missing (CRITICAL)
Ý nghĩa
Entity GOVERNED có description IS NULL hoặc btrim(description) = ''. Đây là dấu hiệu hạ tầng auto-gen hỏng: trigger trg_desc_guard_<table> không chạy, hoặc lookup template 4 tầng trả NULL cho mọi tầng (Tier 1–4 đều thiếu). Severity CRITICAL vì hiến pháp NT6 yêu cầu mọi entity sinh ra phải có mô tả cơ bản.
SQL Query
-- Count per table
SELECT v.source_table,
count(*) AS h11a_findings
FROM v_entity_full_classification v
WHERE v.governance_role = 'governed'
AND (v.description IS NULL OR btrim(v.description) = '')
GROUP BY v.source_table
ORDER BY h11a_findings DESC;
-- Detail list
SELECT v.source_table, v.entity_code, v.status
FROM v_entity_full_classification v
WHERE v.governance_role = 'governed'
AND (v.description IS NULL OR btrim(v.description) = '')
ORDER BY v.source_table, v.entity_code;
-- Count total
SELECT count(*) AS h11a_total
FROM v_entity_full_classification v
WHERE v.governance_role = 'governed'
AND (v.description IS NULL OR btrim(v.description) = '');
Hành động khi có finding
- Xác minh trigger
trg_desc_guard_<table>tồn tại:\d <table>trong psql. - Xác minh template:
SELECT key FROM dot_config WHERE key LIKE 'desc_template_%';— phải có ít nhấtdesc_template_default. - Nếu cả hai OK mà vẫn có finding → backfill bằng
UPDATE <table> SET description = '<computed>'quafn_render_description_template(fn_description_context()). - Nếu finding sau deploy hoàn tất Fix 28 Step 9 → alert CRITICAL ngay.
Viện dẫn liên luật
- Đ3 §2.5: 2 mức mô tả (cơ bản + chi tiết).
- Đ3 §2.6: Lookup template 4 tầng SSOT
dot_config. - Đ4 §2.1: Tiêu chí C1 (không rỗng).
- Đ43 §9.1: Định nghĩa H11.