Release Log
Version history, enhancements, and fixes
Current: v1.7.0
v1.7.0 Major
March 2026Enhancements
- External Analysis API — Stateless worker mode: external orchestrators (Spring Boot, Flutter) submit JSON jobs referencing videos in DigitalOcean Spaces and receive webhook callbacks with PDF reports
- Dual-mode /api/v1/analyze — Same endpoint detects
multipart/form-data(browser upload) vsapplication/json(server-to-server) automatically - DigitalOcean Spaces integration — boto3-based S3-compatible client for download, upload, and pre-signed URL generation
- Webhook delivery — Signed
X-Webhook-Secretheader with exponential back-off retries (1s, 2s, 4s) - Release log page — In-app version history visible at
/release-log
Fixes
- Version alignment —
src/version.pynow matches README and docs (was stuck at 1.5.0) - .env.example — Added missing Celery, API auth, Spaces, and webhook configuration variables
v1.6.0 Major
February 2026Enhancements
- 9 new biomechanical metrics — Head stability, hip depth, pull path efficiency, breathing metrics, kick symmetry, knee flexion, propulsive phase duration, elbow angle during catch, underwater speed after start
- PDF export — Professional analysis reports via
GET /api/v1/jobs/{id}/export/pdfusing ReportLab - Stroke-type color coding — Intelligent metric color indicators based on stroke-specific performance ranges
v1.5.3 Patch
January 2026Enhancements
- OWASP security compliance — Input validation, content security policy, rate limiting, security headers across all endpoints
- Video content validation — Automated checks for valid video format, movement detection, and swimming content heuristics
Fixes
- Critical security patches — Patched XSS, CSRF, and input sanitization vulnerabilities identified in security audit
v1.5.2 Minor
January 2026Enhancements
- Stroke Detection v2.2 — 100% accuracy on real-world test videos with sparse data handling, definitive synchronized detection, and hip rotation analysis
- Sparse data features — New features that analyse raw pose data without interpolation: position alternation, timing score, anti-correlation, Y-position patterns
- Window-based voting — Overlapping 2-second windows classified independently then voted for robustness
v1.5.1 Patch
January 2026Fixes
- Production deployment — Fixed CSP headers for inline scripts, Celery SECRET_KEY propagation, and timedelta serialization errors
v1.5.0 Major
January 2025Enhancements
- Coach-swimmer profiles — Physical attributes, stroke preferences, goals tracking for swimmers; credentials, specializations, and team info for coaches
- Dashboards — Swimmer dashboard with personal statistics and improvement tracking; coach dashboard with team overview and individual swimmer progress
- Coach-swimmer management — Add/remove swimmers from coach roster with detailed analysis views
v1.4.0 Major
January 2025Enhancements
- RBAC authentication — User registration, login, and role-based access control (Admin, Coach, Swimmer, Guest)
- Admin panel — User management, role configuration, system statistics
- Flask-Login integration — Secure sessions with CSRF protection
v1.3.0 Minor
January 2025Enhancements
- Settings management — In-app configuration UI for analysis parameters, LLM provider selection, and display preferences
v1.2.0 Minor
January 2025Enhancements
- Contextual help — In-app help pages, resource library, and educational content
- AI transparency — Dedicated page explaining how AI is used in analysis and coaching
v1.1.0 Minor
January 2024Enhancements
- Video comparison — Compare two swim sessions side by side to track progress over time
v1.0.0 Major
January 2024Enhancements
- Initial release — Core video analysis with MediaPipe pose detection, 8 swimming metrics, AI coaching via LLM, REST API, and web interface