references/extraction-intake.md | The upstream handoff: offline pipeline writes reciters/<slug>/ + audio-manifest sidecar, auto_detect fires reciter.alignment_completed → AWAITING_REVIEW, the three request kinds, ALIGN / INGEST queues, the POST /api/admin/intake/<rid>/ingest mint contract | services/segments/auto_detect.py, services/admin/intake.py, services/db/repo_requests.py, services/state/catalog.py, qua_shared/schemas/{intake_requests,catalog,state}.py, routes/claims/requests.py |
references/backend.md | Proxy/clip/metadata routes, the 3-tier audio-source resolver (no disk cache), manifest sidecar + reverse index, storage paths, MIME, config tunables, the /api/audio/surahs route, chapter_bitrate_kbps_for_reciter | routes/audio/{proxy,clip,metadata}.py, services/audio/{audio_source,audio_meta,audio_fetch}.py, services/storage/storage_paths.py, config.py |
references/prefetch.md | Bucket audio + peaks read-only at runtime: sole offline writer (Katana), read primitives, what's gone (removed prefetch worker + GC sweeper), and the FE-side warmups that replaced the deleted prefetch util | services/audio/audio_fetch.py, routes/audio/proxy.py, routes/segments/peaks.py |
references/peaks.md | Slim int8 v3 envelope, pack_slim/unpack_slim_envelope, route fan-out + LRU response cache (NOT evicted on save), shared b64ToInt8 decoder, peaks-view.ts shape adapter, history-peaks (now int8), backfill/audit | services/audio/{peaks,peaks_slim,op_peaks,peaks_history}.py, routes/segments/peaks.py, lib/utils/{peaks-view,peaks-decode}.ts |
references/vbr.md | VBR-specific behavior — why Xing matters, Katana _ensure_xing, segment-clip fallback (-vn is load-bearing), AudioPort VBR reuse rule, VBR-only bug shapes | .local/extraction/segments/audio_persist.py::_ensure_xing, routes/audio/clip.py, lib/playback/audio-port.ts (VBR branch) |
references/frontend.md | AudioPort (incl. adoptElement/prewarm/covers), AudioGraph kill-switch, warmup (in main.ts), AudioRange, shadow-audio element-pool gapless, the shared dashPort, peaks rendering, coordinate contract, cross-origin gotcha | lib/playback/, lib/utils/audio-warmup.ts, tabs/segments/utils/playback/, tabs/segments/stores/playback.ts |
references/bugs.md | Common bug shapes — symptom → root → first probe, indexed by area | spans the whole stack |
references/probes.md | Terminal recipes (ffprobe / ffmpeg / curl / hf bucket) + browser recipes (DevTools, Playwright) | — |