NEO-29: expand manual QA with client-driven checks

Add explicit client-side validation steps to the NEO-29 manual QA checklist and include the generated Godot uid file created during client test runs.
pull/55/head
VinPropane 2026-04-26 00:00:12 -04:00
parent 1f43d7e26d
commit cb95876f73
2 changed files with 13 additions and 0 deletions

View File

@ -0,0 +1 @@
uid://1r1d8lt00lmr

View File

@ -36,3 +36,15 @@
- [ ] Run `client/scenes/main.tscn` in Godot after slot bindings exist on server.
- [ ] Confirm no startup warnings from `HotbarLoadoutClient` and verify `HotbarState` node exists under the scene root with 8-slot mirror populated from server response.
## 6) Client-driven update sanity (no curl)
- [ ] With `main.tscn` running, open the remote SceneTree and select `HotbarLoadoutClient` under the scene root.
- [ ] Execute `request_bind_slot(2, "prototype_guard")` on that node (Editor script console or remote call).
- [ ] Confirm no client warning log from `HotbarLoadoutClient` and verify `HotbarState.slots_snapshot()` now contains `"prototype_guard"` at index `2`.
- [ ] Restart the client scene and verify hydration still reflects slot `2` from server (proves client fetch + apply path, not just local mutation).
## 7) Client deny-path signal sanity
- [ ] With `main.tscn` running, execute `request_bind_slot(2, "not_real")` on `HotbarLoadoutClient`.
- [ ] Confirm the client logs/handles a deny response (server `updated=false`, `reasonCode="unknown_ability"`), and `HotbarState` remains unchanged from the last valid loadout.