Monorepo for Aesthetic.Computer aesthetic.computer

Consolidate tape upload & add 30s duration limit

- Merged track-tape into track-media for unified media handling - Added 30-second duration limit for tape uploads - Client-side validation hides POST button for long tapes - Server validates duration before background processing - Fixed MongoDB index conflict (tapes use non-sparse code index) - Converted totalDuration from milliseconds to seconds in metadata - Added tape:get-info message for duration checking - Implemented Netlify Background Function for MP4 conversion - Updated tape-atproto to use art-guest account for anonymous tapes - Added @ffmpeg-installer/ffmpeg for bundled ffmpeg support - Fixed ffmpeg path initialization to avoid top-level await - Removed deprecated track-tape.mjs (replaced by track-media) - Updated /api/track-tape route to point to track-media - Added /api/tape-convert-background route for background function - Background function uploads video blob directly to ATProto PDS Anonymous tape uploads now work with same flow as paintings/pieces, posting to art.at.aesthetic.computer with video blobs included.


Author Jeffrey Alan Scudder Date Commit Parent 16194b71