GPT Review — D28 Nuxt/UI Appendix Bundle and Live Inventory Directive
GPT Review — D28 Nuxt/UI Appendix Bundle and Live Inventory Directive
Date: 2026-05-08
Reviewer: GPT-5.5 Thinking / Incomex Hội đồng AI
Reviewed:
knowledge/dev/laws/dieu28-trien-khai/appendices/d28-nuxt-ui-assembly-governance-appendix-draft.mdknowledge/dev/laws/dieu28-trien-khai/appendices/d28-ui-template-design-implementation-index.mdknowledge/dev/laws/dieu28-trien-khai/prompts/d28-nuxt-ui-template-live-inventory-verification-prompt.mdknowledge/dev/laws/dieu28-trien-khai/design/d28-nuxt-ui-template-consolidation-design-plan.md
Verdict
APPROVE WITH MINOR CLARIFICATIONS. PROCEED TO AGENT LIVE INVENTORY VERIFICATION.
Opus followed GPT/User directive correctly:
- used Điều 28 appendices, not Điều 45;
- wrote directly into KB;
- did not implement;
- did not edit Nuxt;
- did not add
event_outboxtotableIdMap; - preserved the three-step sequence: law → design → code/tooling.
The four documents are sufficient to move to the next step: read-only live inventory by Agent.
Accepted items
1. D28 Nuxt/UI Assembly Governance Appendix
Accepted as draft v0.1.
Strong points:
- keeps jurisdiction under Điều 28;
- explicitly forbids bespoke UI and local workaround;
- promotes Table Module / DirectusTable obligations to law-level appendix;
- correctly identifies hardcoded
tableIdMapas a violation/gap; - codifies route resolution must be registry/config-driven;
- includes permission/field allowlist, code gate, cleanup taxonomy, automated smoke, DOT/API-only mutation, rollback/report, security, and Điều 43 compatibility.
2. D28 UI Template Design/Implementation Index
Accepted as living index v0.1.
Strong points:
- gives one shelf for sources, templates, products, tools, legacy/rác, pending migrations, smoke/verify tools, and blockers;
- records the key discrepancy: live
table_registry=20vs KB synced docs14; - correctly treats
tbl_event_outboxas draft product pending shared Nuxt/Table Module fix.
3. Agent live inventory prompt
Accepted for read-only verification, with minor clarification below.
Strong points:
- exact SQL/API/grep commands;
- strict read-only boundaries;
- reconciles live Directus with KB;
- verifies templates/khuôn, tools/code paths, legacy/rác, route inventory;
- produces report path under Điều 28.
4. Design plan
Accepted as draft plan, not final design.
Strong points:
- lays out options for replacing
tableIdMap; - proposes automated route smoke and field-leak smoke;
- defines how to resume P3D
tbl_event_outboxonly after shared mechanism is fixed; - correctly defers mark-read UX and IU convergence.
Clarifications before Agent dispatch
C1 — Do not treat current Appendix A as enacted law yet
It is a draft appendix. Agent must treat it as governing direction for inventory, not as enacted law.
Report should use:
d28_appendix_status=DRAFT_FOR_INVENTORY
C2 — Some grep commands may be noisy; Agent must classify, not over-claim
Search terms like pg, map, filter, count, reduce can produce false positives. Agent must classify findings as:
CONFIRMED_ISSUE
LIKELY_ISSUE
FALSE_POSITIVE
NEEDS_REVIEW
Do not report every grep hit as a violation.
C3 — Use read-only credentials and avoid mutation endpoints
Prompt already says read-only. Reinforce:
curl GETonly;- PG
SELECTonly; - no Directus POST/PATCH/DELETE;
- no file writes;
- no deploy;
- no package install.
C4 — Report should distinguish live facts vs KB/stale docs
A known risk is old SSOT/report data. Agent must separate:
LIVE_FACT
KB_DOC_FACT
HISTORICAL_REPORT
STALE_OR_UNCONFIRMED
This is important because Table Module SSOT and older reports may be stale.
C5 — Do not decide final route-resolution option yet
The design plan preliminarily prefers Option B. Agent should not implement or decide. It should provide evidence for the choice:
- how many registry rows match
collection = entityType; - how many match
page_urlconvention; - how many would require exception handling;
- whether runtime query causes permission/auth issue.
Final design selection happens after report review.
Directive to Opus — dispatch Agent live inventory verification
Opus should now dispatch Agent to execute the read-only prompt:
knowledge/dev/laws/dieu28-trien-khai/prompts/d28-nuxt-ui-template-live-inventory-verification-prompt.md
with these added clarifications:
1. Treat Appendix A as DRAFT_FOR_INVENTORY, not enacted law.
2. READ ONLY: no file writes, no Directus mutation, no PG mutation, no deploy.
3. Classify grep findings: CONFIRMED_ISSUE / LIKELY_ISSUE / FALSE_POSITIVE / NEEDS_REVIEW.
4. Separate live facts from KB or historical/stale docs.
5. Do not choose or implement the final route-resolution option.
6. Upload report even on FAIL/BLOCKED.
Expected report:
knowledge/dev/laws/dieu28-trien-khai/reports/d28-nuxt-ui-template-live-inventory-verification-report.md
Required report additions
Add to the prompt/report fields:
d28_appendix_status=DRAFT_FOR_INVENTORY
read_only_attestation=true
file_writes=0
directus_mutations=0
pg_mutations=0
deploy_actions=0
live_facts_count=<number>
kb_doc_facts_count=<number>
historical_report_facts_count=<number>
stale_or_unconfirmed_count=<number>
grep_confirmed_issues=<number>
grep_likely_issues=<number>
grep_false_positives=<number>
grep_needs_review=<number>
route_resolution_evidence_collected=PASS|FAIL
final_route_option_selected=false
Keep P3D paused
Do not resume notification display work yet.
Do not:
- add
event_outbox: 'tbl_event_outbox'; - publish
tbl_event_outbox; - edit Nuxt;
- create UI;
- run implementation pack.
Current P3D state remains:
table_registry_id=21
permission_id=1483
tbl_event_outbox.status=draft
notification display=blocked by Nuxt/Table Module routing gap
Next sequence
- Opus dispatches Agent live inventory verification.
- Agent uploads report.
- GPT/User/Opus review report.
- Opus revises Appendix A + Index + Design Plan based on live facts.
- Only then decide route-resolution design.
- Only after design approval, prepare implementation prompt.
Final status
opus_bundle_review=ACCEPTED_WITH_CLARIFICATIONS
agent_live_inventory=APPROVED_FOR_DISPATCH
implementation_allowed=false
nuxt_edit_allowed=false
p3d_resume_allowed=false
law_path=Điều 28 appendices
new_Dieu45=false