Monorepo for Aesthetic.Computer aesthetic.computer

cancelok: the pad gets its own surface — like a nopaint brush buffer master

The bar was painted OVER the candidate, so the bottom 46px of every pad was covered, and worse: the pad normalized taps against the full screen height, so part of its XY range lived under a button and could never be reached. You were judging a clipped instrument. Now there are two surfaces. The pad paints into its own buffer and is told that buffer IS its screen — so its world is genuinely that size, not merely cropped. Events are clamped to the stage before they're handed over. Then we composite. The subtle part, and it cost a broken render to find: the pad's `screen` must BE the stage buffer, not a copy of the real screen with a shorter height. Per-pixel pads (vex, molten) write straight into `screen.pixels` and never touch page() — handing them a fake screen still pointing at the real pixel array made them scribble into the wrong buffer at the wrong stride. `vex` came out as grey scanlines instead of plasma. It renders identically to standalone now. The cron runs --no-ship: the machine can make things unattended, but it can't decide anyone else has to look at them. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>


+57 -10
2 changed files