feat(tests): check the editing tools automatically
Why
The existing editing tests should run automatically when a pull request changes the project. This is the general editing portion of item 23 from the core PR plan.
Changes
- Add .github/workflows/tests.yml for pull requests, pushes to main and manual runs.
- Run the Python tests on Python 3.10 and 3.12 with FFmpeg and the core package installed.
- Give the workflow read-only repository access, a 15-minute job limit and cancellation of superseded runs.
Validation: all 26 existing tests pass locally on Python 3.10 with pytest 8.3.5 and on Python 3.12 (including 15 subtests). Workflow YAML parses successfully and whitespace checks pass. GitHub-hosted execution is still to be verified.
Limits
Based directly on main with no dependency on another open PR. This runs the existing suite; it does not add full video export coverage. Browser, animation and generation checks from the original item 23 remain deferred until their tools land. It uses current package dependencies because main does not yet include the proposed locked environment.
Summary by cubic
Adds a GitHub Actions workflow that runs the editing tests automatically on pull requests, pushes to main, and manual runs. The suite executes on a Python 3.10 and 3.12 matrix with FFmpeg and the core package installed via pytest 8.3.5.
The workflow uses read-only repository permissions, a 15-minute job limit, and cancels superseded runs for the same branch. All 26 existing tests pass locally on both Python versions; GitHub-hosted execution is still to be verified.