2026-04-08 - 2026-07-08

Overview

107 Active Pull Requests
0 Active Issues
Excluding merges, 1 author has pushed 2 commits to main and 1648 commits to all branches. On main, 4 files have changed and there have been 100 additions and 0 deletions.

38 Releases published by 1 user

Published v2026.07.02 v2026.07.02 — Android auto-recovery: failed loads heal on reconnect 2026-07-02 16:45:36 -04:00

Published v2026.06.30 v2026.06.30 — Device diagnostics & debug reporting (M9) + follow-ups 2026-06-30 19:24:58 -04:00

Published v2026.06.20 v2026.06.20 — Image rendering resilience + player error recovery (skip, self-heal, live refresh) 2026-06-20 21:04:04 -04:00

Published v2026.06.12 v2026.06.12 — UPnP/Sonos cast resilience (lock, drop-suppression, session adopt) + recommendation tuning 2026-06-12 21:26:09 -04:00

Published v2026.06.11 v2026.06.11 — History repair, offline robustness, recommendations 2026-06-11 23:34:02 -04:00

Published v2026.06.07 v2026.06.07 2026-06-07 19:15:01 -04:00

Published v2026.06.06 v2026.06.06 2026-06-06 23:37:08 -04:00

Published v2026.06.05 v2026.06.05 2026-06-05 13:31:28 -04:00

Published v2026.06.04 v2026.06.04 2026-06-04 23:03:04 -04:00

Published v2026.06.03 v2026.06.03 2026-06-03 15:45:09 -04:00

Published v2026.06.02 v2026.06.02 2026-06-02 22:30:20 -04:00

Published v2026.06.01 v2026.06.01 2026-06-01 21:55:49 -04:00

Published v2026.05.21.0 v2026.05.21.0 — Wear OS dispatch fix, playlist-load feedback 2026-05-21 15:42:28 -04:00

Published v2026.05.19.3 v2026.05.19.3 2026-05-19 15:48:31 -04:00

Published v2026.05.19.2 v2026.05.19.2 2026-05-19 07:48:25 -04:00

Published v2026.05.19.1 v2026.05.19.1 2026-05-18 23:09:15 -04:00

Published v2026.05.19.0 v2026.05.19.0 2026-05-18 21:43:05 -04:00

Published v2026.05.18.0 v2026.05.18.0 2026-05-17 22:41:32 -04:00

Published v2026.05.16.0 v2026.05.16.0 2026-05-16 18:59:06 -04:00

Published v2026.05.15.1 v2026.05.15.1 2026-05-16 00:32:34 -04:00

Published v2026.05.15.0 v2026.05.15.0 2026-05-15 23:16:08 -04:00

Published v2026.05.14.0 v2026.05.14.0 2026-05-14 21:17:57 -04:00

Published v2026.05.13.3 v2026.05.13.3 — full-player seed + Wear MediaSession surface 2026-05-14 14:19:53 -04:00

Published v2026.05.13.2 v2026.05.13.2 — artist covers + load-then-swap player transitions 2026-05-14 12:31:56 -04:00

Published v2026.05.13.1 v2026.05.13.1 — player + Discover fixes, drift-first Library tabs 2026-05-14 11:18:05 -04:00

Published v2026.05.13.0 v2026.05.13.0 — SSE live updates + offline cache + per-item rendering 2026-05-13 22:37:08 -04:00

Published v2026.05.12.1 v2026.05.12.1 — Discover tile + player nav + cache hygiene 2026-05-11 23:58:58 -04:00

Published v2026.05.12.0 v2026.05.12.0 — server perf + Flutter caching/UX polish 2026-05-11 20:36:13 -04:00

Published v2026.05.11.2 v2026.05.11.2 — release signing + library infinite scroll 2026-05-11 15:51:52 -04:00

Published v2026.05.11.1 v2026.05.11.1 — Flutter caching, navigation, and player polish 2026-05-11 13:47:55 -04:00

Published v2026.05.11.0 v2026.05.11.0 — M5/M6/M7 + Flutter v1 polish 2026-05-11 11:22:10 -04:00

Published v2026.05.10.2 v2026.05.10.2 2026-05-10 23:20:59 -04:00

Published v2026.05.10.1 v2026.05.10.1 2026-05-10 21:45:22 -04:00

Published v2026.05.10.0 v2026.05.10.0 2026-05-10 21:10:04 -04:00

Published v2026.05.08.4 v2026.05.08.4 2026-05-08 22:20:03 -04:00

Published v2026.05.08.3 v2026.05.08.3 2026-05-08 22:08:27 -04:00

