Commit Graph

27 Commits

Author SHA1 Message Date
eb9e682b75 chore: formatting 2026-05-26 22:51:50 +02:00
e9576d7584 refactor: domain anime type 2026-05-26 22:45:16 +02:00
65a7b0f50d refactor: typed proxy key 2026-05-26 22:40:09 +02:00
9938bf6c57 fix: stop swallowing errors 2026-05-26 22:36:41 +02:00
57be9a5d70 feat: record audit events for watch progress and completion 2026-05-26 16:14:37 +02:00
28251876e1 fix: handle mac.Write errors in proxy token signing 2026-05-26 15:56:55 +02:00
f8ba6db3d6 fix: use constant-time comparison for proxy token signature 2026-05-26 15:31:37 +02:00
51355a4dbc fix: render segment overrides and skip progress 2026-05-22 16:34:38 +02:00
812dcd2448 feat: typed anime and playback payloads 2026-05-21 16:19:58 +02:00
285367ad84 refactor: rename SkipSegmentOverride to SkipSegmentOverrideRow to avoid sqlc conflict 2026-05-19 11:29:40 +02:00
1a9e1d60bc feat: add skip segment overrides backend 2026-05-19 11:02:54 +02:00
943285b356 feat: add shared size limit constants 2026-05-18 15:08:26 +02:00
9859ddea42 feat: add shared user agent constants 2026-05-18 14:07:33 +02:00
9414d3b51e feat: use canonical episodes in watch data and wire episode service 2026-05-17 21:16:50 +02:00
596e8265f7 refactor: remove noisy debug logging 2026-05-14 12:41:41 +02:00
b3c906a16e fix: centralize watchlist dropdown js and fix page load timing 2026-05-13 19:05:10 +02:00
efbce87d5c feat: set status to completed on anime completion
Check existing watchlist status — if already completed, just clear
progress and remove from continue watching. Otherwise upsert with
status 'completed'.
2026-05-13 18:28:33 +02:00
28e8b322d0 feat: add watch-complete endpoint
Removes continue_watching_entry and clears progress when the last
episode finishes so it no longer shows in Continue Watching.
2026-05-13 18:22:18 +02:00
b7f91f3b1b feat: save progress to continue_watching_entry only
Replace SaveWatchProgress (UPDATE watch_list_entry) with
UpsertContinueWatchingEntry so progress persists for any anime
without creating watchlist entries.
2026-05-13 18:16:02 +02:00
a5b0aeca98 fix: fetch both sub and dub streams on watch page load
Previously the backend only fetched streams for the single requested
mode (defaulting to sub), so modeSources never had a dub entry.
The frontend's switchMode showed visual feedback but streamUrlForMode
returned an empty string since no dub token existed.
Now both modes are fetched and availableModes is derived from what
actually resolved.
2026-05-13 17:53:12 +02:00
846fe9ccd9 feat: add proxy transport with dns caching, subtitle handler, and stream pre-warm 2026-05-13 13:35:27 +02:00
8006868fe2 fix: improve video title matching and segments null error 2026-05-13 13:23:54 +02:00
14b7668afa chore: formatting 2026-05-13 13:01:39 +02:00
0f8d1c7dc0 fix: lint warnings - errcheck and switch style 2026-05-13 12:59:37 +02:00
28a1723166 feat: add proxy tokens, skip segments, and title-based search to playback service 2026-05-13 12:43:08 +02:00
4d1fd2834b feat: migrate playback domain to modular architecture 2026-05-13 11:20:46 +02:00
0d6c7613a9 feat: migrate playback module to modular domain pattern 2026-05-13 10:34:01 +02:00