Monorepo for Aesthetic.Computer aesthetic.computer

macpal: send glyph art over the wire (macpal-art) + live hot-swap + device round-trip master

A twin of the caption wire, but for the star's poses. New /api/macpal-art: - POST (admin) merges a { poses: {name: svg} } patch — add/replace/delete named poses, bumps rev; SVGs validated + size-capped, stored in Redis. - GET returns the poses (read what's on the wire); GET ?from=device returns the star's compact self-report (rev + per-pose bytes/hash/source), so you can confirm what it's actually rendering. Pure core split into macpal-art-lib.mjs (26 unit assertions). Star side (ArtPlugin): polls ~45s, on a rev bump writes each pose to ~/Library/Application Support/MacPal/art/<name>.svg (which posePaths now prefers over the bundle art), hot-swaps live via PalController.reloadArt() (reusing the color-toggle's squash pop), and reports its effective art back. --clear empties the dir and the bundle poses resume. CLI: node macpal/art.mjs face.svg | --pose NAME FILE | --dir D | --get [--out D] [--from device] | --delete NAME | --clear [--to fia] The device report is unauthenticated (the star holds no admin token) but a tiny status only — it can never alter the pushed art. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>


+532 -6
6 changed files