The surface already presents with AppKit's transaction, but a resize only requested a redraw, so the window could show the previous frame stretched to the new size until the next turn of the event loop. Resized now draws before returning. Built and tested headless; the visual result has not yet been checked on a display. Assisted-by: claude-opus-5.5