8d1f2674fd
feat(web): admin page for files the library has lost — #2527bvandeusen2026-08-16 12:03:59 -04:00
845f45fb0b
refactor(web): one relativeTime for the triage surfaces — #2527bvandeusen2026-08-16 12:01:13 -04:00
aab90a7a39
feat(android): name the missing file behind a greyed playlist row — #2527bvandeusen2026-08-16 11:57:55 -04:00
4c49ee2cc6
feat(web): a playlist entry whose file is missing greys out and is skipped — #2527bvandeusen2026-08-16 11:55:36 -04:00
4dd0a58d63
feat(api): admin surface for files the library has lost — #2527bvandeusen2026-08-16 11:48:45 -04:00
c3f3a17c6d
feat(library): a missing file stays in the playlist, greyed and unplayable — #2527bvandeusen2026-08-16 11:43:05 -04:00
20bd7bfaf8
fix(android): let list content reach the MiniPlayer — #2681bvandeusen2026-08-16 10:40:05 -04:00
aa9f534f3c
Merge pull request 'Genre index: sort A–Z, and repair casing damage at scan time' (#124) from dev into main
v2026.08.08
bvandeusen2026-08-07 21:40:33 -04:00
8e1d25a772
fix(scanner): repair acronym and apostrophe casing on genre tags — #2468bvandeusen2026-08-07 14:43:36 -04:00
4509f740f8
feat(web): sort the genre index A–Z as well as by count — #2468bvandeusen2026-08-07 13:11:10 -04:00
011b4d9a9c
Merge pull request 'ci(release): verify a tag release actually shipped its artifacts' (#123) from dev into main
v2026.08.07
bvandeusen2026-08-07 08:32:48 -04:00
a254cb2273
ci(release): close the verify blind spot, check preconditions before the build
bvandeusen2026-08-07 08:27:09 -04:00
e368b82f0a
ci(release): fail loudly when a tag release ends up without its APK
bvandeusen2026-08-07 08:23:11 -04:00
d5aa081157
Merge pull request 'Recommendation metrics: publish the margin of error on every delta' (#122) from dev into main
bvandeusen2026-08-06 21:50:41 -04:00
304de88c50
test(tuning): assert headers by exact accessible name — #2495bvandeusen2026-08-06 21:27:22 -04:00
96abb48086
test(tuning): query the window/last-week headers as column headers — #2495bvandeusen2026-08-06 21:20:18 -04:00
a094d5f8b0
test(metrics): target deltas by test id, not by glyph — #2495bvandeusen2026-08-06 21:14:53 -04:00
a99f855e98
Merge pull request 'Missing files: detect them, stop offering them, and follow them when they move' (#121) from dev into main
bvandeusen2026-08-06 20:40:39 -04:00
24d330424f
feat(library): adopt moved files instead of forking their history — #2528bvandeusen2026-08-06 15:56:07 -04:00
f6d1cf24f0
feat(library): detect missing files and stop offering them — #2523bvandeusen2026-08-06 14:34:53 -04:00
7e4727fc49
Merge pull request 'Genre tags: read multi-value frames correctly, and repair existing rows' (#120) from dev into main
v2026.08.06
bvandeusen2026-08-05 22:10:41 -04:00
fd27819cdd
style(scanner): tagged switch on ID3 major version — #2499bvandeusen2026-08-05 21:22:53 -04:00
1b7fa635d8
Merge pull request 'Silent self-update, active sessions with real client IPs, genre/year browsing, handoff fix' (#119) from dev into main
v2026.08.05
bvandeusen2026-08-05 15:14:48 -04:00
78aa9befb6
fix(connectivity): probe on foreground; a burst can't corroborate ServerDown — #1209bvandeusen2026-08-05 14:41:48 -04:00
a9ca49dc4e
feat(library): genre + year quick-jumps on album and artist detail — #367bvandeusen2026-08-05 13:50:29 -04:00
57d2299180
Merge pull request 'Queue row gestures: album art as grab surface + swipe-to-remove' (#118) from dev into main
v2026.08.04
bvandeusen2026-08-04 11:37:30 -04:00
fa7ea41ccf
Merge pull request 'Minstrel gets a mark — favicon, header lockup, Android adaptive icon' (#117) from dev into main
bvandeusen2026-08-03 20:52:27 -04:00
e1e591b520
feat(brand): Minstrel mark — favicon, header lockup, Android adaptive icon
bvandeusenandClaude Opus 52026-08-03 16:37:25 -04:00
324059b2bd
Merge pull request 'Discover request surface — taste-aware, rotating, snoozable, tag-targeted (milestone #268)' (#116) from dev into main
v2026.08.03
bvandeusen2026-08-03 08:38:24 -04:00
8483948f23
docs(ci): true up ci-requirements.md — ci-android replaced ci-flutter
bvandeusenandClaude Opus 52026-08-01 10:38:50 -04:00
0cea82984c
Merge pull request 'Home updating-veil rework: change-triggered, settle-driven, with refresh feedback' (#114) from dev into main
v2026.08.01
bvandeusen2026-07-31 23:32:05 -04:00