|
| 1 | +# PR_26171_010-message-speech-preview |
| 2 | + |
| 3 | +## Branch Validation |
| 4 | + |
| 5 | +- Branch: `pr/PR_26171_010-message-speech-preview` |
| 6 | +- Source: clean `main` after PR_26171_008 merge and push. |
| 7 | +- Status: PASS for branch setup and scoped implementation. |
| 8 | + |
| 9 | +## Requirement Checklist |
| 10 | + |
| 11 | +- PASS: Added a Theme V2 Speech Preview section to the Messages tool. |
| 12 | +- PASS: Added selected full-message preview. |
| 13 | +- PASS: Added selected ordered active-segment preview. |
| 14 | +- PASS: Preview uses selected/default active TTS Profile settings for language and voice. |
| 15 | +- PASS: Segment preview uses each segment's Emotion Profile settings for volume, pitch, and rate. |
| 16 | +- PASS: Browser-local preview uses `speechSynthesis` and `SpeechSynthesisUtterance` when available. |
| 17 | +- PASS: Missing browser speech support shows a visible actionable diagnostic. |
| 18 | +- PASS: Stop Preview calls `speechSynthesis.cancel()` and updates status. |
| 19 | +- PASS: Preview logic lives in external `toolbox/messages/messages.js`. |
| 20 | +- PASS: Playwright stubs browser speech synthesis and validates preview payloads without real audio output. |
| 21 | +- PASS: No server-side TTS generation, audio file generation, audio persistence, AI voices, voice adapters, runtime playback API, dialog trees, localization, translation, game runtime integration, or preview history storage was added. |
| 22 | +- PASS: No new API/DB persistence was added. |
| 23 | +- PASS: No inline styles, style blocks, inline scripts, or inline event handlers were introduced. |
| 24 | +- FAIL: Required `npm run test:workspace-v2` lane failed in existing `RootToolsFutureState.spec.mjs` coverage outside the Messages speech preview scope. |
| 25 | + |
| 26 | +## Validation Lane Report |
| 27 | + |
| 28 | +- PASS: `node --check toolbox/messages/messages.js` |
| 29 | +- PASS: `node --check tests/playwright/tools/MessagesTool.spec.mjs` |
| 30 | +- PASS: `npx playwright test tests/playwright/tools/MessagesTool.spec.mjs --project=playwright --workers=1 --reporter=list` |
| 31 | +- PASS: Validated preview selected message payload with stubbed speech synthesis. |
| 32 | +- PASS: Validated preview active ordered segment payloads with emotion profile settings. |
| 33 | +- PASS: Validated Stop Preview cancel behavior. |
| 34 | +- PASS: Validated unavailable speech synthesis diagnostic. |
| 35 | +- PASS: `git diff --check` on touched files. |
| 36 | +- FAIL: `npm run test:workspace-v2` |
| 37 | + |
| 38 | +## Workspace-V2 Failure Summary |
| 39 | + |
| 40 | +`npm run test:workspace-v2` failed in `tests/playwright/tools/RootToolsFutureState.spec.mjs`: |
| 41 | + |
| 42 | +- Toolbox accordion `.control-card` count was `0`. |
| 43 | +- Header alphabetical expectation failed around `Game Hub` and `Game Journey`. |
| 44 | +- Non-Messages pages reported failed requests to session, platform banner, registry, and toolbox constants APIs. |
| 45 | + |
| 46 | +These failures were already present for the batch and are outside PR_010's browser-local Messages speech preview scope. |
| 47 | + |
| 48 | +## Manual Validation Notes |
| 49 | + |
| 50 | +- Selected message preview reports a preview request and produces one stubbed utterance. |
| 51 | +- Active ordered segment preview reports a preview request and produces ordered stubbed utterances. |
| 52 | +- Segment utterances use the segment emotion profile's volume, pitch, and rate. |
| 53 | +- Stop Preview reports stopped status and calls cancel. |
| 54 | +- Missing browser speech synthesis shows an actionable diagnostic. |
| 55 | +- No audio is generated or persisted. |
| 56 | + |
| 57 | +## Samples Decision |
| 58 | + |
| 59 | +- Full samples smoke was not run because samples are out of scope for browser-local Messages speech preview. |
0 commit comments