docs: move Phase 2.1 cover art to COMPLETED.md
This commit is contained in:
@@ -79,18 +79,6 @@ These were flagged during the audit but classified as feature work, not defect f
|
||||
|
||||
These follow from `CONTEXT.md §5`. Direction is strongly implied but no specific UI has been committed.
|
||||
|
||||
### 2.1 Cover art / image vault wired through
|
||||
|
||||
- **What:** `MediaVaultType.Image` is implemented end-to-end and exercised by tests, but the production surface only registers a `tracks` vault of type `Audio`. `ImagePath` on `TrackEntity` is a free-form URL string today; it should resolve to an entry in an image vault served by `DeepDrftContent`.
|
||||
- **Why it matters:** Prerequisite for any album/release/genre view that wants to look like a music site rather than a list of rows. Also closes a free-form-string surface area that will otherwise calcify.
|
||||
- **Shape:**
|
||||
- Register a second vault (`images` or `art`, type `Image`) in `Startup.ConfigureDomainServices` and in the CLI.
|
||||
- Add `GET api/image/{entryKey}` (unauthenticated, mirrors track read) and `PUT api/image/{entryKey}` (ApiKey, mirrors track write) on `DeepDrftContent`.
|
||||
- Change `TrackEntity.ImagePath` semantics from "URL" to "image vault entry key" (column rename optional — could remain `image_path` with semantic shift, or could become `image_entry_key` for clarity).
|
||||
- Add an image processor sibling of `AudioProcessor`.
|
||||
- **Prerequisite:** None.
|
||||
- **Constraint:** This is a small schema-semantics migration. Existing rows have `null` ImagePath in production so there is no data to migrate, but commit before the field has real content to avoid a backfill.
|
||||
|
||||
### 2.2 Album and genre views
|
||||
|
||||
- **What:** `TrackCard` already renders album/genre/release date; the data is there. Missing are gallery groupings (album view, genre view), filters, and the API-side support for filter expressions in `TrackService.GetPaged`.
|
||||
|
||||
Reference in New Issue
Block a user