6 Commits

Author SHA1 Message Date
Alexander 9f1318e79e feat: fetch all artist albums with caching, filter by type in handler
- Provider fetches all release groups via paginated browse, no type filter
- Service caches all albums in DB, ensures referenced artists exist first
- Server handler filters by album_types (default: album|ep|single), excludes secondary types
- Add secondary_types to domain, DB schema, and MB types
- Add ErrBadRequest handling for MusicBrainz 400 errors
- Replace migrations with single schema.sql
- Add GetAllByArtistID and SaveAll to album repository
2026-05-07 20:03:04 +02:00
Alexander 35ac167952 feat: filter artist albums by type, default to album|ep|single 2026-05-07 17:22:59 +02:00
Alexander 54d94b939e Refactor the proto 2026-05-07 17:02:46 +02:00
Alexander 3d111f9008 Refactor logging 2026-05-07 16:50:40 +02:00
Alexander fb2e4b9107 Add SearchAlbum endpoint 2026-05-07 14:27:25 +02:00
Alexander de674376ed feat: initial implementation of metadata aggregator
- gRPC service with MusicBrainz provider
- PostgreSQL schema with migrations
- Service layer with database-first caching
- Repository pattern for data access
- YAML configuration support
- Research documentation for 17 music metadata projects
2026-05-07 14:27:25 +02:00