|
|
a595ade533
|
refactor: split watch data build into focused helper functions
|
2026-07-06 07:09:27 +02:00 |
|
|
|
8ec647943e
|
test: replace episode metadata tests with deferred playback test
|
2026-07-06 07:09:23 +02:00 |
|
|
|
722f936734
|
feat: defer provider resolution in watch page handler
|
2026-07-06 07:09:18 +02:00 |
|
|
|
8e11afb3b5
|
test: update episode service tests for provider-only flow
|
2026-07-06 07:09:14 +02:00 |
|
|
|
80b5aec448
|
feat: remove jikan fallback from episode refresh
|
2026-07-06 07:09:10 +02:00 |
|
|
|
d06d6de4c4
|
feat: bump availability version to 4 and drop jikan-only cache paths
|
2026-07-06 07:09:06 +02:00 |
|
|
|
1110cb1809
|
feat: merge provider titles into canonical episodes
|
2026-07-06 07:09:02 +02:00 |
|
|
|
0d2459fa3c
|
feat: fetch episode titles from allanime provider
|
2026-07-06 07:08:57 +02:00 |
|
|
|
9f370448ed
|
feat: add deferred playback data context helpers
|
2026-07-06 07:08:54 +02:00 |
|
|
|
6a7cd55b47
|
feat: add title field to episode availability domain
|
2026-07-06 07:08:48 +02:00 |
|
|
|
217478c894
|
refactor: reduce cyclomatic complexity in template tests
|
2026-07-05 23:27:11 +02:00 |
|
|
|
137c6ab644
|
test: use wg.Go in concurrent resolve test
|
2026-07-05 23:25:17 +02:00 |
|
|
|
539dd917f8
|
chore: remove stale audit fix documents
|
2026-07-05 23:24:26 +02:00 |
|
|
|
1317bbb532
|
chore: move static assets from assets/source to static/assets
|
2026-07-05 23:22:45 +02:00 |
|
|
|
d3ddf5d228
|
chore: remove audit screenshots and report, keep fix documents
|
2026-07-05 23:17:16 +02:00 |
|
|
|
3c82c32e87
|
feat: prefetch next episode and hover-preload in player
|
2026-07-05 23:09:04 +02:00 |
|
|
|
7d59674649
|
test: add forced source refresh and manifest cache integration tests
|
2026-07-05 23:08:50 +02:00 |
|
|
|
7278676a2e
|
refactor: sanitize proxy error messages and observability
|
2026-07-05 23:08:44 +02:00 |
|
|
|
0abee703a1
|
feat: wire source cache and manifest cache into playback pipeline
|
2026-07-05 23:08:39 +02:00 |
|
|
|
8c2562496a
|
feat: add HLS manifest cache with TTL-based expiry
|
2026-07-05 23:08:34 +02:00 |
|
|
|
a0d11e3a7b
|
feat: add source cache with stale-while-revalidate
|
2026-07-05 23:08:26 +02:00 |
|
|
|
a9bb16d8b5
|
style: use range-over-int in sequel test
|
2026-07-05 22:08:34 +02:00 |
|
|
|
a31d71bca6
|
refactor: use strings.SplitSeq in static delivery
|
2026-07-05 22:08:29 +02:00 |
|
|
|
11ec256e18
|
refactor: use strings.SplitSeq in cookie Forwarded parsing
|
2026-07-05 22:08:25 +02:00 |
|
|
|
7dfc54b3e3
|
refactor: use slices.Contains for season validation
|
2026-07-05 22:08:21 +02:00 |
|
|
|
d2d94b919d
|
refactor: use maps.Copy for watchlist map clone
|
2026-07-05 22:08:17 +02:00 |
|
|
|
a3cfae33f2
|
test: add shared cache test for top pick/top picks
|
2026-07-05 22:06:06 +02:00 |
|
|
|
04a9b0b0bd
|
feat: share cache between top pick and top picks endpoints
|
2026-07-05 22:06:00 +02:00 |
|
|
|
57a6aa8f7a
|
test: fix port default test to match behavior
|
2026-07-04 05:20:36 +02:00 |
|
|
|
9c19f0da1e
|
test: add formatHTTPStatus tests
|
2026-07-04 05:17:30 +02:00 |
|
|
|
d1eafdd6de
|
test: add isLocalClientIP tests
|
2026-07-04 05:17:30 +02:00 |
|
|
|
a527981447
|
test: add formatBytes tests
|
2026-07-04 05:17:30 +02:00 |
|
|
|
43fb5509f1
|
test: add formatDurationMillis tests
|
2026-07-04 05:17:29 +02:00 |
|
|
|
b796560f77
|
test: add quoteIfNeeded tests
|
2026-07-04 05:16:25 +02:00 |
|
|
|
e1de04f72e
|
test: add popField and field formatting tests
|
2026-07-04 05:16:25 +02:00 |
|
|
|
f4cacd7390
|
test: add cloneFields tests
|
2026-07-04 05:16:25 +02:00 |
|
|
|
42fcc94773
|
test: add respond helper tests
|
2026-07-04 05:15:19 +02:00 |
|
|
|
992705a2b6
|
test: add cors middleware tests
|
2026-07-04 05:14:36 +02:00 |
|
|
|
54f92725d9
|
test: add config loading and helper tests
|
2026-07-04 05:13:18 +02:00 |
|
|
|
9955c7b000
|
test: add episode transition tests for in-page navigation
|
2026-07-04 05:10:34 +02:00 |
|
|
|
9ac41d3f9f
|
feat: add aria-current to episode links for accessibility
|
2026-07-04 05:09:45 +02:00 |
|
|
|
489d025426
|
feat: always render prev/next buttons with aria and data attrs
|
2026-07-04 05:08:28 +02:00 |
|
|
|
85e0dd5913
|
feat: add data-episode-navigation attribute to watch layout
|
2026-07-04 05:07:33 +02:00 |
|
|
|
8ababab46b
|
feat: wire episode navigation into player init
|
2026-07-04 05:03:59 +02:00 |
|
|
|
2952bd0e89
|
feat: add in-page episode transition system
|
2026-07-04 05:03:35 +02:00 |
|
|
|
66fa70e6ad
|
feat: add updateEpisodeNavigation and focus restore in updateEpisodeHighlight
|
2026-07-04 05:03:10 +02:00 |
|
|
|
72c5c99737
|
feat: save current episode progress on transition
|
2026-07-04 05:02:45 +02:00 |
|
|
|
3ed092c5c5
|
feat: add preservePosition option to loadVideoSource
|
2026-07-04 05:02:19 +02:00 |
|
|
|
660ae022ea
|
docs: update logo path in readme
|
2026-07-03 16:16:13 +02:00 |
|
|
|
f4bad31290
|
test: update cache policy test for versioned static assets
|
2026-07-03 16:16:13 +02:00 |
|