2025-07-08 - 2026-07-08
Overview
38 Releases published by 1 user
Published
v2026.07.02
v2026.07.02 — Android auto-recovery: failed loads heal on reconnect
Published
v2026.06.30
v2026.06.30 — Device diagnostics & debug reporting (M9) + follow-ups
Published
v2026.06.20
v2026.06.20 — Image rendering resilience + player error recovery (skip, self-heal, live refresh)
Published
v2026.06.12
v2026.06.12 — UPnP/Sonos cast resilience (lock, drop-suppression, session adopt) + recommendation tuning
Published
v2026.06.11
v2026.06.11 — History repair, offline robustness, recommendations
Published
v2026.06.07
v2026.06.07
Published
v2026.06.06
v2026.06.06
Published
v2026.06.05
v2026.06.05
Published
v2026.06.04
v2026.06.04
Published
v2026.06.03
v2026.06.03
Published
v2026.06.02
v2026.06.02
Published
v2026.06.01
v2026.06.01
Published
v2026.05.21.0
v2026.05.21.0 — Wear OS dispatch fix, playlist-load feedback
Published
v2026.05.19.3
v2026.05.19.3
Published
v2026.05.19.2
v2026.05.19.2
Published
v2026.05.19.1
v2026.05.19.1
Published
v2026.05.19.0
v2026.05.19.0
Published
v2026.05.18.0
v2026.05.18.0
Published
v2026.05.16.0
v2026.05.16.0
Published
v2026.05.15.1
v2026.05.15.1
Published
v2026.05.15.0
v2026.05.15.0
Published
v2026.05.14.0
v2026.05.14.0
Published
v2026.05.13.3
v2026.05.13.3 — full-player seed + Wear MediaSession surface
Published
v2026.05.13.2
v2026.05.13.2 — artist covers + load-then-swap player transitions
Published
v2026.05.13.1
v2026.05.13.1 — player + Discover fixes, drift-first Library tabs
Published
v2026.05.13.0
v2026.05.13.0 — SSE live updates + offline cache + per-item rendering
Published
v2026.05.12.1
v2026.05.12.1 — Discover tile + player nav + cache hygiene
Published
v2026.05.12.0
v2026.05.12.0 — server perf + Flutter caching/UX polish
Published
v2026.05.11.2
v2026.05.11.2 — release signing + library infinite scroll
Published
v2026.05.11.1
v2026.05.11.1 — Flutter caching, navigation, and player polish
Published
v2026.05.11.0
v2026.05.11.0 — M5/M6/M7 + Flutter v1 polish
Published
v2026.05.10.2
v2026.05.10.2
Published
v2026.05.10.1
v2026.05.10.1
Published
v2026.05.10.0
v2026.05.10.0
Published
v2026.05.08.4
v2026.05.08.4
Published
v2026.05.08.3
v2026.05.08.3
Published
v2026.05.08.2
v2026.05.08.2
Published
v2026.05.08.1
v2026.05.08.1 — DRY pass + cover-art HTTP base
107 Pull requests merged by 1 user
Merged
#107 Milestone 127: recommendation quality — provenance, tiered mixes, For You v2, tuning lab
Merged
#106 fix(android/resilience): auto-recover failed loads on reconnect
Merged
#105 M9 diagnostics follow-ups: playback relabel, sort, connected fix, per-skip + track-identity
Merged
#104 M9 — Device diagnostics & debug reporting (connectivity + UPnP desync)
Merged
#103 Image rendering + player resilience (#968, #980)
Merged
#102 feat: scan on startup by default + README first-run walkthrough & screenshots
Merged
#101 docs: correct README setup/OOBE + fix data-volume mount
Merged
#100 ci(release): bundle the latest release APK into non-tag :latest builds
Merged
#99 Web UI: Most Played hover fix, narrower seek bar, Android-parity track kebab
Merged
#98 fix(android): UPnP cast resilience — drop-suppression, session adopt, recovery hardening
Merged
#97 fix(android): hold WiFi+wake lock during UPnP cast (locked-screen poll starvation)
Merged
#96 Recommendation batch: You-might-like fallback + taste 2b + observability
Merged
#95 You-might-like: liked-entity fallback when the section is thin (#790)
Merged
#94 "You might like" web client row (#790 web slice)
Merged
#93 Move "You might like" row under the system-playlists section
Merged
#92 "You might like" Android client row (#790 client slice)
Merged
#91 "You might like" Home rows + taste profile (learn + apply)
Merged
#90 Offline/playback recording robustness (contract-audit follow-ups)
Merged
#89 fix: restore native Android play-event recording (History was empty)
Merged
#88 v2026.06.07 — Sonos: one SOAP failure no longer drops to local
Merged
#57 chore: Configure Renovate
Merged
#87 v2026.06.06 — UPnP recovery, library watcher, artist discovery, request auto-poll
Merged
#86 Unify offline detection + offline playlist UX (NetworkStatusController)
Merged
#85 fix(android): don't flip offline on WAN-validation flicker — trust /healthz
Merged
#84 fix(android): notification art uses album cover, not embedded stream tags
Merged
#83 Sonos queue resync + cold-start prefetcher gate
Merged
#82 fix(android): hysteresis on /healthz reachable signal
Merged
#81 Android #618 offline-mode UX + Sonos polish + server DRY
Merged
#80 dev → main: collage center-crop, server DRY, CI durability-off
Merged
#79 dev → main: Android UPnP/Sonos transport parity + server stream URL extension
Merged
#78 v2026.06.03 hotfix — Sonos cast URL + UPnP picker polish
Merged
#77 v2026.06.03 — Media3 like button + Bluetooth/UPnP picker + system playlist daily rotation
Merged
#76 fix(android): interceptor order — auth before baseUrl (hotfix for v2026.06.02)
Merged
#75 Drift audit 2026-06-02 — 26 findings shipped
Merged
#74 Playback errors slice + scrubber polish + various polish
Merged
#73 Discover artwork + Library icon + notification tap routing
Merged
#72 Lock Android MainActivity to portrait
Merged
#71 Keep onPostScroll under detekt ReturnCount limit
Merged
#70 Alphabet rail page-chasing + Songs Like fix + scrubber polish
Merged
#69 Web Library: alphabet rail always shows #/A-Z/&
Merged
#68 Web Library: continuous grid + sticky alphabet rail
Merged
#67 Web: Most Played horizontal tiles + nav centering + Library link + Search refinements
Merged
#66 Web Home: drop hero row + compact Rediscover tiles
Merged
#65 Android v1 polish + Web UI flavor pass
Merged
#64 ci: chain APK build → image build via needs (fix race, kill polling)
Merged
#63 ci(android): make APK attach failures visible (debug v2026.06.01 missing asset)
Merged
#62 ci: pin upload-artifact to v3 (Gitea GHES-mode incompatible with v4)
Merged
#61 fix(android): remove WorkManager auto-initializer (lintVitalRelease)
Merged
#60 fix(docker): bump builder to go 1.25 to match go.mod
Merged
#59 Release: web UX overhaul + Android native port + server polish
Merged
#58 v2026.05.21.0 — Wear OS dispatch fix, playlist-load feedback, drift CI
Merged
#56 v2026.05.19.3 — playback stall resilience + legacy home cleanup
Merged
#55 v2026.05.19.2 — hotfix: restore media notification (remove broken custom favorite)
Merged
#54 v2026.05.19.1 — hotfix: notification permission + full-player auto-minimize
Merged
#53 fix(ci): scope integration Postgres discovery to this job's network
Merged
#52 v2026.05.19.0 — MediaSession lifecycle, Lidarr hardening, Lucide migration
Merged
#51 Release v2026.05.18.0 — integration-tests-in-CI + recommendations/cover-art/discover batch
Merged
#50 Release v2026.05.16.0 — recommendations working end-to-end + cover-art uncap
Merged
#49 Hotfix v2026.05.15.1 — allow discovery-mix variants in playlists CHECK constraints
Merged
#48 Release v2026.05.15.0 — system playlists v2, offline cache rework, CI speedup
Merged
#47 Release v2026.05.14.0 — player polish, CacheFiller, offline mutation queue
Merged
#46 release v2026.05.13.3: full-player seed + MediaSession expansion (Wear)
Merged
#45 release v2026.05.13.2: artist covers + load-then-swap player transitions
Merged
#44 release v2026.05.13.1: player + Discover hotfix
Merged
#43 release v2026.05.13.0: SSE live updates + offline cache + per-item rendering
Merged
#42 release v2026.05.12.1: Discover surface + nav fixes + cache hygiene
Merged
#41 release v2026.05.11.3: caching, perf, playlist polish
Merged
#40 release v2026.05.11.2: signing key + library infinite scroll
Merged
#39 release v2026.05.11.1: Flutter caching, navigation, and player polish
Merged
#38 release: M5-M7 server + web + Flutter, plus Flutter v1 polish
Merged
#37 fix(web): download button + server version display
Merged
#36 ci: unify REGISTRY_TOKEN + RELEASE_TOKEN into CI_TOKEN
Merged
#35 M5–M7 sweep + offline cache + in-app updates + DRY pass
Merged
#34 refactor(server): remove bootstrap admin path
Merged
#33 feat(flutter): admin parity slice — requests, quarantine, users, invites
Merged
#32 fix(web): /register reachable for bootstrap admin (closes #376)
Merged
#31 Release v2026.05.08.1 — DRY pass + cover-art HTTP base
Merged
#30 M5a frontend + M5b quarantine + M5c suggestions
Merged
#29 test: stop wiping admin user during integration tests
Merged
#28 feat: M4c radio similarity-driven candidate pool + 80% queue refresh (closes M4)
Merged
#27 feat: M4b inbound ListenBrainz similarity ingest
Merged
#26 feat: M4a outbound ListenBrainz scrobble worker
Merged
#25 ci: drop push:dev trigger; PR is the gate
Merged
#24 fix: M3.5 polish — genre splitting, radio button, search focus
Merged
#23 feat: M3 session similarity + contextual_match_score (closes M3)
Merged
#22 feat: M3 session vectors + contextual_likes capture
Merged
#21 feat: M3 weighted shuffle v1 — real /api/radio with scoring
Merged
#20 feat: M2 likes — full track/album/artist starring (closes M2)
Merged
#19 feat: player + search + M2 events foundation
Merged
#18 feat: web UI library views — artists / artist detail / album detail
Merged
#17 feat: web UI auth — login page, session store, Shell, TanStack Query
Merged
#16 feat: web UI scaffold with embedded SPA and multi-stage Docker build
Merged
#15 feat: /api/* library reads, search, and media endpoints
Merged
#14 feat: web UI server auth foundation (/api/* login, logout, me)
Merged
#13 feat(library): extract track duration via ffprobe
Merged
#12 fix(library): drop out-of-range release years instead of failing the album
Merged
#11 feat(subsonic): getUser + envelope-shaped 404 for /rest/*
Merged
#10 fix(auth): subsonic_password on bootstrap + dev compose defaults
Merged
#9 feat(subsonic): stream/download/getCoverArt/scrobble (#296)
Merged
#8 feat(subsonic): browse endpoints — getArtists/getAlbum/search3/… (#295)
Merged
#7 feat(subsonic): auth + envelope + ping.view + getLicense.view (Fable #294)
Merged
#6 M1/#293: library scanner (walk + tag-parse + upsert incremental) + admin scan endpoint
Merged
#5 M1/#292: core library schema + sqlc + admin bootstrap
Merged
#4 M1/#291: wire Postgres migrations + pgxpool
Merged
#3 ci(release): switch registry login to REGISTRY_TOKEN
Merged
#2 ci(release): add workflow_dispatch + docker diagnostics
Merged
#1 M0: repo scaffolding, CI pipelines, and Go skeleton