···47474848### February 2026
49495050+#### optimize GET /tracks/top latency (PR #879, Feb 8)
5151+5252+**baseline (production, 171 requests over 3 days)**: p50=123ms, p95=1204ms, p99=1576ms. the p95/p99 spikes were caused by stale connection reconnects during `pool_pre_ping` and redundant DB round-trips.
5353+5454+**optimizations**:
5555+- **merged query**: new `get_top_tracks_with_counts()` returns (track_id, like_count) tuples in a single GROUP BY — the count was already computed to sort, now it's returned instead of discarded. eliminates a redundant `get_like_counts` call (1 fewer DB round-trip)
5656+- **scoped liked query**: the authenticated user's liked-track check now filters by `track_id IN (...)` (10 rows) instead of scanning all user likes
5757+- **pool_recycle 7200s → 1800s**: connections recycle every 30min instead of 2h, reducing stale connections that trigger expensive reconnects
5858+5959+**verified via Logfire traces**: authenticated requests dropped from 11 DB queries to 7. post-deploy requests at 517-600ms vs baseline p95 of 1.2s.
6060+6161+**14 new regression tests** covering ordering, limit clamping, auth state, like counts, comment counts, and tags.
6262+6363+---
6464+5065#### auto-tag at upload + ML audit script (PRs #871-872, Feb 7)
51665267**auto-tag on upload (PR #871)**: checkbox on the upload form ("auto-tag with recommended genres") that automatically applies genre tags after classification completes. user doesn't need to come back to the portal to apply suggested tags.
···593608594609---
595610596596-this is a living document. last updated 2026-02-07.
611611+this is a living document. last updated 2026-02-08.
+1-1
loq.toml
···1919# STATUS.md grows over time as we document work
2020[[rules]]
2121path = "STATUS.md"
2222-max_lines = 600
2222+max_lines = 612
23232424[[rules]]
2525path = "backend/src/backend/_internal/auth.py"