Commit Graph

385 Commits

Author SHA1 Message Date
26ff84d70f feat: add central config package 2026-05-26 15:38:08 +02:00
82072b256d refactor: extract public route check into declarative table 2026-05-26 15:32:28 +02:00
f8ba6db3d6 fix: use constant-time comparison for proxy token signature 2026-05-26 15:31:37 +02:00
a190ca417d chore: remove trailing newlines in data fixes 2026-05-26 15:30:33 +02:00
4bf31fb511 fix: log and abort on missing catalog/discover sections 2026-05-26 15:30:28 +02:00
46cff45d0e refactor: extract data fixes into dedicated package 2026-05-26 15:19:40 +02:00
1eb28dad64 fix: formatting and typecheck 2026-05-26 13:49:44 +02:00
4af68021f6 feat: backfill null next_refresh_at in episode cache 2026-05-26 13:48:33 +02:00
36213edd60 feat: add data fix framework 2026-05-26 13:48:31 +02:00
f5dfb91ffe chore: formatting 2026-05-26 13:40:27 +02:00
f5fd50d472 fix: episode refresh lag for airing shows 2026-05-26 13:17:59 +02:00
29c0c0bb18 feat: add studio filter to search pipeline 2026-05-25 17:59:17 +02:00
931398fa67 refactor: use maps.Copy from stdlib 2026-05-25 01:15:45 +02:00
f13f7b7fc6 style: fix gofmt indentation 2026-05-25 01:15:39 +02:00
5d7518afd9 fix: ignore close errors in tests and queries 2026-05-24 22:46:08 +02:00
4606c790f1 fix: handle backend errors and driver import 2026-05-24 22:46:02 +02:00
ae0ac66c2a feat: add atoi and idiv template functions 2026-05-24 20:30:04 +02:00
da9bb56d80 fix: continue watching label 2026-05-24 02:48:07 +02:00
7a18461ca6 fix: add warn levels to observability logs 2026-05-23 18:16:03 +02:00
f33c2e18af refactor: emit structured json logs 2026-05-23 18:08:43 +02:00
c2e4cae253 feat: add observability metrics 2026-05-23 17:13:18 +02:00
767e056aad feat: remove firefox extension 2026-05-23 16:32:08 +02:00
23246e2326 fix: surface segment save errors in editor 2026-05-22 16:43:15 +02:00
51355a4dbc fix: render segment overrides and skip progress 2026-05-22 16:34:38 +02:00
c5c15cdabc fix: rolling session renewal 2026-05-21 19:09:53 +02:00
812dcd2448 feat: typed anime and playback payloads 2026-05-21 16:19:58 +02:00
d94f1516ce YOLO 2026-05-20 17:29:40 +02:00
066305403b fix: drop unused raw expires_at index in favor of datetime index 2026-05-20 17:22:54 +02:00
eed0649569 refactor: use int64 for watchlist map keys 2026-05-20 17:22:54 +02:00
d7fee6d518 fix: use seeded RNG for random anime fallback 2026-05-20 17:22:54 +02:00
0e16f9f720 fix: return 204 and log error on lazy load failure 2026-05-20 17:22:54 +02:00
abc2368842 fix: cast limit to int for slice capacity 2026-05-20 17:22:54 +02:00
2cfab673f6 feat: add request logger middleware 2026-05-20 17:22:54 +02:00
5482a40d47 refactor: extract watchlist map to service, optimize command palette queries 2026-05-20 17:22:54 +02:00
c4bd5cc395 feat: add batch watchlist and command palette db queries 2026-05-20 17:22:54 +02:00
575a7aa417 feat: add hot path indexes for watch list and cache queries 2026-05-20 17:22:54 +02:00
db654c8dee fix: wrap datetime() in jikan cache expiry queries 2026-05-20 17:22:54 +02:00
285367ad84 refactor: rename SkipSegmentOverride to SkipSegmentOverrideRow to avoid sqlc conflict 2026-05-19 11:29:40 +02:00
80e441fc48 chore: remove unused SkipSegmentOverride struct 2026-05-19 11:26:28 +02:00
1a9e1d60bc feat: add skip segment overrides backend 2026-05-19 11:02:54 +02:00
237b5f3004 feat: add API token authentication 2026-05-19 02:46:47 +02:00
ccfb469299 feat: add CORS middleware for API routes 2026-05-19 02:46:44 +02:00
3a4fa82f14 feat: add year field to quick search response 2026-05-19 02:46:41 +02:00
3230cf874f fix: skip hop-by-hop headers in proxy stream 2026-05-18 15:08:43 +02:00
943285b356 feat: add shared size limit constants 2026-05-18 15:08:26 +02:00
56c8618f5f chore: formatting 2026-05-18 14:08:17 +02:00
d258d9af27 feat: add lru+ttl subtitle cache 2026-05-18 14:07:53 +02:00
9859ddea42 feat: add shared user agent constants 2026-05-18 14:07:33 +02:00
825f481329 chore: formatting 2026-05-18 13:59:11 +02:00
a097410f40 refactor: use mock transport in watch order tests and harden server timeouts 2026-05-18 13:58:17 +02:00