Published v2026.05.08.2 v2026.05.08.2 2026-05-08 18:02:06 -04:00

Published v2026.05.08.1 v2026.05.08.1 — DRY pass + cover-art HTTP base 2026-05-08 13:46:23 -04:00

107 Pull requests merged by 1 user

Merged #107 Milestone 127: recommendation quality — provenance, tiered mixes, For You v2, tuning lab 2026-07-03 10:13:50 -04:00

Merged #106 fix(android/resilience): auto-recover failed loads on reconnect 2026-07-02 16:45:13 -04:00

Merged #105 M9 diagnostics follow-ups: playback relabel, sort, connected fix, per-skip + track-identity 2026-06-30 19:19:15 -04:00

Merged #104 M9 — Device diagnostics & debug reporting (connectivity + UPnP desync) 2026-06-29 19:24:16 -04:00

Merged #103 Image rendering + player resilience (#968, #980) 2026-06-20 20:57:39 -04:00

Merged #102 feat: scan on startup by default + README first-run walkthrough & screenshots 2026-06-20 11:40:56 -04:00

Merged #101 docs: correct README setup/OOBE + fix data-volume mount 2026-06-20 10:58:08 -04:00

Merged #100 ci(release): bundle the latest release APK into non-tag :latest builds 2026-06-14 22:55:23 -04:00

Merged #99 Web UI: Most Played hover fix, narrower seek bar, Android-parity track kebab 2026-06-14 22:26:52 -04:00

Merged #98 fix(android): UPnP cast resilience — drop-suppression, session adopt, recovery hardening 2026-06-12 21:25:25 -04:00

Merged #97 fix(android): hold WiFi+wake lock during UPnP cast (locked-screen poll starvation) 2026-06-12 19:45:45 -04:00

Merged #96 Recommendation batch: You-might-like fallback + taste 2b + observability 2026-06-12 01:10:10 -04:00

Merged #95 You-might-like: liked-entity fallback when the section is thin (#790) 2026-06-11 23:33:26 -04:00

Merged #94 "You might like" web client row (#790 web slice) 2026-06-11 23:01:38 -04:00

Merged #93 Move "You might like" row under the system-playlists section 2026-06-11 22:55:52 -04:00

Merged #92 "You might like" Android client row (#790 client slice) 2026-06-11 22:36:22 -04:00

Merged #91 "You might like" Home rows + taste profile (learn + apply) 2026-06-11 21:41:18 -04:00

Merged #90 Offline/playback recording robustness (contract-audit follow-ups) 2026-06-11 14:19:27 -04:00

Merged #89 fix: restore native Android play-event recording (History was empty) 2026-06-11 09:08:21 -04:00

Merged #88 v2026.06.07 — Sonos: one SOAP failure no longer drops to local 2026-06-07 19:14:46 -04:00

Merged #57 chore: Configure Renovate 2026-06-07 12:00:44 -04:00

Merged #87 v2026.06.06 — UPnP recovery, library watcher, artist discovery, request auto-poll 2026-06-06 23:31:28 -04:00

Merged #86 Unify offline detection + offline playlist UX (NetworkStatusController) 2026-06-05 13:27:36 -04:00

Merged #85 fix(android): don't flip offline on WAN-validation flicker — trust /healthz 2026-06-04 23:02:28 -04:00

Merged #84 fix(android): notification art uses album cover, not embedded stream tags 2026-06-04 22:35:21 -04:00

Merged #83 Sonos queue resync + cold-start prefetcher gate 2026-06-04 17:36:31 -04:00

Merged #82 fix(android): hysteresis on /healthz reachable signal 2026-06-04 14:23:49 -04:00

Merged #81 Android #618 offline-mode UX + Sonos polish + server DRY 2026-06-04 12:53:59 -04:00

Merged #80 dev → main: collage center-crop, server DRY, CI durability-off 2026-06-04 08:42:36 -04:00

Merged #79 dev → main: Android UPnP/Sonos transport parity + server stream URL extension 2026-06-04 08:15:15 -04:00

Merged #78 v2026.06.03 hotfix — Sonos cast URL + UPnP picker polish 2026-06-03 15:30:09 -04:00

Merged #77 v2026.06.03 — Media3 like button + Bluetooth/UPnP picker + system playlist daily rotation 2026-06-03 14:09:23 -04:00

Merged #76 fix(android): interceptor order — auth before baseUrl (hotfix for v2026.06.02) 2026-06-02 22:07:32 -04:00

Merged #75 Drift audit 2026-06-02 — 26 findings shipped 2026-06-02 19:21:53 -04:00

