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_outbox does not show the expected notification table. Codex investigation reports public route 200 but fallback text, root cause GENERATED_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_outbox was draft when table-maps.generated.ts was 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_outbox into 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
Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/reviews/gpt-directive-p3d4c2w-generated-map-stale-public-fix-2026-05-10.md