Skip to content

Latest commit

 

History

History
39 lines (28 loc) · 1.33 KB

File metadata and controls

39 lines (28 loc) · 1.33 KB

Milestone: per-segment generation prompts must be strings

Status: Shipped
PR: #110
Depends on: milestones/generation-model-strings.md (PR #107), milestones/path-config-strings.md (PR #109)

Problem

Root narration_from_source.system_prompt / manim_scene_generation.model are already typed at config load. Per-segment keys were not:

  1. narration_from_source.segments.<id>.system_prompt / topic — str() turned a YAML list into a bracketed string used as the narration system prompt or topic line.
  2. manim_scene_generation.segments.<id>.class_name / system_prompt / scene_spec_system_prompt — same coercion into the Manim class name or scene-spec system prompt.

Empty system_prompt strings remain allowed (same as the root keys).

Goal

Fail closed at Config.from_yaml while walking those segment maps.

Done when

  • Present per-segment system_prompt / topic / scene_spec_system_prompt must be YAML strings (empty allowed).
  • Present per-segment class_name must be a non-empty YAML string.
  • Tests for list values of those keys.
  • ruff check src/ tests/
  • pytest tests/
  • docgen benchmark (no clock change)

Out of scope

  • wizard.default_guidance type gating is separate.
  • pages.docs_dir / title path and copy strings are separate.