diff --git a/frontend/index.html b/frontend/index.html
index d693e65..6be369f 100644
--- a/frontend/index.html
+++ b/frontend/index.html
@@ -30,7 +30,7 @@
- v0.2.1
+ v0.3.1
diff --git a/frontend/js/voice.js b/frontend/js/voice.js
index 44dea42..b78dc85 100644
--- a/frontend/js/voice.js
+++ b/frontend/js/voice.js
@@ -316,6 +316,13 @@ class VoiceManager {
// ── Playback ──────────────────────────────────────────────────
try {
+ // Wait for audio to be fully buffered before playing
+ await new Promise((resolve, reject) => {
+ audio.addEventListener('canplaythrough', resolve, { once: true });
+ audio.addEventListener('error', reject, { once: true });
+ audio.load(); // Explicitly trigger loading
+ });
+ audio.currentTime = 0; // Ensure we start from the very beginning
await audio.play();
return new Promise(resolve => {
audio.onended = () => {