mirror of
https://github.com/stablyai/orca.git
synced 2026-11-13 09:27:29 +00:00
* fix(terminal): paint a new WebGL canvas inside a synchronized frame instead of leaving it blank A replaced WebGL renderer's first paint went through terminal.refresh(), which xterm buffers while DEC 2026 synchronized output is held. The old canvas is already gone, so the pane showed an empty canvas until the program closed its frame. Over a remote link Codex's frames often span packets, so revealing a remote worktree flashed blank/content for under a second, only with WebGL. Paint a just-attached or just-resized canvas at once. A canvas created while its renderer is paused (hidden worktree) is remembered until its first paint, so the reveal present paints it through the open frame instead of waiting. Also drop the WebGL rebuild after every reattach replay: it worked around an atlas problem that no longer exists and replaced the renderer on every reveal. * fix(terminal): limit a never-painted canvas to one mid-frame paint * test(terminal): prove a swapped WebGL canvas paints through spinner sync frames * fix(terminal): clear the never-painted mark on any forced paint; drop e2e casts * test(terminal): keep the spinner repro inside the flaky-pattern ratchet