Jonathan
34ebe39dd7
docs: implementation plan for deferred-items batch
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-13 00:12:56 +02:00
Jonathan
ab94945f9f
docs: spec for deferred-items batch (settings, correctness, chunk discovery)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-13 00:07:15 +02:00
Jonathan
5f0dcda2ab
docs: Pressing Plant frontend Phase 1 implementation plan
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-12 13:57:35 +02:00
Jonathan
4655d815ee
docs: Pressing Plant frontend design system spec (Phase 1)
...
Design language + Phase 1 plan (design system + app shell + home page).
Comp signed off. Liner Notes / record-label identity, chrome-only
metaphor, manila+spruce palette, Fraunces/mono, state-as-form.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-12 13:53:52 +02:00
Jonathan
ade9cd7694
docs: worker robustness design (scan chunking + DB reconnect)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-12 12:36:54 +02:00
Jonathan
3f77bb1f4c
fix(preview): guard want() on res.ok; docs: preview in README + artists-search TODO
...
- preview-client want() no longer flips the Monitored badge when the POST fails
(deferred item #1 from the discovery-preview whole-branch review).
- README: discovery section notes the artist preview page.
- Plan Notes + project-state: TODO to reuse the preview page from the /artists
live search (wire artists-client.tsx hits to /discover/artist/[mbid]).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-12 02:03:08 +02:00
Jonathan
170180d471
docs: discovery preview implementation plan (6 tasks, TDD)
...
MB lib (getArtistName + browseReleaseGroupTracks) → tracks route → preview route
(annotated discography) → want route → preview page/client → feed+Find-similar
wiring. Web-only, each route TDD against lyra_test; pages build-verified.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-12 01:31:18 +02:00
Jonathan
4dbb6d9d83
docs: discovery preview design — artist preview page (disco + tracklists + own-state)
...
Follow-up to slice 3: a read-only artist preview page keyed by MBID, reachable from
suggested artists, suggested albums, and Find-similar results. Shows discography,
lazy per-album tracklists, own-state badges; Follow (reuse /api/artists) + Want
(new /api/discover/want upsert). Web-side MB reads only, no worker changes.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-12 01:26:16 +02:00
Jonathan
decb6302d4
docs: mark slice 3 (discovery) done + record deferred todos
...
README: discovery status → done (ListenBrainz-native, no Spotify); off-by-default
note for the discovery sweep; architecture mentions MusicBrainz+ListenBrainz.
Plan: check off final verification (suites green, whole-branch review passed,
live-API algorithm fix), append the review's deferred items to Notes.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-12 01:06:56 +02:00
Jonathan
0d2b7f0ae5
docs: slice 3 discovery implementation plan (14 tasks, TDD)
...
Schema → SimilaritySource + ListenBrainz engine → run_discovery (artists+albums)
→ worker sweep/trigger wiring → web feed/run/search/action/config routes →
/discover UI + settings. Each task independently testable against lyra_test.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 22:49:40 +02:00
Jonathan
0cf464aad0
docs: slice 3 discovery design — MetaBrainz-native (ListenBrainz), suggestion feed
...
Spotify similarity/new-release APIs are dead for new apps (Nov 2024 + Feb 2026),
so discovery is built on ListenBrainz similar-artists (MBID-native) behind a
pluggable SimilaritySource interface. Manual review feed of similar artists +
albums; Follow/Want reuse slice-2 operations, Dismiss is permanent. Off by default.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 22:35:49 +02:00
Jonathan
f421904c9b
docs: add library-scan implementation plan
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 16:50:57 +02:00
Jonathan
a4ae60a99e
docs: add library-scan design (ingest on-disk albums as have+monitored)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 16:45:58 +02:00
Jonathan
1d847e2aeb
docs: add staged-download + atomic-import implementation plan
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 15:07:01 +02:00
Jonathan
2614e32f55
docs: add staged-download + atomic-import design (pipeline fix)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 14:59:55 +02:00
Jonathan
eb2a2207a1
docs: add monitoring-web implementation plan (slice 2, plan 2)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 13:08:19 +02:00
Jonathan
915bd96cd3
docs: add monitoring-core implementation plan (slice 2, plan 1)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 12:01:57 +02:00
Jonathan
dcddcac86c
docs: add library-manager design (slice 2)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-11 11:46:41 +02:00
Jonathan
6cce95cec6
docs: add tagging, import & persistent library plan (slice 1, plan 4b)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 23:41:46 +02:00
Jonathan
6ea930ec7a
docs: add MusicBrainz intake + search-hardening plan (slice 1, plan 4a)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 23:10:10 +02:00
Jonathan
9804f3bb90
docs: add Soulseek adapter plan (slice 1, plan 3d)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 22:39:34 +02:00
Jonathan
50931c0cf5
docs: add Qobuz adapter plan (slice 1, plan 3c)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 21:58:44 +02:00
Jonathan
da1ed5caba
docs: add YouTube adapter plan (slice 1, plan 3b)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 21:18:09 +02:00
Jonathan
349f699bb6
docs: add configuration & secrets plan (slice 1, plan 3a)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 19:45:08 +02:00
Jonathan
b62b4145da
docs: add pipeline-core implementation plan (slice 1, plan 2)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 18:19:06 +02:00
Jonathan
d939f83ce3
chore: relax worker dep pins for local Python 3.14
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 16:28:34 +02:00
Jonathan
dcdb9752a2
Add walking-skeleton implementation plan (slice 1, plan 1)
...
Seven TDD tasks: monorepo + compose scaffold, Prisma Request/Job
schema, request API, live queue UI, worker claim logic, fake
pipeline, and worker loop + Dockerfiles with end-to-end verification.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 16:23:45 +02:00
Jonathan
3adefe929b
Add Lyra acquisition-engine design spec, README, gitignore
...
Initial design for slice 1 (acquisition engine): three-container
architecture (Next.js UI, Python worker, slskd), the six-stage
pipeline, source-adapter contract, data model, error handling, and
testing strategy.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 16:14:55 +02:00