Skip to content

v0.2.0-beta.5.1.7 - Gemini TTS Audio Materialization

Pre-release
Pre-release

Choose a tag to compare

@AmirMotefaker AmirMotefaker released this 12 Aug 10:07
· 7 commits to main since this release
30c75a0

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.