Status: Shipped
PR: #104
Depends on: milestones/image-empty-bytes.md (PR #103),
milestones/tts-empty-audio.md (PR #99)
tts.model / tts.voice are already non-empty YAML strings at config
load. image_generation.model / size / quality were not.
image_generation_config does defaults.update(block). A YAML list
for model: (bullet list of model names) overwrote the default string.
generate_images_for_spec then did str(icfg.get("model")), sending
"['gpt-image-1']" to the Images API.
Fail closed at Config.from_yaml. Missing keys still use the property
defaults (gpt-image-1, 1536x1024, no quality).
- Present
image_generation.model/size/qualitymust be non-empty YAML strings. - Tests for list values of those keys.
-
ruff check src/ tests/ -
pytest tests/ -
docgen benchmark(no clock change)
- Empty mapping
image_generation: {}remains allowed (defaults apply). wizard.default_guidancetype gating is separate.