perf: remove moderation service call from /tracks/ listing (#590)

the copyright check was making an HTTP call to moderation.plyr.fm on
every /tracks/ request, adding ~1 second latency. this info is only
displayed in /tracks/me (artist portal), not the main feed.

- remove get_copyright_info from main listing endpoint
- keep it in /tracks/me and /tracks/me/broken where it's needed

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>

authored by zzstoatzz.io Claude Opus 4.5 and committed by GitHub fdc656f5 b1d59a66

Changed files
+5 -5
backend
src
backend
api
tracks
+5 -5
backend/src/backend/api/tracks/listing.py
··· 137 # generate next cursor from the last track's created_at 138 next_cursor = tracks[-1].created_at.isoformat() if has_more and tracks else None 139 140 - # batch fetch like, comment counts, copyright info, and tags for all tracks 141 track_ids = [track.id for track in tracks] 142 - like_counts, comment_counts, copyright_info, track_tags = await asyncio.gather( 143 get_like_counts(db, track_ids), 144 get_comment_counts(db, track_ids), 145 - get_copyright_info(db, track_ids), 146 get_track_tags(db, track_ids), 147 ) 148 ··· 241 liked_track_ids, 242 like_counts, 243 comment_counts, 244 - copyright_info, 245 - track_tags, 246 ) 247 for track in tracks 248 ]
··· 137 # generate next cursor from the last track's created_at 138 next_cursor = tracks[-1].created_at.isoformat() if has_more and tracks else None 139 140 + # batch fetch like counts, comment counts, and tags for all tracks 141 + # note: copyright_info is intentionally excluded here - it requires an HTTP call 142 + # to the moderation service and is only displayed in /tracks/me (artist portal) 143 track_ids = [track.id for track in tracks] 144 + like_counts, comment_counts, track_tags = await asyncio.gather( 145 get_like_counts(db, track_ids), 146 get_comment_counts(db, track_ids), 147 get_track_tags(db, track_ids), 148 ) 149 ··· 242 liked_track_ids, 243 like_counts, 244 comment_counts, 245 + track_tags=track_tags, 246 ) 247 for track in tracks 248 ]