**Build #174** — Release APK (signed)
Commit: b0ff00538599636a7dcad1f2a486108e1f3c01b7
fix(tts): การ์ด "ไม่มีเสียงไทย" เด้งหลอกตอน engine เพิ่ง warm — poll จนนิ่ง + ยืนยันด้วย tts.voices
อาการ owner: ชุดเสียงไทย "หลุด" ต้องโหลดใหม่เรื่อยๆ ส่วนใหญ่คือ phantom:
isLanguageAvailable คืน MISSING_DATA ชั่วคราวตอน engine cold-start หลัง
reboot/process kill → เช็คครั้งเดียวขึ้นการ์ดหลอกทั้งที่เสียงยังอยู่
- hasUsableLocaleVoice(): ground truth จาก tts.voices (ไม่ติดธง NOT_INSTALLED)
- checkVoiceStatus(): คืน READY ถ้า isLanguageAvailable บอกไม่มีแต่ voices ยืนยันมี
- checkVoiceStatusReliable(): poll <=6 รอบ x400ms หยุดเมื่อนิ่ง (READY/no-engine)
- SettingsViewModel: เลิก delay(600)+เช็คครั้งเดียว -> checkVoiceStatusReliable()
จงใจไม่แตะ speak-path engine-switch ตอน MISSING_DATA (เคารพ gotcha v2.0.166:
สลับออกจาก engine ที่โหลดได้ = ปุ่มดาวน์โหลดชี้ผิดตัว)
Co-Authored-By: Claude Opus 4.8 <
[email protected]>