|
| 1 | +# PR_26171_012-message-tool-postgres-table-layout-cleanup |
| 2 | + |
| 3 | +## Branch Validation |
| 4 | + |
| 5 | +- Current branch before implementation: `main` |
| 6 | +- Required PR branch: `pr/26171-012-message-tool-postgres-table-layout-cleanup` |
| 7 | +- Branch source: pulled latest `origin/main` before branch creation |
| 8 | +- Clean repo before branch creation: PASS |
| 9 | + |
| 10 | +## Summary |
| 11 | + |
| 12 | +Message Studio now reflects the approved Postgres direction and creator-facing row workflow. The tool no longer exposes category management or category selection in the UI, Emotion Profiles and TTS Profiles are in the center work surface, and the message editor is organized around a Message Rows table with Add/Update/Disable row language. |
| 13 | + |
| 14 | +## Requirement Checklist |
| 15 | + |
| 16 | +| Requirement | Result | Evidence | |
| 17 | +| --- | --- | --- | |
| 18 | +| Update repo guidance to state SQLite is deprecated. | PASS | Added `POSTGRES DATABASE DIRECTION` to `docs_build/dev/PROJECT_INSTRUCTIONS.md`. | |
| 19 | +| New database work must target Postgres / Local API direction. | PASS | Guidance now requires new persistence through Local API / Postgres direction only. | |
| 20 | +| Do not add new SQLite services, DDL, seed, or runtime persistence. | PASS | No SQLite service, DDL, seed, or persistence file was added. Existing legacy SQLite service remains unchanged as technical debt. | |
| 21 | +| Remove Category/category UI from the left column. | PASS | `toolbox/messages/index.html` no longer contains visible category controls or category tables. | |
| 22 | +| Do not introduce category replacement. | PASS | No new classification form was introduced; left column documents Tags as the future direction only. | |
| 23 | +| Move Emotion Profiles into center column. | PASS | Emotion Profiles form/table now render in the center work surface. | |
| 24 | +| Move TTS Profiles into center column. | PASS | TTS Profiles form/table now render in the center work surface. | |
| 25 | +| Keep Speech Preview display-only. | PASS | Speech Preview remains in the inspector and no provider/audio generation behavior was added. | |
| 26 | +| Change Message Editor to table-driven workflow. | PASS | Message Rows table now appears before row detail editing. | |
| 27 | +| Add new row/action at bottom of table. | PASS | Message Rows table includes `Add Message Row` below the table. | |
| 28 | +| Avoid Save Message / New Message language. | PASS | Visible tool copy now uses `Add Message Row`, `Update Row`, and `Disable Row`. | |
| 29 | +| Preferred visible label is Message Studio. | PASS | Page title/H1 and source-controlled Toolbox metadata now use `Message Studio`. | |
| 30 | +| Do not rename routes/folders. | PASS | Existing `messages` route/folder/id remain unchanged. | |
| 31 | + |
| 32 | +## Root Cause / Notes |
| 33 | + |
| 34 | +The tool was still presenting the earlier Messages foundation UI: category management in the left rail, Emotion/TTS profile management outside the primary work surface, and form-first `Save Message` / `New Message` actions. The server-backed toolbox registry also retained the old `Messages` label because `messages` was not included in the source-controlled metadata sync allowlist. |
| 35 | + |
| 36 | +This PR keeps the current legacy category key only as an internal compatibility value required by the existing API contract. The category UI is removed from the creator surface and the Postgres migration direction is documented. |
| 37 | + |
| 38 | +## Impacted Lane |
| 39 | + |
| 40 | +- Tool/UI lane: Message Studio Theme V2 surface |
| 41 | +- Server metadata lane: Toolbox registry source-controlled metadata sync |
| 42 | +- Documentation/governance lane: database direction guidance |
| 43 | + |
| 44 | +## Skipped Lanes |
| 45 | + |
| 46 | +- Samples: skipped, no sample runtime or sample JSON changed. |
| 47 | +- Provider/audio generation: skipped, explicitly out of scope. |
| 48 | +- Full samples smoke: skipped, out of scope. |
| 49 | + |
| 50 | +## Playwright Result |
| 51 | + |
| 52 | +- PASS: `npx playwright test tests/playwright/tools/MessagesTool.spec.mjs --project=playwright --workers=1 --reporter=list` |
| 53 | +- WARN: `npm run test:workspace-v2` still fails on existing header ordering expectations where the UI renders `Game Journey` before `Game Hub`. The PR-caused Toolbox count expectation was updated from `13/42` to `14/43`. |
| 54 | + |
| 55 | +## Manual Validation Notes |
| 56 | + |
| 57 | +- Confirmed rendered `/tools/messages/index.html` title and H1 resolve to `Message Studio` after the server registry override. |
| 58 | +- Confirmed visible category controls are absent from `toolbox/messages/index.html`. |
| 59 | +- Confirmed no inline style blocks, inline scripts, or inline event handlers were added. |
0 commit comments