Merged #74 Playback errors slice + scrubber polish + various polish 2026-06-02 14:14:11 -04:00

Merged #73 Discover artwork + Library icon + notification tap routing 2026-06-02 09:58:10 -04:00

Merged #72 Lock Android MainActivity to portrait 2026-06-02 08:19:08 -04:00

Merged #71 Keep onPostScroll under detekt ReturnCount limit 2026-06-02 08:10:12 -04:00

Merged #70 Alphabet rail page-chasing + Songs Like fix + scrubber polish 2026-06-01 23:36:08 -04:00

Merged #69 Web Library: alphabet rail always shows #/A-Z/& 2026-06-01 21:55:50 -04:00

Merged #68 Web Library: continuous grid + sticky alphabet rail 2026-06-01 21:36:55 -04:00

Merged #67 Web: Most Played horizontal tiles + nav centering + Library link + Search refinements 2026-06-01 21:06:03 -04:00

Merged #66 Web Home: drop hero row + compact Rediscover tiles 2026-06-01 20:43:53 -04:00

Merged #65 Android v1 polish + Web UI flavor pass 2026-06-01 20:17:49 -04:00

Merged #64 ci: chain APK build → image build via needs (fix race, kill polling) 2026-06-01 18:31:13 -04:00

Merged #63 ci(android): make APK attach failures visible (debug v2026.06.01 missing asset) 2026-06-01 18:13:43 -04:00

Merged #62 ci: pin upload-artifact to v3 (Gitea GHES-mode incompatible with v4) 2026-06-01 17:38:24 -04:00

Merged #61 fix(android): remove WorkManager auto-initializer (lintVitalRelease) 2026-06-01 16:55:52 -04:00

Merged #60 fix(docker): bump builder to go 1.25 to match go.mod 2026-06-01 16:13:43 -04:00

Merged #59 Release: web UX overhaul + Android native port + server polish 2026-06-01 16:11:21 -04:00

Merged #58 v2026.05.21.0 — Wear OS dispatch fix, playlist-load feedback, drift CI 2026-05-21 15:42:06 -04:00

Merged #56 v2026.05.19.3 — playback stall resilience + legacy home cleanup 2026-05-19 15:48:08 -04:00

Merged #55 v2026.05.19.2 — hotfix: restore media notification (remove broken custom favorite) 2026-05-19 07:48:10 -04:00

Merged #54 v2026.05.19.1 — hotfix: notification permission + full-player auto-minimize 2026-05-18 23:08:33 -04:00

Merged #53 fix(ci): scope integration Postgres discovery to this job's network 2026-05-18 22:50:36 -04:00

Merged #52 v2026.05.19.0 — MediaSession lifecycle, Lidarr hardening, Lucide migration 2026-05-18 21:42:48 -04:00

Merged #51 Release v2026.05.18.0 — integration-tests-in-CI + recommendations/cover-art/discover batch 2026-05-17 22:41:20 -04:00

Merged #50 Release v2026.05.16.0 — recommendations working end-to-end + cover-art uncap 2026-05-16 18:58:55 -04:00

Merged #49 Hotfix v2026.05.15.1 — allow discovery-mix variants in playlists CHECK constraints 2026-05-16 00:32:26 -04:00

Merged #48 Release v2026.05.15.0 — system playlists v2, offline cache rework, CI speedup 2026-05-15 23:15:48 -04:00

Merged #47 Release v2026.05.14.0 — player polish, CacheFiller, offline mutation queue 2026-05-14 21:17:45 -04:00

Merged #46 release v2026.05.13.3: full-player seed + MediaSession expansion (Wear) 2026-05-14 14:19:40 -04:00

Merged #45 release v2026.05.13.2: artist covers + load-then-swap player transitions 2026-05-14 12:31:44 -04:00

Merged #44 release v2026.05.13.1: player + Discover hotfix 2026-05-14 11:17:47 -04:00

Merged #43 release v2026.05.13.0: SSE live updates + offline cache + per-item rendering 2026-05-13 22:36:49 -04:00

Merged #42 release v2026.05.12.1: Discover surface + nav fixes + cache hygiene 2026-05-11 23:58:44 -04:00

Merged #41 release v2026.05.11.3: caching, perf, playlist polish 2026-05-11 20:35:49 -04:00

Merged #40 release v2026.05.11.2: signing key + library infinite scroll 2026-05-11 15:51:43 -04:00

Merged #39 release v2026.05.11.1: Flutter caching, navigation, and player polish 2026-05-11 13:47:43 -04:00

Merged #38 release: M5-M7 server + web + Flutter, plus Flutter v1 polish 2026-05-11 11:22:00 -04:00

