- Prefer curated character names over cached or generated translations
- Preserve name spellings inside compound labels and parsed speakers
- Reload vocab before runs and refine default event-code handling
- Add regression coverage for glossary precedence and matching
- Join only content blocks that expose .text so live Anthropic calls
no longer crash when thinking precedes the TextBlock
- Add unit coverage for thinking-then-text response shapes
- Add an explicit no-key option for local model configurations
- Persist keyless profiles while retaining cloud credential validation
- Use an internal SDK placeholder only for keyless endpoints
- Cover keyless vault storage and environment synchronization
- Rename desktop launcher, window titles, About, and User-Agents
- Point QSettings at DazedTL with one-time migration from legacy app key
- Update README, Guide, skills, and launcher/script copy
BREAKING CHANGE: QSettings and desktop id now use DazedTL (legacy keys migrated once)
- Queue only untranslated rows from mixed skip-check batches
- Let .env batchsize and frequency_penalty override model defaults
- Cover skip behavior and pricing batch size override in tests