KB-386A
01 — Law & Principle Map (all laws FOUND, mapped to design)
6 min read Revision 1
designregistries-pivotlawsprinciple-mapdieu26dieu28dieu2atomspeciesdieu31dieu452026-05-31
title: 01 — Law & Principle Map date: 2026-05-31
01 — Law & Principle Map
Every law the mission named was located in the KB this session. No NOT_FOUND. Each row: law → KB path → the design clause it binds.
| Law | KB path | Binds design clause |
|---|---|---|
| Hiến pháp v4.6.3 | knowledge/dev/laws/constitution.md |
13 NT; PG-first; 5-layer sync [PG, Directus, Nuxt, AgentData/KB, Qdrant]; DOT-pair; no-hardcode-absolute |
| Đ2 Registry | knowledge/dev/laws/law-02-registry.md |
every entity needs ID(PREFIX-NNN)+registry+metadata; "violating Đ2 = violating Hiến pháp"; ⇒ any NEW registry (labels/pins) must itself be registered+pivoted |
| Information Atom Law (Đ0) | knowledge/dev/architecture/information-atom-law.md |
everything is an entity; 8 relation rules (IDENTITY/BELONGS_TO/CONTAINS/DEPENDS_ON/USED_BY/TRANSITIVE/PEERS/SIMILAR); ⇒ leaf substrate = entity + its relations (drill-down L4) |
| Đ0-B Composition Levels | knowledge/dev/architecture/composition-level-law.md |
6 layers atom→molecule→compound→material→product→building; FK/M2M-first, entity_dependencies for cross-type; ⇒ L1 nine-row order + composition axis |
| Species Taxonomy v1.2 | knowledge/dev/architecture/species-taxonomy-complete.md |
species = meta-layer OUTSIDE 6 layers; tree via parent_id+depth; Registries UI = 7 dimensions (6+species) |
| Species-Collection Law v0.5 DRAFT | knowledge/dev/architecture/species-collection-law-draft.md |
species↔collection mapping + prefix rules; status = chờ phê duyệt (GATED_BY_APPROVAL) |
| Đ0-G Birth Registry | knowledge/dev/architecture/birth-registry-law.md |
Side-A birth: born → ID → registered; ⇒ new-object scanner + every NEW registry born |
| Đ19 Orphan Scanner (Side B) | knowledge/dev/laws/law-19-orphan-scanner.md |
scan-all vs registries → not-in-registry = orphan; orphan def v3.9 (missing birth OR missing min relationship set) |
| Đ20 Design-before-Implementation | knowledge/dev/laws/dieu20-thiet-ke-truoc-trien-khai.md |
the readiness-gate basis: design ratified before build |
| Đ23 DOT Scanning §4.2 | knowledge/dev/architecture/dot-scanning-system.md |
inverse-check: meta_catalog-no-DOT-scan → UNMONITORED; public-table-not-in-meta_catalog → UNREGISTERED; discrepancy>0 → system_issues HIGH |
| Đ24 Label Law v1.3 | knowledge/dev/laws/label-law.md |
taxonomy tree (cycle-check depth<5), facets, provenance; ⇒ PG-backed labels for grouping |
| Đ26 Pivot Law v4.0 | knowledge/dev/laws/dieu26-pivot-law.md |
pivot_count() = ONLY counting; MT2 by-definition no-cache; 9-row L1; 5 Layers; matrix max-7-dim; §0-BA Nuxt=screen, §0-AU no-hardcode add-row=INSERT; orphan/species columns from pivot NOT Nuxt |
| Đ28 Display Tech v2.0 | knowledge/dev/laws/dieu28-display-technology-law.md |
Nuxt renders only registered PG templates; NT-D1 no business-logic/query/hardcode; NT-D3 config in PG JSONB not text; Test-4 Truth-Check 100% Nuxt=PG; §VIII whitelist + DOT-template-coverage (0 outside registry) |
| Đ29 Classification v2.0 | knowledge/dev/laws/dieu29-classification-law.md |
collection classification / species-grouping; ⇒ grouping dimension source |
| Đ30 Regression Protection v1.2 | knowledge/dev/laws/dieu30-regression-protection-law.md |
rollback/regression; ⇒ BEGIN..ROLLBACK rehearsal, no forward-only |
| Đ31 System Integrity v1.2 | knowledge/dev/laws/dieu31-system-integrity-law.md |
contracts, nuxt-db-sync, self-verification, system_issues, watchdog; ⇒ count-integrity contract + Truth Check |
| Đ32 Approval v1.1 | knowledge/dev/laws/dieu32-approval-law.md |
APR quorum; ⇒ all additive changes gated; approval_requests(211)+apr_approvals reused |
| Đ33 PostgreSQL v2.1 | knowledge/dev/laws/dieu33-postgresql-law.md |
4-DB/3-layer access control; _dot_origin; ⇒ PG-first substrate boundary |
| Đ35 DOT Governance v5.2 | knowledge/dev/laws/dieu35-dot-governance-law.md |
DOT lifecycle + paired tests; ⇒ scanner DOTs governed |
| Đ36 Collection Protocol v5.0 DRAFT | knowledge/dev/laws/dieu36-collection-protocol-law.md |
collection instance/FK; status DRAFT (GATED_BY_APPROVAL) |
| Đ37 Governance Org v3.3 | knowledge/dev/laws/dieu37-governance-organization-law.md |
owners: COUNCIL/SIV/DOT/KG-SYS/NRM-SYS + 4 Mothers; ⇒ registry/pin ownership |
| Đ44 IU Profile/Schema DRAFT | knowledge/dev/laws/dieu44-trien-khai/design/04-information-unit-profile-schema.md |
5-tier IU profile (relation/semantic/workflow/checker/execution_readiness); ⇒ IU as leaf substrate; status DRAFT |
| Đ45 PG-Native Queue v1.0 | knowledge/dev/laws/dieu45-pg-native-queue-and-task-orchestration-law.md |
queue carries signal not data; event_vs_job; register-before-emit; MOT-not-executor; silent-gap/heartbeat; ⇒ notification/cleanup trigger contract |
Principle precedence used by this design
- Counting truth (Đ26): pivot_count() > stored record_count.
- Display boundary (Đ28): no hardcode/business-logic/fabricated rows in Nuxt; render registered templates only.
- Identity (Đ2/Đ0): nothing exists unregistered; new registries must be born+pivoted.
- Reversibility / design-first (Đ20/Đ30): ratify before build; additive + rollback.
- Signal-not-data (Đ45): detection emits signals, governed workflows act.
Gaps recorded honestly
- Phantom has no dedicated law article →
LAW_DEFINITION_GAP(operational def proposed in doc 06). - Species-Collection Law v0.5 and Đ36 Collection v5.0 are DRAFT →
GATED_BY_APPROVALfor any clause that depends on them. composition_levelsreference table does not exist →DATA_MISSING(layers are enum values).