Skip to content

Fix scene lifecycle issues and make custom effect loading more resilient - #72

Open
tusharmalpani20 wants to merge 3 commits into
ChrisBuilds:mainfrom
tusharmalpani20:feat/effect-engine-hardening
Open

Fix scene lifecycle issues and make custom effect loading more resilient#72
tusharmalpani20 wants to merge 3 commits into
ChrisBuilds:mainfrom
tusharmalpani20:feat/effect-engine-hardening

Conversation

@tusharmalpani20

Copy link
Copy Markdown

This PR fixes a handful of issues I found while reviewing the animation engine and custom effect loading.

The main changes are:

  • Broken custom effects are now skipped with a clear warning instead of preventing TTE from starting.
  • A failed custom effect can no longer leave behind a partially registered command.
  • Custom effect parser setup is only called once.
  • Looping scenes now emit SCENE_COMPLETE once per completed cycle.
  • Synced looping scenes keep their frames when no motion path is active.
  • Empty or invalid symbol sequences now produce a clear error.
  • Duplicate scene IDs are rejected instead of silently replacing an existing scene.
  • The Beams effect no longer depends on duplicate scene replacement.
  • The application guide and changelog have been updated.

I also added regression tests for these cases.

Testing

  • 94 CLI and animation tests passed.
  • 804 Beams configurations passed.
  • 1,444 smoke tests passed.
  • Ruff checks passed.
  • The strict documentation build passed.
  • The UV lockfile remains unchanged.

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.

1 participant