diff options
Diffstat (limited to 'docs/TODO.md')
| -rw-r--r-- | docs/TODO.md | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/docs/TODO.md b/docs/TODO.md index 27234ea..eba054c 100644 --- a/docs/TODO.md +++ b/docs/TODO.md @@ -14,7 +14,9 @@ The password box's own drop shadow (previously absent entirely - `render_ui_box` `native_lock_render_elements`'s signature changed from four positional buffer arguments to one `NativeLockFrame` struct (background/header/shadow/ui/keyboard/shake_offset) - the four-argument version was already at its readability limit before this added three more optional layers; both call sites (`udev/render.rs`, `winit/render.rs`) extract every layer up front, before the renderer/backend borrow starts, the same pattern the pre-existing `native_bg`/`native_ui` extraction already established. -Full workspace build/test/clippy clean (152 wayland tests, +6 for `lock_stack_layout`/`shake_offset`/`render_keyboard`'s own hit-rect and key-completeness invariants). Not yet visually verified against the real lock screen: `srd dispatch lock` is on the nightshift deny-list specifically to prevent an autonomous session from locking the user out of their own live session, so this needs the user to trigger a real lock and confirm it looks and behaves as intended, or a raw IPC socket write against a disposable nested compositor instance. +Full workspace build/test/clippy clean (152 wayland tests, +6 for `lock_stack_layout`/`shake_offset`/`render_keyboard`'s own hit-rect and key-completeness invariants). + +Attempted a real visual check with a raw IPC socket write (`{"cmd":"lock"}` against `srdwm-wayland-1.sock`) to a disposable nested instance (`WAYLAND_DISPLAY=wayland-1`, winit backend) rather than the live session, per this file's own nested-compositor convention. The nested instance's own EGL context was lost at the exact moment the lock engaged (`eglSwapBuffers`/`eglCreatePlatformWindowSurfaceEXT` both `BAD_ALLOC`, "context has been lost, it needs to be recreated") before a single frame of the new lock UI ever rendered - so no screenshot was possible this way. Before treating that as a bug in this change: built the immediately prior commit (`d097c87`) in a separate worktree and reproduced the exact same crash, at the same point, with byte-identical EGL error text, on code that never touches the lock screen at all. Confirmed pre-existing and environmental (this sandbox's own winit/EGL init already logs several transient `eglQueryDevicesEXT`/`eglInitialize` `BAD_ALLOC` failures before falling back to `llvmpipe` software rendering on ordinary startup, not something the lock-screen change introduced or worsened), not a regression - so this is a real, still-open gap in nested-compositor testing capability on this specific machine, not a lock-screen defect. The real lock screen still needs the user's own live session (or a working nested EGL setup this sandbox doesn't currently have) to visually confirm. ## GPU render path: decorations built after all, on explicit repeated instruction - scoped, not the full port (2026-08-28) |