v0.2.0-beta.5.1.7 - Gemini TTS Audio Materialization
Pre-release
Pre-release
·
7 commits
to main
since this release
Gemini TTS completed-Interaction audio materialization
Fixes the Batch A failure where an accepted Gemini Interaction returned status=completed before audio was visible in the initial snapshot.
Runtime behavior
- completed/no-audio preserves the accepted Interaction ID;
- up to 6 bounded same-ID GET materialization polls;
- GET polling remains separate from the generation POST hard cap;
- generation POST hard cap remains 10;
- no duplicate generation POST after an Interaction ID is accepted;
- response_format remains type=audio with no delivery property;
- fail closed with TTS_INTERACTION_COMPLETED_WITHOUT_AUDIO after the bound.
Deterministic runtime proof
- success: completed/no-audio -> same-ID GET #1 no audio -> GET #2 audio -> PASS;
- failure: persistent completed/no-audio -> exactly 6 same-ID GETs -> fail closed;
- same ID, poll numbering, API-key forwarding and poll interval are asserted.
GitHub lifecycle
- Issue #66
- PR #67
- PR final head: 1a3ba20
- merge/release SHA: 30c75a0
- PR CI run: 31585178328
- main CI run: 31585940997
- Pages deploy run: 31585940957
Trigger evidence
- failed controlled Batch A run: 31572749438
- failed source tag: v0.2.0-beta.5.1.5
- failed source SHA: 686f5ff
Safety boundary
This release does not dispatch Batch A, does not modify production episode metadata/player/Piper audio, and does not publish media-dual-v0.2.0-beta.6. Batch A remains separately controlled under #53.