Files
music_library/backlog/tasks/ml-64 - Split-ScrobbleActivity-into-focused-modules.md
T
2026-04-20 10:02:25 +01:00

1.1 KiB

id, title, status, assignee, created_date, labels, dependencies, references, priority
id title status assignee created_date labels dependencies references priority
ML-64 Split ScrobbleActivity into focused modules Done
2026-04-20 08:54
https://github.com/cloud8421/music_library/issues/111
low

Description

GitHub: created 2026-03-12 · updated 2026-03-12 · closed 2026-03-12

Problem

MusicLibrary.ScrobbleActivity bundles three distinct responsibilities: (1) scrobbling to Last.fm, (2) track CRUD and listing, (3) data quality diagnostics. The track listing query is nearly identical to ListeningStats.recent_activity/2.

Proposed solution (Option A)

  1. Move track CRUD + listing into ListeningStats
  2. Keep ScrobbleActivity focused on writes (scrobbling releases/mediums/tracks)
  3. Move diagnostics to Maintenance

Files involved

  • lib/music_library/scrobble_activity.ex
  • lib/music_library/listening_stats.ex
  • lib/music_library/maintenance.ex
  • lib/music_library_web/live/scrobbled_tracks_live/index.ex
  • lib/music_library_web/live/maintenance_live/index.ex
  • Tests for all of the above