Skip to content

Commit a2d098e

Browse files
author
DavidQ
committed
Clean up Text to Speech V2 layout and schema-only validation - PR_26130_022-text-to-speech-v2-layout-schema-cleanup
1 parent 4dc54cd commit a2d098e

8 files changed

Lines changed: 162 additions & 479 deletions

File tree

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# PR_26130_022-text-to-speech-v2-layout-schema-cleanup
2+
3+
## Summary
4+
5+
- Moved Text to Speech V2 Speak, Pause, Resume, and Stop controls to the bottom of the Text to Speak accordion.
6+
- Bottom-aligned the Text to Speak content area and removed the bottom/right resize affordance from `text2speach-V2SpeechText`.
7+
- Removed `text2speach-V2` payloads from the Asteroids, Gravity Well, and Pong game manifests.
8+
- Removed stale-object payload constants/helpers and the extra queue validator from Text to Speech V2 so payload pass/fail goes through schema validation only.
9+
- Kept sample 1903 Text to Speech V2 JSON in place and validated as the standalone/sample source.
10+
11+
## Implementation Notes
12+
13+
- `tools/text2speach-V2/index.html` now places `text2speach-V2SpeechActions` inside `text2speach-V2TextContent` after the textarea.
14+
- `tools/text2speach-V2/styles/text2speach-V2.css` pins the Text accordion content to a bottom-aligned column layout and sets `resize: none` on Text to Speech V2 textareas.
15+
- `tools/text2speach-V2/js/TextToSpeechToolApp.js` now relies on `tools/schemas/tools/text2speach-V2.schema.json` as the validation gate for load, import, copy, and export paths.
16+
- Workspace Manager V2 tests now expect Text to Speech V2 to be disabled for the three current game manifests because those manifests no longer declare a Text to Speech payload.
17+
18+
## Validation
19+
20+
- Passed: `npm run test:workspace-v2`
21+
- Result: 33 passed.
22+
- Passed: focused Playwright cleanup group covering Text to Speech layout, schema rejection, disabled manifest payload state, and Gravity Well/Pong manifest cleanup.
23+
- Passed: JavaScript syntax checks for changed Text to Speech V2 and Workspace Manager V2 Playwright files.
24+
- Passed: JSON parse check confirming Asteroids, Gravity Well, and Pong no longer contain `text2speach-V2`, while sample 1903 remains a root array with 3 items.
25+
- Passed: `git diff --check`
26+
- Note: Git printed line-ending normalization warnings for existing Windows-touched files, but no whitespace errors were reported.
27+
28+
## Playwright Coverage
29+
30+
- Verifies speech runtime buttons are at the bottom of the Text to Speak accordion.
31+
- Verifies Text to Speak content bottom alignment and textarea `resize: none`.
32+
- Verifies stale old object payloads are rejected through schema validation, not stale-field special-casing.
33+
- Verifies stale constants/helpers are absent from the Text to Speech V2 app source.
34+
- Verifies Asteroids, Gravity Well, and Pong manifests/configs no longer expose `text2speach-V2`.
35+
- Verifies sample 1903 Text to Speech V2 JSON still loads and renders as the validated root array payload.
36+
37+
## Skipped
38+
39+
- Full samples smoke test was not run. The BUILD request explicitly said not to run it; this PR is scoped to Text to Speech V2 layout/schema cleanup and three game manifest references, with focused Workspace V2 coverage.
40+
41+
## Scope Guard
42+
43+
- No `start_of_day` files changed.
44+
- No unrelated schemas were changed.
45+
- No unrelated tools were changed.
46+
- Sample 1903 Text to Speech V2 JSON was not removed.

games/Asteroids/game.manifest.json

