docs(@projects): update p2-46 objective status with weston rendering gap

Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
This commit is contained in:
Natalie 2026-05-07 17:06:33 -07:00
parent bcdc2b2882
commit 710f08d961

View file

@ -192,3 +192,15 @@ Six of eight acceptance bullets remain un-met. Bullets 1 (crate scaffolded) and
## 2026-05-07 status correction
Status reverted `done``partial`. The screenshot at `.project/screenshots/p2-46-replay-viewer-proof.png` (commit `61230314f`) does NOT satisfy bullet 8 — it shows the main menu overlaid on the Throne Room layer, NOT the replay viewer scene with scrubber + event panel populated at turn 25/50. The proof scene `proof_replay_viewer.gd` likely failed to navigate into the replay viewer or the wrong scene was captured. Bullet 8 stays `[ ]`. Re-run required: ensure `proof_replay_viewer.gd::_ready` actually instantiates the replay_viewer.tscn, calls `write_fixture` to seed an archive, calls `load_history`, then `_goto_turn(25)` followed by `_goto_turn(50)` — and that the screenshot is captured of the replay viewer scene, not the boot menu.
## 2026-05-07 p2-46 close attempt — Weston rendering gap
Built from SHA `a20ee671e` (origin/main). GDExt rebuilt in canonical buildspace (1m53s cached), `GdReplayArchive` + `GdReplayPlayer` confirmed present in `.so` via `nm`. Proof scene executed with full instrumentation:
- `write_fixture` returned UUID `cd0aa7b8-f808-49c2-81d2-70868e73c565` (non-empty)
- `load(REPLAY_VIEWER_SCENE)` returned non-null PackedScene
- Drove to turn 25 → 3s hold, drove to turn 50 → 3s hold → called `_capture_and_quit()`
Despite the full 6-second sequence executing correctly, `get_viewport().get_texture().get_image()` returned stale main-menu framebuffer content. Root cause: Weston headless + `--rendering-method gl_compatibility` + llvmpipe software renderer does not flush composited output after scene transitions. `await RenderingServer.frame_post_draw` was tested as a mitigation — the signal never fires in this environment (Godot timed out without producing a screenshot).
Gap: bullet 8 requires visual confirmation of the proof scene rendering the replay viewer. This cannot be satisfied on apricot Weston with current Godot rendering mode. Next agent must either (a) switch to `--rendering-method vulkan` if llvmpipe Vulkan is available, (b) use `RenderingServer.call_on_render_thread` approach, or (c) run on a machine with proper GPU/display output.