Alexander
7582279077
Add in-process event bus with ring buffer for workflow event broadcasting
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/claude-agent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-11 15:53:43 +02:00
Alexander
f52e9abb0a
Add WorkflowRun and AlbumEvent repositories with download cancel support
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/claude-agent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-11 15:53:35 +02:00
Alexander
7d11b729a5
Add DB migration for workflow_runs, album_events tables and cancelled download state
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/claude-agent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-11 15:53:27 +02:00
Alexander
eab92dd40b
Add SearchArtists and GetArtistAlbums proxy RPCs to music-agregator service
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/claude-agent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-11 10:30:18 +02:00
Alexander
ad03caa3f4
Add streaming flow diagrams, update existing flows with streaming references
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/claude-agent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-11 10:26:45 +02:00
Alexander
24f355c5ae
Add MonitorAlbumStream bidirectional streaming RPC with automatic and manual interaction modes
...
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/claude-agent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-11 10:26:37 +02:00
Alexander
f5e2f764b5
Optimize GetArtists: parallel artist processing, batch album upserts, batch download lookups, retry on metadata calls
2026-05-10 00:06:58 +02:00
Alexander
6320f37240
Deduplicate GetAlbum response: merge release info into AlbumDetail, track release into TrackDetail
2026-05-09 23:23:34 +02:00
Alexander
2740585261
Add album/track releases with audio analysis, AnalyzeAlbumRelease RPC, Docker path auto-resolution, release parsing decision tree
2026-05-09 23:16:59 +02:00
Alexander
1e8506f146
Deduce bit depth, sample rate, and bitrate from file sizes; add comprehensive parser tests
2026-05-09 22:09:17 +02:00
Alexander
7fa859e815
Remove rutracker parser, replace with GenericParser for all indexer results
2026-05-09 21:50:55 +02:00
Alexander
ef75b9bfba
Share single torrent client across all services, eliminate triple qBittorrent login on startup
2026-05-09 21:42:53 +02:00
Alexander
758a4b909a
Leftovers
2026-05-09 21:31:24 +02:00
Alexander
31ec3f9826
Add MonitorAlbum component tests: 21 cases covering all flow diagrams (bufconn + testcontainers + hand-rolled mocks)
2026-05-09 21:31:09 +02:00
Alexander
6f31698006
Fix monitor state: never downgrade on upsert, explicitly set monitored on MonitorAlbum
2026-05-09 20:26:38 +02:00
Alexander
3ce6e23421
Fix duplicate download insert: handle NULL columns in download scan, check by torrent ID, enrich MonitorAlbum response, recover orphaned downloads on startup
2026-05-09 20:13:43 +02:00
Alexander
cca404bcc0
Enrich MonitorAlbum response, prevent duplicate downloads, recover orphaned jobs on startup
2026-05-09 20:01:53 +02:00
Alexander
5257ed0f1b
Fix album persistence by passing artist DB ID directly to PersistAlbum
2026-05-09 11:18:52 +02:00
Alexander
8c60fe5e35
Add GetAlbum RPC with track details and persist metadata on discovery
2026-05-09 10:47:06 +02:00
Alexander
e61e58be72
Expand GetArtists with album details, download info, and generic MonitorState enum
2026-05-08 23:00:42 +02:00
Alexander
e49cc25372
Add GetArtists RPC with artist monitor state (monitored/unmonitored/excluded)
2026-05-08 22:27:56 +02:00
Alexander
60c94935b2
Persist metadata to DB, poll download worker, metadata service layer
2026-05-08 11:00:04 +02:00
Alexander
66264e1314
Add database schema, ERD, and repository layer
2026-05-08 10:03:28 +02:00
Alexander
84a6fe8ec7
Refactor MonitorAlbum into focused methods
2026-05-07 23:28:35 +02:00
Alexander
8ad2734964
Implement MonitorAlbum: search, parse, filter by quality, add best to qbittorrent
2026-05-07 23:21:21 +02:00
Alexander
79f3f145de
Add indexer cache with River queue for scheduled refresh
2026-05-07 21:41:17 +02:00
Alexander
2041c154cf
Add the proxing to metadata-agregator
2026-05-07 12:00:37 +02:00
Alexander
97a57c10fd
Added add endpoint
2026-05-07 10:27:20 +02:00
Alexander
6071bc7980
Implement the list endpoint for qbittorrent
2026-05-06 22:53:55 +02:00
Alexander
36416081c1
Create torrent proto stub
2026-05-06 22:26:40 +02:00
Alexander
3249bdc35c
Add gRPC observability: logging, metrics, recovery interceptors
2026-05-06 21:58:24 +02:00
Alexander
67f46f740b
Remove HTTP/REST server, keep gRPC only
2026-05-06 21:45:48 +02:00
Alexander
5fa46b2890
Add attr to differentiate trackers for future
2026-05-06 21:42:05 +02:00
Alexander
b8fcbacb07
Update rutracker categories
2026-05-06 21:27:03 +02:00
Alexander
2400c6345a
Refactor return type of the search
2026-05-05 14:41:45 +02:00
Alexander
b41ea7d023
More parser tests + fixes
2026-05-04 23:17:38 +02:00
Alexander
bfef1b6c79
Implement Jackett search entpoint
2026-05-04 22:48:14 +02:00
Alexander
8ffa92276e
Add Jacket indexer with capabilities implemented
2026-05-04 18:40:31 +02:00
Alexander
32eb8c931e
Create indexer proto
2026-05-04 16:45:22 +02:00
Alexander
f8040ec088
Default values for config
2026-05-04 16:27:04 +02:00
Alexander
268ee57913
Grpc hello service implementation
2026-05-04 14:56:05 +02:00
Alexander
6baa895c6c
Configure routing
2026-05-03 16:10:24 +02:00
Alexander
58aa4ef23b
Added config, added logging
2026-05-03 15:49:35 +02:00
Alexander
46c2f6541f
More removing old code
2026-05-03 13:46:21 +02:00
Alexander
8067cd93c5
Start from the beginning
2026-04-29 17:31:07 +02:00
Alexander
945aab82c2
WIP
2026-04-29 17:29:58 +02:00
Alexander
3ecc6aee62
feat: add download tracking endpoints (sections 4.1, 4.2, 4.3, 4.4)
2026-04-29 13:44:01 +02:00
Alexander
c307c68d88
feat: add album management endpoints (sections 2.1, 2.2, 2.3)
2026-04-29 13:34:20 +02:00
Alexander
ff49403fd5
feat: add edit artist endpoint (section 1.4)
...
- Add GET/PUT /api/artists/{id} for artist settings
- Update sync to create artists table entry (library settings)
- Support partial updates for monitored, path, quality/metadata profiles
- Add e2e tests for get, edit, partial update flows
2026-04-29 13:22:14 +02:00
Alexander
b08a0b1646
feat: add refresh and delete artist endpoints (sections 1.2, 1.3)
...
- Add POST /api/artists/{id}/refresh to re-fetch metadata from gRPC service
- Add DELETE /api/artists/{id} with cascade delete via PostgreSQL
- Add e2e tests for both flows covering happy path, not found, idempotency
- Extend testutil with GetArtistUpdatedAt, CountAlbumsByArtist, DELETE helper
2026-04-29 13:08:53 +02:00