docs: define milestone v1.4 requirements
11 requirements across 4 categories: - VU Meters (3): Interval/animation cleanup - Chat Window (3): WebSocket listener and state cleanup - Session Screen (3): useEffect and polling cleanup - Verification (2): Stability and memory monitoring
This commit is contained in:
parent
a5b5c7f550
commit
2ae1764176
|
|
@ -1,51 +1,65 @@
|
|||
# Requirements: Session Settings Tests
|
||||
# Requirements: Memory Leak Prevention
|
||||
|
||||
**Defined:** 2026-02-07
|
||||
**Core Value:** Enable confident changes to Session Settings modal through comprehensive test coverage
|
||||
**Defined:** 2026-02-08
|
||||
**Core Value:** Fix memory leaks to ensure stable session experience without freezes or crashes
|
||||
|
||||
## v1.3 Requirements
|
||||
## v1.4 Requirements
|
||||
|
||||
Requirements for Session Settings test coverage. Critical paths only.
|
||||
Requirements for fixing memory leaks in the session screen. Focus on cleanup patterns.
|
||||
|
||||
### Unit Tests (Jest)
|
||||
### VU Meters (VUMTR)
|
||||
|
||||
- [x] **UNIT-01**: Modal renders correctly with currentSession props (privacy, description)
|
||||
- [x] **UNIT-02**: Save button calls onSave with correct payload (privacy number, description)
|
||||
- [x] **UNIT-03**: Loading state disables form interactions (save button, inputs)
|
||||
- [ ] **VUMTR-01**: Audit VU meter components for interval/timer cleanup on unmount
|
||||
- [ ] **VUMTR-02**: Fix any leaking setInterval or requestAnimationFrame calls
|
||||
- [ ] **VUMTR-03**: Ensure animation stops when VU meters are hidden/unmounted
|
||||
|
||||
### Integration Tests (Playwright)
|
||||
### Chat Window (CHAT)
|
||||
|
||||
- [x] **INT-01**: Settings button in session toolbar opens modal
|
||||
- [x] **INT-02**: Save settings makes PUT /sessions/{id} API call with correct data
|
||||
- [x] **INT-03**: Cancel closes modal without making API call
|
||||
- [ ] **CHAT-01**: Audit WebSocket listener registration and cleanup patterns
|
||||
- [ ] **CHAT-02**: Check for unbounded message list growth in Redux state
|
||||
- [ ] **CHAT-03**: Ensure proper cleanup when chat window closes
|
||||
|
||||
### Session Screen Base (SESS)
|
||||
|
||||
- [ ] **SESS-01**: Audit useEffect hooks for missing cleanup return functions
|
||||
- [ ] **SESS-02**: Check polling intervals for proper cleanup on component unmount
|
||||
- [ ] **SESS-03**: Audit event listener registration/removal patterns
|
||||
|
||||
### Verification (VRFY)
|
||||
|
||||
- [ ] **VRFY-01**: Session remains stable for 15+ minutes without freeze
|
||||
- [ ] **VRFY-02**: Memory usage doesn't grow unbounded (verify in browser dev tools)
|
||||
|
||||
## Out of Scope
|
||||
|
||||
| Feature | Reason |
|
||||
|---------|--------|
|
||||
| Exhaustive state change tests | Core paths only, not every input change |
|
||||
| Privacy transform unit tests | Covered implicitly by save payload test |
|
||||
| Error handling tests | Deferred to keep scope minimal |
|
||||
| Success toast tests | Deferred to keep scope minimal |
|
||||
| Visual regression tests | Not part of this milestone |
|
||||
| Other modal tests | Only JKSessionSettingsModal |
|
||||
| Recording modal performance | Separate milestone, different component tree |
|
||||
| New features | Focus purely on fixing existing leaks |
|
||||
| Backend changes | Frontend-only fixes |
|
||||
| Major refactoring | Minimal changes to fix leaks, preserve behavior |
|
||||
|
||||
## Traceability
|
||||
|
||||
| Requirement | Phase | Status |
|
||||
|-------------|-------|--------|
|
||||
| UNIT-01 | Phase 17 | Complete |
|
||||
| UNIT-02 | Phase 17 | Complete |
|
||||
| UNIT-03 | Phase 17 | Complete |
|
||||
| INT-01 | Phase 18 | Complete |
|
||||
| INT-02 | Phase 18 | Complete |
|
||||
| INT-03 | Phase 18 | Complete |
|
||||
| VUMTR-01 | TBD | Pending |
|
||||
| VUMTR-02 | TBD | Pending |
|
||||
| VUMTR-03 | TBD | Pending |
|
||||
| CHAT-01 | TBD | Pending |
|
||||
| CHAT-02 | TBD | Pending |
|
||||
| CHAT-03 | TBD | Pending |
|
||||
| SESS-01 | TBD | Pending |
|
||||
| SESS-02 | TBD | Pending |
|
||||
| SESS-03 | TBD | Pending |
|
||||
| VRFY-01 | TBD | Pending |
|
||||
| VRFY-02 | TBD | Pending |
|
||||
|
||||
**Coverage:**
|
||||
- v1.3 requirements: 6 total
|
||||
- Mapped to phases: 6
|
||||
- Unmapped: 0 ✓
|
||||
- v1.4 requirements: 11 total
|
||||
- Mapped to phases: 0
|
||||
- Unmapped: 11
|
||||
|
||||
---
|
||||
*Requirements defined: 2026-02-07*
|
||||
*Last updated: 2026-02-08 after Phase 18 completion (v1.3 milestone complete)*
|
||||
*Requirements defined: 2026-02-08*
|
||||
*Last updated: 2026-02-08 after initial definition*
|
||||
|
|
|
|||
Loading…
Reference in New Issue