Release v1.18.1
The pre-feeding announcement spoke a stale/old text via Sayit (e.g. a
previous test message) while Telegram was correct. Root cause: the adapter
triggered speech by writing the sayit tts.text (+ separate tts.volume with a
delay) states, which Sayit's queue could replay stale and which raced the
volume write.
- writeSayit() now uses Sayit's documented
saymessage command
(sendToAsync(instance, 'say', { text, volume })) — atomic, includes the
volume, no state-write race. Affects the announcement, notifications and
the Sayit test button (all go through writeSayit). - Removed the now-unused SAYIT_VOLUME_DELAY_MS + tts.* state writes.
- README changelog + German PDF handbook (cover) updated to 1.18.1.
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com