You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add per-user release preferences, normalized release browsing, and HTMX picker support. Move the picker into the album tracking modal metadata panel.\n\nRefs #907
Copy file name to clipboardExpand all lines: docs/agents/music_integration.md
+55-4Lines changed: 55 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -122,6 +122,26 @@ class AlbumTracker(models.Model):
122
122
123
123
Trackers are unique per user+artist/album (single tracker per target), default to `In Progress`, and mirror Media fields (status, score, start/end dates, notes).
124
124
125
+
#### MusicReleasePreference
126
+
Per-user display preference for a concrete MusicBrainz release/pressing. This is intentionally separate from `AlbumTracker`: it does not change the shared album identity or move play history to another tracklist.
127
+
128
+
```python
129
+
classMusicReleasePreference(models.Model):
130
+
user = models.ForeignKey(User, related_name="music_release_preferences")
131
+
album = models.ForeignKey(Album, related_name="music_release_preferences")
Preferences are unique per user+album. The selected release overrides only the detail-page cover and release metadata; the canonical `Album`, `Track`, `Music`, collection, and history rows remain unchanged.
138
+
139
+
On the album detail page and album tracking modal, a saved preference is hydrated from
140
+
MusicBrainz only when the selected release still belongs to the album's release group.
141
+
If the release is missing, no longer belongs to that group, or MusicBrainz is
142
+
unavailable, the UI falls back to the canonical album metadata and cover without
143
+
deleting the preference or changing any tracking rows.
0 commit comments