docs: update documentation with recent features
- Add Recording Matching System section (auto-matching algorithm) - Add Competitor Number (Bib) Support section - Add Frontend Refactoring section (component extraction, constants) - Update test count: 223 → 286 tests (73% coverage) - Update dates to 2025-11-23
This commit is contained in:
46
docs/TODO.md
46
docs/TODO.md
@@ -14,15 +14,16 @@
|
||||
**Progress:** 100% MVP complete
|
||||
**Status:** Ready for production deployment
|
||||
|
||||
### 🔧 CURRENT STATUS - Backend Tests (2025-11-20) - ✅ ALL PASSING!
|
||||
### 🔧 CURRENT STATUS - Backend Tests (2025-11-23) - ✅ ALL PASSING!
|
||||
|
||||
**Test Status:** 223/223 passing (100%) - ✅ ALL TESTS FIXED!
|
||||
- **Initial state:** 145/223 (65%)
|
||||
**Test Status:** 286/286 passing (100%) - ✅ ALL TESTS FIXED!
|
||||
- **Initial state:** 145/223 (65%) - 2025-11-20
|
||||
- **After cleanup fixes:** 189/223 (84.8%)
|
||||
- **Final state:** 223/223 (100%)
|
||||
- **Total improvement:** +78 tests (+35%)
|
||||
- **After test isolation:** 223/223 (100%)
|
||||
- **After new features:** 286/286 (100%) - 2025-11-23
|
||||
- **Total improvement:** +141 tests (+63 new tests)
|
||||
|
||||
**Code Coverage:** 71.31% (up from ~45%)
|
||||
**Code Coverage:** 73.32% (up from ~45%)
|
||||
|
||||
**✅ All fixes completed:**
|
||||
1. **Test cleanup** - replaced `deleteMany({})` with selective deletion:
|
||||
@@ -300,7 +301,7 @@
|
||||
9. ✅ **Account Lockout:** Implemented after failed attempts
|
||||
10. ✅ **Defense in Depth:** Multiple security layers
|
||||
11. ✅ **WebRTC P2P:** Videos don't touch server (privacy + security)
|
||||
12. ✅ **Test Coverage:** 223/223 tests passing (71% coverage)
|
||||
12. ✅ **Test Coverage:** 286/286 tests passing (73% coverage)
|
||||
|
||||
---
|
||||
|
||||
@@ -429,6 +430,27 @@ See the complete security audit report generated by nodejs-security-auditor agen
|
||||
- Match requests (incoming/outgoing) management
|
||||
- Toast notifications, loading skeletons
|
||||
- Socket stability improvements (heartbeat, auto-reconnect)
|
||||
- **Competitor Number (Bib) Support (2025-11-22)**
|
||||
- New `competitorNumber` field in EventParticipant model
|
||||
- Migration: `20251121210620_add_competitor_number`
|
||||
- Display competitor numbers in event UI
|
||||
- Used by auto-matching system to identify dancers
|
||||
- **Recording Matching System (2025-11-22)**
|
||||
- Auto-matching algorithm for recording partners (`backend/src/services/matching.js`)
|
||||
- RecordingSuggestion model for storing match suggestions
|
||||
- Schedule config for division collision groups (divisions in same slot collide)
|
||||
- Heat buffer calculation (1 heat after dancing before can record)
|
||||
- Location-based preference scoring (same city > same country > anyone)
|
||||
- Max recordings per person limit (3)
|
||||
- Frontend RecordingTab component with suggestions UI
|
||||
- API endpoints for running matching and managing suggestions
|
||||
- **Frontend Refactoring (2025-11-23)**
|
||||
- Extracted DashboardPage into components (DashboardHeader, EventCard, MatchCard, MatchRequestCard)
|
||||
- Extracted EventDetailsPage into components
|
||||
- Extracted ProfilePage into ProfileForm and PasswordChangeForm
|
||||
- Extracted MatchCard component from MatchesPage
|
||||
- Added status constants (MATCH_STATUS, SUGGESTION_STATUS, CONNECTION_STATE, SUGGESTION_TYPE)
|
||||
- Backend constants module (`backend/src/constants/`)
|
||||
|
||||
**See:** `docs/archive/COMPLETED.md` for full list of completed tasks
|
||||
|
||||
@@ -767,8 +789,8 @@ See the complete security audit report generated by nodejs-security-auditor agen
|
||||
- [x] ✅ Testing:
|
||||
- Integration tests (API endpoints) ✅
|
||||
- WebRTC connection tests ✅
|
||||
- 223/223 tests passing (100%) ✅
|
||||
- 71% code coverage ✅
|
||||
- 286/286 tests passing (100%) ✅
|
||||
- 73% code coverage ✅
|
||||
- [x] ✅ PWA features:
|
||||
- Web app manifest ✅
|
||||
- Service worker (offline support) ✅
|
||||
@@ -822,7 +844,7 @@ See the complete security audit report generated by nodejs-security-auditor agen
|
||||
- [ ] ⏳ HTTPS setup (Let's Encrypt) - Requires server
|
||||
|
||||
### Testing
|
||||
- [x] ✅ Backend tests (Jest + Supertest) - 223/223 passing, 71% coverage
|
||||
- [x] ✅ Backend tests (Jest + Supertest) - 286/286 passing, 73% coverage
|
||||
- [x] ✅ WebRTC tests - 7 backend tests passing
|
||||
- [x] ✅ Socket.IO tests - Complete coverage
|
||||
- [x] ✅ Security tests (CSRF, rate limiting, auth)
|
||||
@@ -877,7 +899,7 @@ git commit -m "feat: description"
|
||||
## 📝 Notes
|
||||
|
||||
- ✅ All MVP features implemented and tested
|
||||
- ✅ 223/223 backend tests passing (71% coverage)
|
||||
- ✅ 286/286 backend tests passing (73% coverage)
|
||||
- ✅ Production deployment ready (Docker configs, scripts, monitoring)
|
||||
- ✅ Security hardened (CSRF, rate limiting, account lockout)
|
||||
- ✅ PWA enabled (offline support, iOS compatible)
|
||||
@@ -892,4 +914,4 @@ git commit -m "feat: description"
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** 2025-11-21
|
||||
**Last Updated:** 2025-11-23
|
||||
|
||||
Reference in New Issue
Block a user