Move caller dialog to Sonnet 4.6, add SearXNG for Devon, and fix stale model ids
Working-tree changes that had accumulated without being committed. The test updates matter most: tests/test_caller_gen.py was left behind when caller_gen started requiring voice and age in regulars_included, so the committed tree had a failing suite that only passed locally. - Caller dialog moves from Haiku 4.5 to Sonnet 4.6 (~$1/show to ~$3-4/show) - Grok pinned to x-ai/grok-4.3; grok-4, grok-4-fast and grok-4.1-fast were retired from OpenRouter, and llm.py swallows the 404 and returns empty text, so a retired id makes callers go silent with nothing in the logs - Devon's web_search now runs against SearXNG on the NAS - Assorted TTS, audio, news, cost tracker and control-panel changes - CLAUDE.md updated to match Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+16
-10
@@ -1993,18 +1993,24 @@ function renderVoicemails(voicemails) {
|
||||
const secs = v.duration % 60;
|
||||
const durStr = mins > 0 ? `${mins}m ${secs}s` : `${secs}s`;
|
||||
const unlistenedCls = v.listened ? '' : ' vm-unlistened';
|
||||
const transcript = v.transcript
|
||||
? `<div class="vm-transcript">${escapeHtml(v.transcript)}</div>`
|
||||
: `<div class="vm-transcript vm-transcript-pending">Transcribing…</div>`;
|
||||
return `<div class="vm-item${unlistenedCls}" data-id="${v.id}">
|
||||
<div class="vm-info">
|
||||
<span class="vm-phone">${v.phone}</span>
|
||||
<span class="vm-time">${timeStr}</span>
|
||||
<span class="vm-dur">${durStr}</span>
|
||||
</div>
|
||||
<div class="vm-actions">
|
||||
<button class="vm-btn listen" onclick="listenVoicemail('${v.id}')">Listen</button>
|
||||
<button class="vm-btn on-air" onclick="playVoicemailOnAir('${v.id}')">On Air</button>
|
||||
<button class="vm-btn save" onclick="saveVoicemail('${v.id}')">Save</button>
|
||||
<button class="vm-btn delete" onclick="deleteVoicemail('${v.id}')">Del</button>
|
||||
<div class="vm-row">
|
||||
<div class="vm-info">
|
||||
<span class="vm-phone">${v.phone}</span>
|
||||
<span class="vm-time">${timeStr}</span>
|
||||
<span class="vm-dur">${durStr}</span>
|
||||
</div>
|
||||
<div class="vm-actions">
|
||||
<button class="vm-btn listen" onclick="listenVoicemail('${v.id}')">Listen</button>
|
||||
<button class="vm-btn on-air" onclick="playVoicemailOnAir('${v.id}')">On Air</button>
|
||||
<button class="vm-btn save" onclick="saveVoicemail('${v.id}')">Save</button>
|
||||
<button class="vm-btn delete" onclick="deleteVoicemail('${v.id}')">Del</button>
|
||||
</div>
|
||||
</div>
|
||||
${transcript}
|
||||
</div>`;
|
||||
}).join('');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user