Skip to content

Fail closed on missing scenes.py, invalid docgen.yaml, and empty TTS - #82

Merged
cursor[bot] merged 1 commit into
mainfrom
cursor/manim-lint-config-2ccd
Sep 7, 2026
Merged

cursor[bot] merged 1 commit into
mainfrom
cursor/manim-lint-config-2ccd

Conversation

@jmjava

@jmjava jmjava commented Sep 7, 2026

Copy link
Copy Markdown
Owner

Follows #81 (milestones/wizard-narration-paths.md). Milestone: milestones/manim-lint-config.md.

Problem

Several remaining silent-success paths:

  • validate manim_scene_lint treated a missing animations/scenes.py as a pass/skip even when the segment is a Manim visual_map row.
  • Invalid or list-root docgen.yaml traceback'd (YAMLError / AttributeError) or, in wizard hint-save, was rewritten as {}.
  • docgen tts with empty segments.all exited 0 without generating anything.
  • scene_asset_validate swallowed corrupt timing.json and skipped word-based cadence checks.

Changes

  • ConfigError + load_yaml_mapping(): empty document → {}; invalid YAML or non-mapping root is an error. CLI maps ConfigError to ClickException.
  • yaml-generate and wizard hint-save use that loader (no wipe).
  • Missing scenes.py fails manim_scene_lint (hard fail on --pre-push).
  • TTS with empty segments.all (no --segment) raises TTSError.
  • Corrupt / non-object timing.json is reported by scene_asset_validate.

Clock / _TimedScene math is unchanged; no baseline bump.

Test plan

  • pytest tests/ -v --tb=short
  • ruff check src/ tests/
  • docgen benchmark
Open in Web Open in Cursor 

Reject invalid or non-mapping docgen.yaml instead of traceback or rewriting
as {}. Validate manim_scene_lint when scenes.py is missing. TTS with empty
segments.all and corrupt timing.json in scene_asset_validate now error.

Co-authored-by: jmjava <jmjava@gmail.com>
@jmjava
jmjava marked this pull request as ready for review September 7, 2026 18:23
@cursor
cursor Bot merged commit 26122f6 into main Sep 7, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants