Skip to content

Commit f851006

Browse files
author
DavidQ
committed
Complete Tool UI Readiness DoD with per-tool control and lifecycle acceptance targets - PR 10.6Q
1 parent 42e23a1 commit f851006

5 files changed

Lines changed: 384 additions & 13 deletions

docs/dev/codex_commands.md

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,8 @@
1-
# Codex Commands — BUILD_PR_LEVEL_10_6P_COMPLETE_TOOL_UI_READINESS_DOD
1+
# Codex command
22

3-
## Model
4-
GPT-5.4
5-
6-
## Reasoning
7-
high
8-
9-
## Command
3+
Model: GPT-5.4
4+
Reasoning: high
105

116
```powershell
12-
codex --model gpt-5.4 --reasoning high "Execute BUILD_PR_LEVEL_10_6P_COMPLETE_TOOL_UI_READINESS_DOD. Read docs/dev/dod/tool_ui_readiness_dod.md. Inspect the current repo tools opened from games/index.html, samples/index.html, Workspace Manager, and sample/game manifests. Do not make broad implementation fixes. First validate whether the DoD misses any required input fields, output fields, UI controls, control-to-data bindings, ready states, error/empty states, or lifecycle/timer reset checks. If anything is missing, update docs/dev/dod/tool_ui_readiness_dod.md in place. Create docs/dev/reports/level_10_6p_tool_ui_readiness_dod_gap_report.md with per-tool findings and explicit yes/no answers. Run npm run test:launch-smoke:games and npm run test:sample-standalone:data-flow if available. Place final ZIP at tmp/BUILD_PR_LEVEL_10_6P_COMPLETE_TOOL_UI_READINESS_DOD.zip."
7+
codex --model gpt-5.4 --reasoning high "Run BUILD_PR_LEVEL_10_6Q_TOOL_UI_READINESS_DOD_COMPLETION. Complete the Tool UI Readiness DoD across all current tools. Do not implement runtime fixes. Inspect actual tool files only as needed. Add or update docs/pr/BUILD_PR_LEVEL_10_6Q_TOOL_UI_READINESS_DOD_COMPLETION.md and write docs/dev/reports/level_10_6Q_tool_ui_readiness_dod_completion_report.md. Explicitly report any missed fields, controls, bindings, inputs, lifecycle/timer checks, and tool-specific acceptance checks. Keep one PR purpose only. Do not modify start_of_day folders. Do not rewrite roadmap content; status-only if execution-backed. Return ZIP at tmp/BUILD_PR_LEVEL_10_6Q_TOOL_UI_READINESS_DOD_COMPLETION.zip."
138
```

docs/dev/commit_comment.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
Complete tool UI readiness DoD and require per-tool gap report - PR 10.6P
1+
Complete Tool UI Readiness DoD with per-tool control and lifecycle acceptance targets - PR 10.6Q

docs/dev/dod/tool_ui_readiness_dod.md

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ all required files fetched
2222
all required file shapes validated
2323
all required UI controls populated from loaded data
2424
all required controls emit readiness diagnostics
25+
safe empty/error state exists for missing required data
2526
no required control uses fallback/demo/default data
2627
no required control silently self-populates
2728
```
@@ -41,6 +42,7 @@ accordion/section auto-closes without user action
4142
tool says success before controls are ready
4243
tool loads from hardcoded sample path
4344
tool loads duplicate wrapper data instead of canonical data
45+
safe empty/error state is missing for required data failures
4446
```
4547

4648
## Mandatory diagnostic events
@@ -56,6 +58,7 @@ Every tool with required data must emit these diagnostics during launch:
5658
[tool-load:classification]
5759
[tool-ui:control-ready]
5860
[tool-ui:lifecycle]
61+
[tool-ui:final-ready]
5962
```
6063

6164
### Required diagnostic fields
@@ -75,6 +78,7 @@ actual.controlValues
7578
actual.outputValues
7679
actual.expectedCount
7780
actual.actualCount
81+
actual.finalReady
7882
classification
7983
```
8084

@@ -91,6 +95,7 @@ empty
9195
defaulted
9296
stale
9397
reset
98+
lifecycle-failure
9499
```
95100

96101
## Required output fields (all tools)
@@ -128,6 +133,19 @@ cause
128133
classification
129134
```
130135

