Clean /tmp/TinyTorch before EACH GIF generation, not just once at the start.
VHS executes real commands and captures actual output, so if /tmp/TinyTorch exists from a previous GIF, the git clone will fail with 'already exists' error.
Now each GIF gets a clean environment:
🧹 Cleaning /tmp/TinyTorch for this GIF...
This ensures GIF 01 shows successful clone on every generation.
Fixed GIFs 02, 03, and 04 to activate the environment before running tito commands.
Without activation, tito commands fail with 'command not found' error.
Each GIF now starts with:
Type "source activate.sh"
Sleep 300ms
Enter
Sleep 1s
This ensures tito is available in PATH before any tito commands execute.
GIF 01 already had activation as part of the setup workflow demo.
Test script now measures actual execution time for every command using Python's time.time(), outputting recommendations to /tmp/tinytorch_timing.txt.
Measured timings:
- git clone: 3s (varies by network, using safe 3s)
- setup-environment.sh: 9s (measured 8.6s)
- tito system health: 0.5s (show for 3s for readability)
- tito module status: 0.2s (show for 3s)
- tito logo: 0.1s (show for 6s)
Updated 01-zero-to-ready.tape with measured delays to ensure:
- GIF shows actual command completion
- No typing ahead before previous command finishes
- Realistic demo of student experience
This fixes the issue where VHS would type commands faster than they execute.
Students should see the clean first-time workflow, not our test infrastructure.
Changes:
- VHS tape: Shows 'cd /tmp' then 'git clone' (no rm -rf)
- generate.sh: Cleans /tmp/TinyTorch BEFORE running VHS
- test_demo_workflow.sh: Already cleaned before testing
- README: Documents the separation of concerns
This presents the ideal student experience while maintaining reproducibility:
- Students: See clean setup flow (cd → clone → setup)
- Scripts: Handle cleanup behind the scenes
- Tests: Validate fresh environment every time
GIF size: 494KB → 467KB (optimized further)
Document the improved demo testing and generation workflow:
- Explains test_demo_workflow.sh purpose and usage
- Describes cleanup strategy to prevent 'directory exists' errors
- Provides troubleshooting guide for common issues
- Documents best practices for updating demo commands
- Maps file locations and workflow architecture
This ensures future demo updates maintain quality and accuracy.
- Create comprehensive test script for demo workflow validation
- Clean /tmp/TinyTorch before cloning to avoid conflicts
- Test full workflow: clone, setup, tito commands
- Update VHS tapes with proper cleanup steps
- Fix command names (tito status -> tito module status)
- Regenerate all 4 demo GIFs with corrected commands
- Log all test output for validation