1. Add MAX_FILE_SIZE check (50MB) to prevent unbounded memory usage
2. Add 'lighting' to JSON repair field list
3. Seek 2s into video before extracting frame + log ffmpeg stderr
4. Fix --model default to None so auto-detect actually works
6. Wrap temp frame cleanup in try/finally for crash safety
7. Reduce inter-file sleep to 0.1s (Ollama is local, no rate limit needed)
Test coverage gap (item #5) tracked for follow-up.
- Auto-detect best vision model (gemma4:latest preferred)
- Add --check-model flag for model availability
- Add --format sharegpt for training pipeline integration
- Add retry logic for Ollama API calls
- Add video frame extraction with ffmpeg
- Structured JSON output with validation
- Comprehensive CLI with --help
Closes#689