Skip to content

Conversation

@jakebromberg
Copy link
Member

@jakebromberg jakebromberg commented Jan 22, 2026

Summary

Add AI-powered song request parsing with intelligent library search and rich Slack notifications.

Features

AI Parsing (services/ai/)

  • Extract artist, album, and song from freeform text
  • Handle various input formats and ambiguities

Library Search (services/requestLine/search/)

  • Multi-strategy search pipeline
  • Strategies: artist+album, song-as-artist, swapped interpretation, compilation search
  • Confidence scoring and result ranking

Artwork (services/artwork/)

  • Fetch album artwork from Discogs
  • Provider-based architecture for extensibility

Slack Builder (services/slack/)

  • Rich block messages with artwork
  • Formatted library match results

New Endpoint

  • POST /request/parse - Debug endpoint for AI parser

Test plan

  • Test AI parsing with various input formats
  • Verify library search returns relevant results
  • Check Slack messages include artwork when available
  • Verify /parse endpoint returns parsed structure

Depends on

- Add AI-powered parsing for song requests (artist/album/song extraction)
- Add multi-strategy library search pipeline
- Add artwork fetching from Discogs
- Add improved Slack message builder with rich blocks
- Add /parse endpoint for debugging AI parser

Search strategies:
- Artist + Album matching
- Song as artist fallback
- Swapped interpretation (artist/song confusion)
- Track on compilation search

Depends on:
- Discogs service (from PR #125 after rebase)
@jakebromberg jakebromberg force-pushed the feature/enhanced-request-line branch from 21de09d to 66077ac Compare January 22, 2026 19:53
@jakebromberg jakebromberg merged commit 40d36fa into feature/rate-limiting-only Jan 31, 2026
@jakebromberg jakebromberg deleted the feature/enhanced-request-line branch January 31, 2026 09:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant