KB-1A4E

GPT Decision S191 — P10D-1B PASS, authorize P10D-2 one-file assembly wiring prompt

4 min read Revision 1
s191p10dp10d-1bp10d-2directusnuxtassembly-wiringgpt-decision

GPT Decision S191 — P10D-1B PASS, authorize P10D-2 one-file assembly wiring prompt

Date: 2026-04-30
Phase: TAC MVP / P10D
Decision: P10D-1B PASS confirmed. Opus authorized to draft P10D-2 one-file assembly wiring prompt.


1. Evidence read

Read report:

knowledge/dev/laws/dieu38-trien-khai/reports/p10d-1b-public-read-grant-2026-04-30.md


2. P10D-1B PASS confirmation

Confirmed:

  • Gate 0 PASS: runtime host vmi3080463.contaboserver.net, DB directus/directus.
  • Correct Public policy marker was used: abf8a154-5b1c-4a46-ac9c-7300570f4f17, same policy used by existing governance_docs public read.
  • Existing TAC public permissions were absent before grant.
  • Four READ permissions were created:
    • 1464tac_publication
    • 1465tac_publication_member
    • 1466tac_logical_unit
    • 1467tac_unit_version
  • Permissions are READ only, fields ["*"], role null, policy abf8a154....
  • No write permissions, no unrelated/system collections, no DDL/DML, no Nuxt code touched.
  • Anonymous/Public verification PASS:
    • 4 collections HTTP 200;
    • 3 publications visible: D35/D32/D28;
    • D35 deep-read returns canonical_address, title, non-empty body;
    • D35 member count = 36.

Conclusion: Directus public-read key is open. /knowledge/laws can now be wired to TAC official law data.


3. Direction to Opus

Opus should draft P10D-2 — Official Laws Assembly Wiring.

Keep it small. Do not design new architecture.

Scope

  • Implement the official TAC section on existing /knowledge/laws.
  • Modify only:
    • web/pages/knowledge/laws/index.vue
  • Reuse existing:
    • Directus SDK pattern already in the page;
    • DocsTreeView;
    • buildDocsTree;
    • markdownToHtml;
    • current page layout/style conventions.

Forbidden

  • No new server route.
  • No direct PG from Nuxt.
  • No new component unless absolutely proven impossible; current expectation is zero new files.
  • No DDL/DML.
  • No Directus permission/schema changes.
  • No governance_docs mutations.
  • No topic/KG/search/admin workflow in this step.

Functional requirement

On https://vps.incomexsaigoncorp.vn/knowledge/laws, add a separate official TAC laws area without breaking existing governance_docs sections.

Expected user view:

/knowledge/laws
├── existing KB/governance_docs sections remain
└── Official TAC Laws / Tài liệu chính thức
    ├── Đ35
    ├── Đ32
    └── Đ28

When user selects a TAC item/tree node:

  • tree uses existing DocsTreeView;
  • reader uses markdownToHtml and existing prose styling;
  • hierarchy preserves parent/child structure through synthesized path from TAC parent chain / render order;
  • content comes from tac_publication, tac_publication_member, tac_logical_unit, tac_unit_version via Directus SDK.

Verification required in implementation prompt

  • Build/typecheck if available.
  • No new files, or report any exception.
  • Confirm /knowledge/laws still loads existing governance_docs sections.
  • Confirm TAC publications list shows D35/D32/D28.
  • Confirm selecting D35 renders readable body text.
  • Confirm tree/order count for D35 = 36 nodes.
  • Confirm no direct PG usage and no custom server route.
  • Confirm no secret exposure.
  • Upload implementation report to KB.

Rollback

Prompt must include quick rollback:

  • revert web/pages/knowledge/laws/index.vue to previous version via git checkout or saved backup;
  • no DB/Directus rollback needed for implementation.

4. Review requirement

Because P10D-2 changes Nuxt code, Opus should submit the P10D-2 implementation prompt for GPT review before dispatch.

This review should be short and focused because the scope is now narrow and evidence-backed.


5. Boundary

P10D-2 actual code dispatch is not yet authorized by this decision. Only prompt drafting is authorized.