NEC-257: Correct voice for docs done in NEC-248 #287

Merged
nectenda-agent merged 8 commits from worktree-nec-257-correct-voice-for-docs-done-in-nec-248 into main 2026-10-10 22:39:22 +01:00
Collaborator

Task: NEC-257 — https://projectron.nerchure.com/tasks/268

Five videos voiced on 10 Oct (06 trailer, 09 canvas, 15 bases, 16 Kanban, 17 Excalidraw) came out over the top. The shared Chatterbox server on clconsole had been moved from Turbo to the original model on 3 Oct, and the original applies the default exaggeration of 1.3 that Turbo ignores; /v1/audio/speech cannot override it, and tts.ts kept labelling the lines chatterbox-turbo. The client now voices Chatterbox through /tts with exaggeration 0.5, cfg 0.5 and temperature 0.8 sent on every line (chosen by ear against the old Turbo takes), keys the cache by them, refuses to render when /api/model-info reports a different engine, and refuses unknown models or non-numeric settings. Nectenda, Excalidraw and Kanban are respelled for the original model only. The five videos are reshot and republished. On the server, the exaggeration default was removed (falls back to 0.5), agreed with the other session that shares it.

Spec: docs/changes/NEC-257-correct-voice/spec.md

Changelog

The bases, Kanban, Excalidraw and canvas guide videos and the trailer are narrated in a calmer voice.

Task: NEC-257 — https://projectron.nerchure.com/tasks/268 Five videos voiced on 10 Oct (06 trailer, 09 canvas, 15 bases, 16 Kanban, 17 Excalidraw) came out over the top. The shared Chatterbox server on clconsole had been moved from Turbo to the original model on 3 Oct, and the original applies the default exaggeration of 1.3 that Turbo ignores; /v1/audio/speech cannot override it, and tts.ts kept labelling the lines chatterbox-turbo. The client now voices Chatterbox through /tts with exaggeration 0.5, cfg 0.5 and temperature 0.8 sent on every line (chosen by ear against the old Turbo takes), keys the cache by them, refuses to render when /api/model-info reports a different engine, and refuses unknown models or non-numeric settings. Nectenda, Excalidraw and Kanban are respelled for the original model only. The five videos are reshot and republished. On the server, the exaggeration default was removed (falls back to 0.5), agreed with the other session that shares it. Spec: `docs/changes/NEC-257-correct-voice/spec.md` ## Changelog The bases, Kanban, Excalidraw and canvas guide videos and the trailer are narrated in a calmer voice.
The shared Chatterbox server was moved from Turbo to the original model on
3 October, and the original applies the default exaggeration of 1.3 that
Turbo ignores, so the next five videos came out over the top while still
labelled chatterbox-turbo. Chatterbox lines now go through /tts with
exaggeration, cfg_weight and temperature set explicitly, at the levels
judged normal by ear, and the cache is keyed by them. A render refuses to
start when /api/model-info reports a different engine from the one
NECTENDA_TTS_MODEL names.

Task: NEC-257

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XatmU5LLsiPbXufPGnQkN5
The original Chatterbox model softens it to "nec-DEN-da". "Neck-tenda"
says the t, chosen by ear from four spellings, and whisper still hears
"Nectenda", so the take check is unchanged. Captions keep the real spelling.

Task: NEC-257

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XatmU5LLsiPbXufPGnQkN5
Chosen by ear from five spellings. Captions keep the real one.

Task: NEC-257

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XatmU5LLsiPbXufPGnQkN5
Without it, a take that says the word the way it is now spelled for the
voice scores lower than one that mangles it.

Task: NEC-257

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XatmU5LLsiPbXufPGnQkN5
Chosen by ear from five spellings. Captions keep the real one.

Task: NEC-257

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XatmU5LLsiPbXufPGnQkN5
All five were voiced on 10 October by a shared server that had moved to the
original Chatterbox model, with an exaggeration of 1.3. They are reshot at
the delivery the founder judged normal (exaggeration 0.5, natural pace),
with Nectenda, Excalidraw and Kanban spelled for the voice so it says them
right.

Task: NEC-257

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XatmU5LLsiPbXufPGnQkN5
Task: NEC-257

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XatmU5LLsiPbXufPGnQkN5
Respell for the original Chatterbox only, and refuse what it cannot voice
All checks were successful
Release note / release-note (pull_request) Successful in 19s
CI / build (pull_request) Successful in 5m17s
CI / e2e (pull_request) Successful in 10m22s
CI / promote (pull_request) Has been skipped
Deploy site / deploy (push) Successful in 1m0s
CI / build (push) Successful in 5m31s
CI / e2e (push) Successful in 10m20s
CI / promote (push) Successful in 30s
cf6ed4d12a
From review: the respellings reached Kokoro, which reads a hyphen as a
stop; an unknown model name skipped every safeguard and went out on the
server's defaults; a non-numeric delivery was sent as null or 0. speak()
now takes its fetch, so a test checks the request it actually posts and
the key it caches under, and the comments say a Chatterbox render needs
the server up, and that the engine is checked once per render.

Task: NEC-257

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XatmU5LLsiPbXufPGnQkN5
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Nectenda/nectenda!287
No description provided.