Commit Graph

296 Commits

Author SHA1 Message Date
Claude
88f878b8eb Move rarely used video actions into a More actions sheet 2026-10-01 20:55:04 +00:00
Claude
47826536a6 Make the refresh button 10% of the row width 2026-10-01 20:43:41 +00:00
Claude
9eb5e98048 Add Gallery action beside Save and an icon-only refresh beside Play all 2026-10-01 20:39:17 +00:00
Claude
02b337fcbc Add save-to-device export, server export route and an On other devices P2P list 2026-10-01 18:53:00 +00:00
Claude
08e95814e5 Support hour-long uploads and videos: raise body limit, stream uploads to disk, cache up to 3 h, add deferred-ideas note 2026-10-01 18:48:37 +00:00
Claude
9d74769029 Add deck tabs, uniform action buttons, lyric reports in the player panel and a song list in the lyrics studio 2026-09-30 15:57:11 +00:00
Claude
e64880c163 Redesign playlist header, player deck, now-playing actions and lyrics panel layout 2026-09-30 15:29:44 +00:00
Claude
3fb1d29d5a Redesign admin as a tabbed lyrics studio with undo, tap-sync pad and reported-line triage 2026-09-30 15:21:11 +00:00
Claude
04a74ab45d Redesign service-mode controls and add per-profile wrong-lyric-line reports 2026-09-30 15:15:07 +00:00
Claude
0d68e7e72f plan: record commit hashes in the queue index 2026-09-30 08:05:17 +00:00
Claude
84cd00368d Add a P2P panel to the admin page 2026-09-30 08:02:52 +00:00
Claude
c55cf1f651 plan: start 019-admin-p2p-panel-4dc623 2026-09-30 07:58:43 +00:00
Claude
60a28fc593 Restore an evicted server copy from an online holder 2026-09-30 07:58:42 +00:00
Claude
6d3cefa874 plan: start 018-server-rehydrate-from-peer-4fb8bd 2026-09-30 07:54:34 +00:00
Claude
c8837befed Download a verified file from another device over WebRTC 2026-09-30 07:54:34 +00:00
Claude
458aff757a plan: start 017-peer-transfer-1faaa7 2026-09-30 07:50:38 +00:00
Claude
8d57a654c1 Let a device hand a file to the server for hashing and validation 2026-09-30 07:50:38 +00:00
Claude
30e61de36f plan: start 016-intake-and-server-verification-cfe031 2026-09-30 07:45:13 +00:00
Claude
61d0274896 Show peer availability with stale markers and add Sharing settings 2026-09-30 07:45:13 +00:00
Claude
780624347f plan: start 015-availability-ui-and-settings-3b9397 2026-09-30 07:42:35 +00:00
Claude
6fa930ad62 Add the /ws/p2p presence and signalling hub and the holders endpoint 2026-09-30 07:42:35 +00:00
Claude
ef7d08f16a plan: start 014-p2p-presence-hub-ceced8 2026-09-30 07:38:47 +00:00
Claude
c629ff5836 Register devices and report verified holdings to the server 2026-09-30 07:38:47 +00:00
Claude
76e0d2f72d plan: start 013-device-identity-and-holdings-3ba493 2026-09-30 07:31:18 +00:00
Claude
6af96622dd Add the on-device IndexedDB file registry and hash saves while downloading 2026-09-30 07:31:18 +00:00
Claude
8b7b2a62bd plan: start 012-device-file-registry-288d55 2026-09-30 07:27:31 +00:00
Claude
b56be586ee Add an incremental SHA-256 library for the browser and node tests 2026-09-30 07:27:31 +00:00
Claude
a27788a80a plan: start 011-browser-sha256-e1793d 2026-09-30 07:25:56 +00:00
Claude
eb3fe45761 Count views and evict server copies by retention criteria before LRU 2026-09-30 07:25:56 +00:00
Claude
f12ca87131 plan: start 010-views-and-retention-d0c6ca 2026-09-30 07:18:52 +00:00
Claude
ea56d286b3 Hash every validated server copy and register it as verified content 2026-09-30 07:18:52 +00:00
Claude
b19193841c plan: start 009-server-content-hash-186e7f 2026-09-30 07:11:55 +00:00
Claude
167df35a97 Add P2P tables, config flags and db helpers 2026-09-30 07:11:55 +00:00
Claude
2d98b25340 plan: start 008-p2p-schema-and-config-127966 2026-09-30 07:04:53 +00:00
Claude
9cac21afce Keep one long-lived yt-dlp worker process instead of spawning per call 2026-09-30 07:04:53 +00:00
Claude
b8658f3a9d plan: start 007-ytdlp-worker-045800 2026-09-30 06:58:05 +00:00
Claude
556436da34 Answer searches from YouTube InnerTube directly with yt-dlp fallback 2026-09-30 06:58:05 +00:00
Claude
d61809f5c4 plan: start 006-innertube-search-48066b 2026-09-30 06:53:48 +00:00
Claude
b24366d6c0 Warm the stream cache for likely next plays 2026-09-30 06:53:48 +00:00
Claude
67c2f6e46c plan: start 005-warm-streams-on-intent-47b3d3 2026-09-30 06:50:31 +00:00
Claude
e2a60792b9 Coalesce concurrent resolveStreams calls for the same video 2026-09-30 06:50:31 +00:00
Claude
617df320c7 plan: start 004-coalesce-stream-resolves-a92d40 2026-09-30 06:47:04 +00:00
Claude
663a33573a Self-host the three web fonts and drop the render-blocking Google Fonts CSS 2026-09-30 06:47:04 +00:00
Claude
1001b85f40 plan: start 003-self-host-fonts-89466b 2026-09-30 06:45:11 +00:00
Claude
794410916a Serve the app shell gzip/brotli-compressed with ETags 2026-09-30 06:45:11 +00:00
Claude
7229ca16b9 plan: start 002-compress-and-etag-shell-bd459c 2026-09-30 06:41:54 +00:00
Claude
7781e0a116 Add startup, search and play timing marks plus yt-dlp duration logs 2026-09-30 06:41:50 +00:00
Claude
7b818baf8d plan: start 001-perf-timing-marks-105acc 2026-09-30 06:39:48 +00:00
Claude
c17bd4c9ac Queue executable speed and peer-to-peer sharing plans with tested patches and harnesses 2026-09-29 19:03:12 +00:00
Claude
a0ffc1b493 Refocus the improvement plan on speed and new features 2026-09-29 17:40:57 +00:00