Lines changed: 0 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -208,53 +208,6 @@
208208
}
209209
}
210210
},
211-
"text2speach-V2": [
212-
{
213-
"id": "narrator-welcome",
214-
"name": "Narrator welcome",
215-
"text": "Welcome to Toolbox Aid. This is the default Text to Speech V2 sample line for previewing narration, prompts, and menu feedback.",
216-
"gender": "any",
217-
"language": "en-US",
218-
"voice": "mock-google-us-english",
219-
"voiceAge": "any",
220-
"volume": 1,
221-
"rate": 1,
222-
"pitch": 1,
223-
"queueMode": "replace",
224-
"characterPreset": "narrator",
225-
"ssmlLikePreset": "normal"
226-
},
227-
{
228-
"id": "hero-ready",
229-
"name": "Hero ready",
230-
"text": "Systems ready. The hero prompt is queued for an upbeat menu confirmation.",
231-
"gender": "male-preferred",
232-
"language": "en-GB",
233-
"voice": "mock-google-uk-english-male",
234-
"voiceAge": "teen",
235-
"volume": 1,
236-
"rate": 1.2,
237-
"pitch": 1.4,
238-
"queueMode": "append",
239-
"characterPreset": "dramatic",
240-
"ssmlLikePreset": "normal"
241-
},
242-
{
243-
"id": "alert-warning",
244-
"name": "Alert warning",
245-
"text": "Warning. Incoming hazard detected. Please confirm the next action.",
246-
"gender": "female-preferred",
247-
"language": "en-US",
248-
"voice": "mock-microsoft-zira",
249-
"voiceAge": "adult",
250-
"volume": 0.9,
251-
"rate": 1.3,
252-
"pitch": 0.9,
253-
"queueMode": "replace",
254-
"characterPreset": "alert",
255-
"ssmlLikePreset": "normal"
256-
}
257-
],
258211
"vector-map-editor": {
259212
"vectorMapDocument": {
260213
"schema": "html-js-gaming.vector-map",

games/GravityWell/game.manifest.json

Lines changed: 1 addition & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -100,54 +100,7 @@
100100
"source": "manifest"
101101
}
102102
}
103-
},
104-
"text2speach-V2": [
105-
{
106-
"id": "narrator-welcome",
107-
"name": "Narrator welcome",
108-
"text": "Welcome to Toolbox Aid. This is the default Text to Speech V2 sample line for previewing narration, prompts, and menu feedback.",
109-
"gender": "any",
110-
"language": "en-US",
111-
"voice": "mock-google-us-english",
112-
"voiceAge": "any",
113-
"volume": 1,
114-
"rate": 1,
115-
"pitch": 1,
116-
"queueMode": "replace",
117-
"characterPreset": "narrator",
118-
"ssmlLikePreset": "normal"
119-
},
120-
{
121-
"id": "hero-ready",
122-
"name": "Hero ready",
123-
"text": "Systems ready. The hero prompt is queued for an upbeat menu confirmation.",
124-
"gender": "male-preferred",
125-
"language": "en-GB",
126-
"voice": "mock-google-uk-english-male",
127-
"voiceAge": "teen",
128-
"volume": 1,
129-
"rate": 1.2,
130-
"pitch": 1.4,
131-
"queueMode": "append",
132-
"characterPreset": "dramatic",
133-
"ssmlLikePreset": "normal"
134-
},
135-
{
136-
"id": "alert-warning",
137-
"name": "Alert warning",
138-
"text": "Warning. Incoming hazard detected. Please confirm the next action.",
139-
"gender": "female-preferred",
140-
"language": "en-US",
141-
"voice": "mock-microsoft-zira",
142-
"voiceAge": "adult",
143-
"volume": 0.9,
144-
"rate": 1.3,
145-
"pitch": 0.9,
146-
"queueMode": "replace",
147-
"characterPreset": "alert",
148-
"ssmlLikePreset": "normal"
149-
}
150-
]
103+
}
151104
}
152105
}
153106
}

games/pong/game.manifest.json

Lines changed: 1 addition & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -90,54 +90,7 @@
9090
"source": "manifest"
9191
}
9292
}
93-
},
94-
"text2speach-V2": [
95-
{
96-
"id": "narrator-welcome",
97-
"name": "Narrator welcome",
98-
"text": "Welcome to Toolbox Aid. This is the default Text to Speech V2 sample line for previewing narration, prompts, and menu feedback.",
99-
"gender": "any",
100-
"language": "en-US",
101-
"voice": "mock-google-us-english",
102-
"voiceAge": "any",
103-
"volume": 1,
104-
"rate": 1,
105-
"pitch": 1,
106-
"queueMode": "replace",
107-
"characterPreset": "narrator",
108-
"ssmlLikePreset": "normal"
109-
},
110-
{
111-
"id": "hero-ready",
112-
"name": "Hero ready",
113-
"text": "Systems ready. The hero prompt is queued for an upbeat menu confirmation.",
114-
"gender": "male-preferred",
115-
"language": "en-GB",
116-
"voice": "mock-google-uk-english-male",
117-
"voiceAge": "teen",
118-
"volume": 1,
119-
"rate": 1.2,
120-
"pitch": 1.4,
121-
"queueMode": "append",
122-
"characterPreset": "dramatic",
123-
"ssmlLikePreset": "normal"
124-
},
125-
{
126-
"id": "alert-warning",
127-
"name": "Alert warning",
128-
"text": "Warning. Incoming hazard detected. Please confirm the next action.",
129-
"gender": "female-preferred",
130-
"language": "en-US",
131-
"voice": "mock-microsoft-zira",
132-
"voiceAge": "adult",
133-
"volume": 0.9,
134-
"rate": 1.3,
135-
"pitch": 0.9,
136-
"queueMode": "replace",
137-
"characterPreset": "alert",
138-
"ssmlLikePreset": "normal"
139-
}
140-
]
93+
}
14194
}
14295
}
14396
}

0 commit comments

Comments
 (0)