# The whole boot path in one script: pardes_init at the grid the offscreen # window actually measured, the first shell reaching its prompt, and the # CoreText pass painting. `draw` is the only command in the suite that touches # the drawing code at all — everything else reads the core's cell buffer, which # a draw(_:) that returned on its first line would leave perfectly intact. # # The macOS backend takes no argv, so it always boots the way a bare # `start 30 140` does in test/snapshots: one terminal pane in raw tty mode, # prompt visible. `$ ` is the prompt the hermetic .bashrc pins, and no chrome # row carries a `$`, so waiting on one is waiting on the shell. start 24 80 wait 8000 Newcol Joincol wait 8000 $ stable 700 20000 snap boot draw boot # The window changing size is the other half of the boot contract: the core # reflows, the view re-measures, and the second `draw` proves the new size is # the size that actually got painted. resize 30 100 stable 700 20000 snap resized draw resized # The panel ABI and the runtime Metal path in one small assertion. Newcol # changes the existing pane and opens a second one; paint order must be moving # then opening, and draw compiles/runs the shader against the whole frame. command PanelSlide command Newcol tracks moving:slide opening:slide draw-effect panels