Status: Shipped
PR: #122
Depends on: milestones/generation-numeric-tunables.md (PR #117),
milestones/compose-ffmpeg-timeout.md (PR #121)
Python or treats 0 / 0.0 as missing:
scene-spec-generateusedsettings.temperature or 0.35. YAMLmanim_scene_generation.temperature: 0(deterministic) became 0.35.- Timing prompt enrichment used
int(max_whisper_segment_text_chars or 200). YAML0(no truncation; same convention as the whisper count caps) became 200. Invalid types were swallowed into 200 instead of failing.
Narration-generate already passes settings.temperature through, so
0 worked there.
Honor explicit zeros. Missing / null keys keep defaults (temperature
from merged scene-generation settings; max_chars 200). Present invalid
max_whisper_segment_text_chars raises SceneGenerationError.
-
temperature: 0is sent to the LLM as0.0. -
max_whisper_segment_text_chars: 0does not truncate prompt text. - Tests cover both zeros and a bool max_chars raise.
-
ruff check src/ tests/ -
pytest tests/(707 passed, 1 skipped) -
docgen benchmark(no clock change; meets baseline)
- Retry jitter (
temperature + 0.15 * attemptafter a sparse spec). - Changing default temperatures (merged settings still default to 0.4).