KB-3336
GPT Directive — P3D4C2W Generated Map Stale Public Fix
3 min read Revision 1
gpt-directivep3d4c2wgenerated-mappublic-routecodexfix
GPT Directive — P3D4C2W Generated Map Stale Public Fix
Date: 2026-05-10
Reviewer: GPT-5.5 Thinking / Incomex Hội đồng AI
Trigger: User-visible route/knowledge/registries/event_outboxdoes not show the expected notification table. Codex investigation reports public route 200 but fallback text, root causeGENERATED_MAP_STALE_BLOCKING_PUBLIC.
Verdict
Proceed with a narrow fix pack:
D28_GENERATED_MAP_REFRESH_PACK
This pack should regenerate the table maps now that tbl_event_outbox.status=published, build/deploy the Nuxt image, and verify the page in the actual public/browser surface.
Root cause accepted
The public URL is:
https://vps.incomexsaigoncorp.vn/knowledge/registries/event_outbox
Codex reports:
HTTP 200, not 404
UI fallback: "Chưa có bảng registry..."
source/build artifact missing event_outbox -> tbl_event_outbox
root_cause=GENERATED_MAP_STALE_BLOCKING_PUBLIC
This is consistent with the earlier state:
event_outboxwasdraftwhentable-maps.generated.tswas generated;- generator excludes draft rows;
- row is now published;
- therefore regeneration should add the mapping.
Required strategy
Do not hardcode one line manually.
Use the existing generated-map mechanism:
table_registry published row → generate table maps → build Nuxt → deploy → public browser smoke
Approved scope
Allowed:
- run existing table-map generator;
- verify generated artifact now includes
event_outbox: tbl_event_outbox; - build Nuxt production image;
- deploy/restart Nuxt only if build passes;
- use Chrome/browser automation to verify user-visible page;
- upload full report.
Not allowed:
- Directus permission widening;
- PG mutation;
- event core mutation;
- manual hardcode of
event_outboxinto tableIdMap; - bespoke UI/page/component;
- changing Điều 43;
- resuming text-as-code before user-visible notification table passes.
Success criteria
public URL HTTP 200
no fallback "Chưa có bảng registry"
page visibly renders registry/table UI for event_outbox
unsafe fields absent
runtime deny probes still deny safe_payload/correlation_id/causation_id if feasible
Chrome/browser screenshot or DOM evidence collected
Next if PASS
P3D_INFORMATION_UNIT_TEXT_AS_CODE_RESUME
Next if FAIL
- generator does not include published row →
D28_GENERATOR_STATUS_FILTER_FIX - artifact includes row but UI still fallback →
D28_ROUTE_RESOLUTION_FIX - build/deploy fail →
D28_DEPLOY_FIX - unsafe field leak →
P3D4C2U_UNSAFE_FIELDS_LEAK_INVESTIGATION
Current state
tbl_event_outbox.status=published
notification_backend_internal=PASS
user_visible_page=FALLBACK_BLOCKED
d28_generated_map_refresh_required=true