
bvandeusenandClaude Opus 4.7
16669a0365
feat(flutter/cache): AudioCacheManager — pin/unpin/evict + tiered LRU
API:
- isCached(trackId), pathFor(trackId)
- pin(trackId, source) — dio.download → drift index entry
- unpin(trackId), clearAll()
- usageBytes(), evict(targetBytes)
Eviction order: incidental → autoPrefetch → autoPlaylist → autoLiked.
'manual' never evicts via cap-driven eviction; only clearAll() removes
operator-pinned tracks.
Two providers:
- appDbProvider — singleton AppDb per run
- audioCacheManagerProvider — wraps the AppDb + dioProvider
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 23:17:14 -04:00
..
2026-05-08 21:57:53 -04:00
2026-05-02 17:26:57 -04:00
2026-05-02 17:21:42 -04:00
2026-05-09 23:17:14 -04:00
2026-05-09 12:05:02 -04:00
2026-05-08 14:40:26 -04:00
2026-05-02 17:18:12 -04:00
2026-05-09 12:53:20 -04:00
2026-05-09 11:38:19 -04:00
2026-05-09 13:39:32 -04:00
2026-05-09 16:16:35 -04:00
2026-05-09 13:42:19 -04:00
2026-05-09 15:50:51 -04:00
2026-05-02 19:36:27 -04:00