openreader/tests
Richard Roberson 70723f4c1d perf(api): add LRU cache for TTS audio responses
Introduce an in-memory LRU cache for TTS audio with configurable
size and TTL via TTS_CACHE_MAX_SIZE_BYTES and TTS_CACHE_TTL_MS.
Return X-Cache headers (HIT/MISS) and set route runtime to nodejs.
Cache key includes provider, model, voice, speed, format, text,
and optional instructions.

Normalize non-Kokoro multi-voice input to the first token while
preserving full voice string in the cache key. Default Deepinfra
model to hexgrad/Kokoro-82M when none is provided.

Fix Deepinfra Kokoro behavior by enforcing single-voice selection:
- ui: only enable multi-select when provider supports >1 voices
- voice utils: Deepinfra max voices set to 1
- tests: gate provider selection and multi-voice tests by CI and
  increase timeout for stability
2025-11-12 23:28:05 -07:00
..
files fix(api): stabilize DOCX to PDF conversion and cleanup 2025-11-12 16:21:11 -07:00
accessibility.spec.ts fix(api): stabilize DOCX to PDF conversion and cleanup 2025-11-12 16:21:11 -07:00
api.spec.ts fix(api): stabilize DOCX to PDF conversion and cleanup 2025-11-12 16:21:11 -07:00
delete.spec.ts fix(api): stabilize DOCX to PDF conversion and cleanup 2025-11-12 16:21:11 -07:00
folders.spec.ts fix(api): stabilize DOCX to PDF conversion and cleanup 2025-11-12 16:21:11 -07:00
helpers.ts perf(api): add LRU cache for TTS audio responses 2025-11-12 23:28:05 -07:00
navigation.spec.ts fix(api): stabilize DOCX to PDF conversion and cleanup 2025-11-12 16:21:11 -07:00
play.spec.ts perf(api): add LRU cache for TTS audio responses 2025-11-12 23:28:05 -07:00
upload.spec.ts fix(api): stabilize DOCX to PDF conversion and cleanup 2025-11-12 16:21:11 -07:00