Overview
Change CLI behavior:
musup <number> — same as today: show all artists and albums new within N years
musup (no argument) — open a Bubble Tea TUI showing all album artists (using existing is_album_artist filtering) in 3 columns, navigable with arrow keys (up/down/across), with space bar to toggle "follows" checkmark
Tasks
Summary of Changes
- Added
followed column to artists table (migration v14, default=1)
- Added
AlbumArtists and SetFollowed sqlc queries
- Created
internal/tui/tui.go with Bubble Tea v2 3-column artist list
musup (no args) opens TUI; musup <N> keeps CLI behavior
- Added tests for new queries; all tests pass, lint clean
Additional Changes (artist_id FK + modal)
👾 This issue is managed by Jig. Edits made here will be overwritten.
Overview
Change CLI behavior:
musup <number>— same as today: show all artists and albums new within N yearsmusup(no argument) — open a Bubble Tea TUI showing all album artists (using existingis_album_artistfiltering) in 3 columns, navigable with arrow keys (up/down/across), with space bar to toggle "follows" checkmarkTasks
followedboolean column toartiststable (new DB migration v14)internal/tui/packagecmd/root.go: if no args → launch TUI; if<number>arg → current CLI behaviorSummary of Changes
followedcolumn toartiststable (migration v14, default=1)AlbumArtistsandSetFollowedsqlc queriesinternal/tui/tui.gowith Bubble Tea v2 3-column artist listmusup(no args) opens TUI;musup <N>keeps CLI behaviorAdditional Changes (artist_id FK + modal)
artist_idFK tofilestable, backfill fromartist_normjoinNewerReleases,AlbumArtists,DistinctArtistIDs) to useartist_idscan.goto callEnsureArtistand setartist_idon file upsertcheck.goto useDistinctArtistIDsand pass artist ID directlyArtistLocalTracksquery andGetArtistByIDquery👾 This issue is managed by Jig. Edits made here will be overwritten.