136+
### Required final-ready diagnostics
137+
138+
```text
139+
[tool-ui:final-ready]
140+
toolId
141+
sampleId or gameId when available
142+
requiredInputsReady: true|false
143+
requiredControlsReady: true|false
144+
requiredOutputsReady: true|false
145+
lifecycleStable: true|false
146+
classification
147+
```
148+
131149
### Failure
132150

133151
```text
@@ -401,6 +419,7 @@ palette control populated from canonical palette when visible
401419
paint/fill control binds loaded paint/fill data
402420
stroke control binds loaded stroke data
403421
transform controls bind selected loaded shape/path
422+
for samples 1215/1216/1217, final-ready must fail when palette/paint/stroke bindings are missing
404423
```
405424

406425
### Failure
@@ -456,6 +475,7 @@ entity list populated from vector map entities
456475
selected entity panel binds selected loaded entity
457476
palette/color controls bind canonical palette when required
458477
zoom/pan controls operate on loaded map
478+
samples 1212/1213/1214 may be used as known-good acceptance references for loaded layer/entity bindings
459479
```
460480

461481
### Failure
@@ -505,7 +525,7 @@ event list populated from events array
505525
timeline/scrubber range matches loaded events
506526
playback uses loaded events
507527
current event display updates from loaded event data
508-
speed control affects loaded replay
528+
time readout tracks loaded replay timeline
509529
```
510530

511531
### Failure
@@ -539,6 +559,15 @@ classification/status panel
539559
control readiness table
540560
```
541561

562+
### Required output fields
563+
564+
```text
565+
status text that reports Loaded preset or load failure
566+
required input count output (expected vs actual)
567+
required control count output (expected vs actual)
568+
final readiness output/classification
569+
```
570+
542571
### Success
543572

544573
```text
@@ -1150,7 +1179,7 @@ lifecycle/timer reset checks
11501179
Codex must write findings to:
11511180

11521181
```text
1153-
docs/dev/reports/level_10_6p_tool_ui_readiness_dod_gap_report.md
1182+
docs/dev/reports/level_10_6Q_tool_ui_readiness_dod_completion_report.md
11541183
```
11551184

