Critical fixes for production deployment:
1. Transaction Protection (CRITICAL)
- Wrap deletion + simulation in transaction.atomic()
- Prevents data loss on runtime errors
- All-or-nothing behavior with automatic rollback
2. Enhanced Validation
- Add resource limits: MAX_TEAMS=100, MAX_PROFILES=100, MAX_TOTAL_SECTIONS=10000
- Validate num_teams range (1-100)
- Validate total sections across all profiles
3. Improved Error Messages
- Parse DRF field-specific errors in frontend
- Show detailed validation errors with examples
- Line-specific error messages with actionable guidance
4. UI Fixes
- Format large numbers with K/M/B suffixes (36.3M GD)
- Calculate and display total construction days
- Fix 'N/A days' bug in results view
5. Request Logging
- Log all simulation requests with client IP
- Log validation errors for debugging
- Log successful simulations with stats
6. Code Quality
- Refactor parse_config() to reduce complexity
- Mo…
fix: add database migrations at container startup and deployment tests