KB-6FE4 rev 3

Báo cáo PG read PG — Home + 3 bảng (rev2)

6 min read Revision 3
laws-newpg-read-pgbao-caohome-master-listlop-hoat-dongloai-specieschuyen-mon-7-tangfilter-searchread-onlyrev22026-06-24

BÁO CÁO PG read PG — Home + 3 bảng (Tổng hợp · Workflow · DOT)

File: knowledge/dev/laws-new/pg-read-pg/bao-cao-pg-read-pg.md Thuộc đề bài: de-bai-pg-read-pg.md (v1.1) · Ngày: 2026-06-24 · rev 2 Đây là CĂN CỨ DUY NHẤT cho agent. Mỗi bảng = một view read-only; số liệu live. Hiển thị = lắp vào khuôn Nuxt có sẵn (Đ28), không code mới.

Cơ chế chung (đọc trước — áp cho mọi bảng)

  • Dùng nhãn của hiến pháp, KHÔNG sáng tạo. Ba trục nhãn: loài (species — nó LÀ ai), chuyên môn (7 tầng MOW — nó HOẠT ĐỘNG ở tầng nào), lớp hoạt động (6 lớp nguyên tử→công trình — nó HOẠT ĐỘNG ở lớp nào). Bỏ cột classification cũ (bãi rác 21 giá trị lệch trục).
  • Phân biệt danh tính vs bối cảnh: Loài = nó LÀ ai (Workflow/DOT). Chuyên mônLớp hoạt động = nó LÀM GÌ / hoạt động ở đâu — không định nghĩa danh tính. (Ông là ai không quan trọng; ông làm gì, hoạt động ở đâu mới quan trọng.)
  • 6 lớp hoạt động (Incomex lego): nguyên tử → phân tử → hợp chất → vật liệu → sản phẩm → công trình.
  • Chuyên môn = gán tầng SÂU NHẤT (T1 = công việc, sâu nhất … T7 = lĩnh vực, rộng nhất). Gán T1/T2 là đủ; hệ tự suy chuỗi 7 tầng lên trên.
  • Gán LOÀI là chìa khoá lên bảng: gắn loài = Workflow → hiện ở bảng Workflow; loài = DOT → hiện ở bảng DOT. Gán loài một cái là chạy ra bảng.
  • Filter & tìm kiếm: MỌI cột đều bật filter có sẵn của Directus; MỌI bảng có ô tìm kiếm (search) ở đầu để tìm nhanh.
  • Nguồn & cách điền: ưu tiên ĐỌC từ bảng khai sinh (nếu có) → trống thì ĐIỀN TAY (ghi đè; PG khai sinh giữ bản mới nhất + lịch sử). Không có → bỏ trống (không bịa).
  • Ranh giới ĐỌC≠GHI: render bảng = ĐỌC (cột A hiện ngay). Điền cột B / gán loài / bổ sung schema = GHI, làm THROUGH bảng ở bước sau.
  • A = PG/khai sinh tự có (hiện ngay). B = người khai (trống tới khi điền).

BẢNG 0 — HOME (master list báo cáo)

Trang chủ liệt kê mọi báo cáo (sẽ có hàng trăm). Mỗi báo cáo = 1 dòng; bấm dòng → mở báo cáo đó. Có ô tìm kiếm + filter mọi cột.

# Cột Định nghĩa
1 STT Tự động đánh số theo thời gian tạo ra bảng báo cáo
2 Tên báo cáo Tên đặt cho báo cáo (chuẩn hoá, thống nhất)
3 Loài Loài chính mà báo cáo thuộc về (vd DOT, WF, …)

BẢNG 1 — TỔNG HỢP PG (census)

Một trang: bảng tổng 12 loại + 5 bảng con (table→họ, field→kiểu dữ liệu, function→kiểu trả về, trigger→thời điểm×sự kiện, constraint→loại). Chi tiết cột + số mẫu: xem tong-hop-pg.md. Mỗi bảng = 1 câu đọc read-only. Trigger đọc qua pg_catalog.pg_trigger. Filter mọi cột + ô tìm kiếm.