11561185
If Codex finds a missing field/control/check, it must update this DoD document in the same PR before implementing any stabilization logic.
@@ -1175,6 +1204,6 @@ Codex is done only when:
11751204
```text
11761205
all required input classifications are success
11771206
all required control classifications are success
1178-
no required control classification is missing, wrong-shape, empty, defaulted, stale, or reset
1207+
no required control classification is missing, wrong-path, wrong-shape, empty, defaulted, stale, reset, or lifecycle-failure
11791208
Generic failure signals detected: 0
11801209
```
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# Level 10.6Q Tool UI Readiness DoD Completion Report
2+
3+
## 1. Tools inspected
4+
Inspected active launchable tool surfaces and launch hosts (focused file-backed audit):
5+
- `vector-map-editor`
6+
- `vector-asset-studio`
7+
- `tile-map-editor`
8+
- `parallax-editor`
9+
- `sprite-editor`
10+
- `skin-editor`
11+
- `asset-browser`
12+
- `palette-browser`
13+
- `state-inspector`
14+
- `replay-visualizer`
15+
- `performance-profiler`
16+
- `physics-sandbox`
17+
- `asset-pipeline-tool`
18+
- `tile-model-converter`
19+
- `3d-json-payload-normalizer`
20+
- `3d-asset-viewer`
21+
- `3d-camera-path-editor`
22+
- `workspace-manager`
23+
- sample launch tiles (`samples/index.render.js`)
24+
- game launch tiles (`games/index.render.js`)
25+
- shared diagnostics (`tools/shared/toolLoadDiagnostics.js`)
26+
- shared shell accordion behavior (`tools/shared/platformShell.js`)
27+
28+
## 2. Missing required inputs found
29+
Yes.
30+
- Sample launch tiles currently route `samplePresetPath` only; downstream required dependency keys are not surfaced as a required pre-launch contract in launch UI.
31+
- Workspace Manager forwards query params and validates path prefix/sanitization, but does not expose a per-tool required-input contract table before mount.
32+
- Manifest/Data Flow Inspector is a required DoD category, but no standalone active tool id exists in the current registry for that exact surface.
33+
34+
## 3. Missing UI controls found
35+
Yes (runtime-vs-DoD delta that remains implementation work).
36+
- Sprite Editor: DoD requires explicit `Color 1` / `Color 2` selectors; runtime exposes active color and palette controls but no dedicated Color1/Color2 control ids.
37+
- Replay Visualizer: DoD previously referenced speed control in success logic; runtime exposes timeline/time readout controls, not a dedicated speed control UI.
38+
- Cross-tool: several tools still lack explicit final-ready control surfaces that summarize required inputs/controls/outputs in one place.
39+
40+
## 4. Controls not bound to loaded data
41+
Yes.
42+
- Control-ready diagnostics are not emitted uniformly across all tools.
43+
- `logToolUiControlReady` exists in shared diagnostics but many tools currently only emit load diagnostics (`request/fetch/loaded/warning/error`) without per-control readiness evidence.
44+
- Lifecycle and final-ready diagnostics are not currently emitted from shared diagnostics API (`[tool-ui:lifecycle]` and `[tool-ui:final-ready]` are DoD-required but not implemented as emitters in `toolLoadDiagnostics.js`).
45+
46+
## 5. Timer/lifecycle risks found
47+
Yes.
48+
- DoD now requires lifecycle stability and explicit lifecycle/final-ready diagnostics, but runtime diagnostic coverage is incomplete.
49+
- Shared shell uses accordion state persistence and emits control-ready logs for accordion state; however lifecycle classification events are not emitted as a first-class diagnostic family.
50+
- A delayed watcher start exists in shared shell (`setTimeout` before `startWatching` for sample launches), which reinforces need for lifecycle-phase diagnostics to prove no post-load reset behavior.
51+
52+
## 6. Palette contract gaps found
53+
Yes (mostly diagnostics/readiness proof gaps, not canonical source regression).
54+
- Canonical palette source rules are encoded in DoD; active metadata uses canonical palette paths for palette-browser roundtrips.
55+
- Remaining gap is readiness proof consistency: final-ready/lifecycle diagnostics and per-control readiness are not uniformly emitted across palette-backed tools.
56+
- Sprite Editor still does not expose dedicated Color1/Color2 controls even though DoD requires those acceptance checks.
57+
58+
## 7. Per-tool DoD additions made
59+
Updated `docs/dev/dod/tool_ui_readiness_dod.md` to complete remaining 6Q gaps:
60+
- Added safe empty/error-state requirement to global success/failure rules.
61+
- Added `[tool-ui:final-ready]` to mandatory diagnostic events.
62+
- Added `actual.finalReady` to required diagnostic fields.
63+
- Added `lifecycle-failure` classification value.
64+
- Added explicit required final-ready diagnostic payload block.
65+
- Corrected Replay success criteria to use timeline/time-readout behavior.
66+
- Added Vector Asset Studio sample-specific acceptance check for 1215/1216/1217 palette/paint/stroke readiness.
67+
- Added Vector Map Editor known-good acceptance reference check for 1212/1213/1214.
68+
- Added required output fields block to Manifest/Data Flow Inspector section.
69+
- Updated Codex review output path reference to this 6Q report.
70+
- Tightened final acceptance classification exclusions to include `wrong-path` and `lifecycle-failure`.
71+
72+
## 8. Remaining blockers before UAT
73+
Implementation blockers remain (outside this docs-only PR scope):
74+
- Missing runtime emitters for `[tool-ui:lifecycle]` and `[tool-ui:final-ready]` across active tools.
75+
- Incomplete cross-tool adoption of `[tool-ui:control-ready]` per required control/output.
76+
- Workspace/launch surfaces do not yet show complete downstream required-input readiness before tool mount.
77+
- Sprite Editor dedicated Color1/Color2 control requirement is not yet implemented.
78+
- Manifest/Data Flow Inspector required surface is not represented as an active standalone tool id.
79+
80+
## 9. UAT readiness decision
81+
`NOT READY - DoD complete, implementation fixes required`
82+
83+
The DoD document is now completed for current tool coverage and acceptance language, but runtime diagnostics/control-readiness implementation is not yet complete enough for reliable UAT pass/fail automation.

0 commit comments

Comments
 (0)