Merged #37 fix(web): download button + server version display 2026-05-10 23:20:43 -04:00

Merged #36 ci: unify REGISTRY_TOKEN + RELEASE_TOKEN into CI_TOKEN 2026-05-10 21:45:03 -04:00

Merged #35 M5–M7 sweep + offline cache + in-app updates + DRY pass 2026-05-10 21:09:39 -04:00

Merged #34 refactor(server): remove bootstrap admin path 2026-05-08 22:19:41 -04:00

Merged #33 feat(flutter): admin parity slice — requests, quarantine, users, invites 2026-05-08 22:08:00 -04:00

Merged #32 fix(web): /register reachable for bootstrap admin (closes #376) 2026-05-08 18:01:39 -04:00

Merged #31 Release v2026.05.08.1 — DRY pass + cover-art HTTP base 2026-05-08 13:45:44 -04:00

Merged #30 M5a frontend + M5b quarantine + M5c suggestions 2026-05-01 07:14:20 -04:00

Merged #29 test: stop wiping admin user during integration tests 2026-04-29 12:24:09 -04:00

Merged #28 feat: M4c radio similarity-driven candidate pool + 80% queue refresh (closes M4) 2026-04-29 10:45:19 -04:00

Merged #27 feat: M4b inbound ListenBrainz similarity ingest 2026-04-28 21:22:38 -04:00

Merged #26 feat: M4a outbound ListenBrainz scrobble worker 2026-04-28 18:36:59 -04:00

Merged #25 ci: drop push:dev trigger; PR is the gate 2026-04-28 08:35:54 -04:00

Merged #24 fix: M3.5 polish — genre splitting, radio button, search focus 2026-04-28 00:04:14 -04:00

Merged #23 feat: M3 session similarity + contextual_match_score (closes M3) 2026-04-27 23:02:29 -04:00

Merged #22 feat: M3 session vectors + contextual_likes capture 2026-04-27 19:56:25 -04:00

Merged #21 feat: M3 weighted shuffle v1 — real /api/radio with scoring 2026-04-27 11:00:29 -04:00

Merged #20 feat: M2 likes — full track/album/artist starring (closes M2) 2026-04-26 23:53:43 -04:00

Merged #19 feat: player + search + M2 events foundation 2026-04-26 11:51:53 -04:00

Merged #18 feat: web UI library views — artists / artist detail / album detail 2026-04-23 22:05:24 -04:00

Merged #17 feat: web UI auth — login page, session store, Shell, TanStack Query 2026-04-23 07:22:53 -04:00

Merged #16 feat: web UI scaffold with embedded SPA and multi-stage Docker build 2026-04-22 14:23:02 -04:00

Merged #15 feat: /api/* library reads, search, and media endpoints 2026-04-21 23:02:29 -04:00

Merged #14 feat: web UI server auth foundation (/api/* login, logout, me) 2026-04-20 22:51:46 -04:00

Merged #13 feat(library): extract track duration via ffprobe 2026-04-20 08:11:10 -04:00

Merged #12 fix(library): drop out-of-range release years instead of failing the album 2026-04-20 00:22:20 -04:00

Merged #11 feat(subsonic): getUser + envelope-shaped 404 for /rest/* 2026-04-19 23:13:40 -04:00

Merged #10 fix(auth): subsonic_password on bootstrap + dev compose defaults 2026-04-19 19:07:14 -04:00

Merged #9 feat(subsonic): stream/download/getCoverArt/scrobble (#296) 2026-04-19 15:33:12 -04:00

Merged #8 feat(subsonic): browse endpoints — getArtists/getAlbum/search3/… (#295) 2026-04-19 15:13:13 -04:00

Merged #7 feat(subsonic): auth + envelope + ping.view + getLicense.view (Fable #294) 2026-04-19 14:10:13 -04:00

Merged #6 M1/#293: library scanner (walk + tag-parse + upsert incremental) + admin scan endpoint 2026-04-19 11:21:11 -04:00

Merged #5 M1/#292: core library schema + sqlc + admin bootstrap 2026-04-18 22:36:26 -04:00

Merged #4 M1/#291: wire Postgres migrations + pgxpool 2026-04-18 21:38:10 -04:00

Merged #3 ci(release): switch registry login to REGISTRY_TOKEN 2026-04-18 19:33:09 -04:00

Merged #2 ci(release): add workflow_dispatch + docker diagnostics 2026-04-18 19:21:18 -04:00

Merged #1 M0: repo scaffolding, CI pipelines, and Go skeleton 2026-04-18 18:00:46 -04:00