diff --git a/cmd/minstrel/main.go b/cmd/minstrel/main.go index a78835f3..9b000abe 100644 --- a/cmd/minstrel/main.go +++ b/cmd/minstrel/main.go @@ -19,6 +19,7 @@ import ( "git.fabledsword.com/bvandeusen/minstrel/internal/scrobble" "git.fabledsword.com/bvandeusen/minstrel/internal/scrobble/listenbrainz" "git.fabledsword.com/bvandeusen/minstrel/internal/server" + "git.fabledsword.com/bvandeusen/minstrel/internal/similarity" "git.fabledsword.com/bvandeusen/minstrel/internal/subsonic" ) @@ -81,6 +82,12 @@ func run() error { scrobbleWorker := scrobble.NewWorker(pool, listenbrainz.NewClient(), logger.With("component", "scrobble")) go scrobbleWorker.Run(ctx) + // Start the similarity ingest worker. Per spec §M4b, runs every 1h, drains + // up to 5 played tracks + 5 played artists per tick, weekly re-fetch cap + // per row. Public LB endpoints — no token required. + similarityWorker := similarity.NewWorker(pool, listenbrainz.NewClient(), logger.With("component", "similarity")) + go similarityWorker.Run(ctx) + srv := server.New(logger, pool, scanner, subsonic.Config{ AllowPlaintextPassword: cfg.Subsonic.AllowPlaintextPassword, }, cfg.Events, cfg.Recommendation)