feat: add Web UI artist detail, archive, and ignore actions

Implements Task 8: artist detail page (local albums + found-missing
with ignore buttons), ignored-releases archive with restore, and POST
handlers toggling ignore flags and ignore_singles. Adds ErrArtistNotFound
sentinel so callers can distinguish missing artists, and wires routes via
the enhanced ServeMux path wildcard.
This commit is contained in:
2026-07-19 22:43:47 +03:00
parent cea20957e7
commit 44f3b0a2a7
11 changed files with 682 additions and 13 deletions

View File

@@ -125,11 +125,11 @@ name collisions.)
- [x] run tests - must pass before task 8
### Task 8: Web UI — artist detail + archive + ignore actions
- [ ] artist page: local albums (Subsonic) + found missing (MB cache) + ignore buttons
- [ ] archive page: `GetIgnoredReleases` with restore action
- [ ] POST handlers: `SetReleaseIgnored(rgid, true/false)`; "ignore all singles of artist" toggles `artist_settings.ignore_singles`
- [ ] write tests: ignore sets flag + removes from dashboard missing; restore clears flag; auth enforced on POST
- [ ] run tests - must pass before task 9
- [x] artist page: local albums (Subsonic) + found missing (MB cache) + ignore buttons
- [x] archive page: `GetIgnoredReleases` with restore action
- [x] POST handlers: `SetReleaseIgnored(rgid, true/false)`; "ignore all singles of artist" toggles `artist_settings.ignore_singles`
- [x] write tests: ignore sets flag + removes from dashboard missing; restore clears flag; auth enforced on POST
- [x] run tests - must pass before task 9
### Task 9: Verify acceptance criteria
- [ ] run full suite `go test ./...` — all pass