BẢNG 2 — WORKFLOW list (collection workflows, loài = Workflow)

50 dòng/trang · filter mọi cột + ô tìm kiếm · view theo cây · drawer.

# Cột Định nghĩa Nguồn
1 STT Số thứ tự dòng trong bảng PG A
2 Mã workflow dùng trong PG A
3 Tên workflow Tên workflow đang dùng trong PG A
4 Nguồn WF chạy trong Hệ thống hay đến từ Kestra (business WF) A nếu suy được, else B
5 Chuyên môn Tầng chuyên môn WF hoạt động (7 tầng MOW, gán sâu nhất, tự suy lên) — không định nghĩa danh tính B
6 Nhiệm vụ Mô tả bằng lời WF này làm những gì B
7 Trigger Trigger kích hoạt chạy quy trình — ưu tiên đọc từ thực thể quy trình, hoặc mô tả bổ sung/hoàn toàn bằng tay A→B
8 Loài Trục loài (species) của khai sinh — loài = Workflow (danh tính) B
9 Lớp hoạt động Lớp WF hoạt động trong 6 lớp (nguyên tử→công trình) — môi trường vận hành, không định nghĩa danh tính B
10 Note Các ghi chú khác B
11 Active Tình trạng: active / building (đang xây dở) / retire (nghỉ hưu) A (cột status)
12 Last update Thời gian cuối sửa thông tin A

Phép trừ lòi mồ côi (đầu báo cáo): workflows khai 2 vs họ wf_/workflow_ + flow Kestra ~30 → vùng mù ~28 chưa vào sổ.


BẢNG 3 — DOT list (collection dot_tools, loài = DOT)

50 dòng/trang · filter mọi cột + ô tìm kiếm · view theo cây · drawer.

# Cột Định nghĩa Nguồn
1 STT Số thứ tự dòng trong bảng PG A
2 Mã DOT dùng trong PG A
3 Tên DOT Tên DOT đang dùng trong PG A
4 Lệnh gọi Cách gọi DOT để thực hiện nhiệm vụ A (từ signature/registry)
5 Chuyên môn Tầng chuyên môn DOT hoạt động (7 tầng MOW; T1 sâu nhất — công việc thường gắn T1/T2; tự suy lên) — không định nghĩa danh tính B
6 Nhiệm vụ Mô tả bằng lời DOT này làm gì, dùng trong trường hợp nào B
7 write collection DOT này ghi vào collection nào A nếu có metadata, else B
8 Loài Trục loài (species) của khai sinh — loài = DOT (danh tính) B
9 Lớp hoạt động Lớp DOT hoạt động trong 6 lớp (nguyên tử→công trình) — môi trường vận hành, không định nghĩa danh tính B
10 Note Các ghi chú khác B
11 Active Tình trạng: active / building / retire A (cột status)
12 Last update Thời gian cuối sửa thông tin A

Phép trừ lòi mồ côi (đầu báo cáo): 654 function − 309 DOT đã gán loài = 345 ứng viên chưa gán (máy gợi ý, người gật).


Yêu cầu schema tối thiểu (cho agent)

Mỗi collection (workflows, dot_tools) phải có tối thiểu các cột trên. Thiếu cột nào → bổ sung schema (thao tác GHI — bước write, sau khi render đọc xong). Đủ cột + gán loài → bảng tự liệt kê; nhìn vào bảng là điền được thông tin, cả agent lẫn người thấy ngay.

Kim chỉ nam: Loài = nó LÀ ai (lên bảng). Chuyên môn + Lớp hoạt động = nó LÀM GÌ / ở đâu (bối cảnh, không phải danh tính). Mọi cột có filter, mọi bảng có ô tìm. Ưu tiên đọc khai sinh, trống thì điền tay (ghi đè, PG giữ lịch sử), không có thì bỏ trống. Render là ĐỌC, điền/gán/bổ-sung-schema là GHI bước sau.