Three Video milestones in one push — all verified on both arches.
wm_damage.sg — dirty-rect damage tracker (8ab1e71)
16-slot dirty-rect tracker. wmd_composite_dirty blits only damage ∩ layer rects on each compositor tick — the full framebuffer is no longer re-composited every frame. Each window that moves or redraws marks its bounding rect dirty; the compositor walks the dirty list and exits early.
WMDAMAGE-PASS x86.
wm_shadow.sg — NeXT-style drop-shadows (05a2838)
Per-window shadow geometry, SIMD-blended into the compositor pass before each window blit. Shadow offset, radius, and opacity are uniform across all windows — the Lumen-dark theme picks the defaults. The shadow is a pre-composited BGRA layer; blend_span (SSE2/AVX2) on x86, NEON on ARM.
WMSHADOW-PASS x86.
vid_capture.sg — real-hardware screendumps (2fadf68)
PPM P6 encoder that snapshots the live LFB into a portable bitmap. vid_capture_to_file(path) works on any BGRA or RGB framebuffer — path is a cap-scoped FS handle. This is the QEMU screendump path that fulfils the Director standing rule: QEMU screendump required on every test pass. No exceptions.
VIDCAP-PASS arm + x86.
fb_depth.sg — z-buffer foundation (53a91e1)
16-bit depth buffer at FB_DEPTH_BASE. fbd_test_write(x, y, z) performs depth test + conditional write in one call — foundation for the 3D pipeline that Video's T3 lane will consume.
FBDEPTH-PASS.