FRE-603: Fix code review blockers (memory leak + auth security)
Blocker 1 - Memory Leak in Event Handlers: - Store event handlers as class properties (arrow functions) - Ensure initialize() and shutdown() use same references - Prevents handler accumulation on reconnect cycles Blocker 2 - Auth Token Security: - Remove token from URL query parameters - Send auth token via Yjs awareness state after connection - Token no longer exposed in server/proxy logs or browser history Files Modified: - src/lib/collaboration/presence-manager.ts - src/lib/collaboration/websocket-connection.ts Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
@@ -68,3 +68,40 @@ The tRPC infrastructure was already implemented in previous work:
|
||||
- FRE-603, FRE-587, FRE-605 → blocked by FRE-600
|
||||
|
||||
**Next:** Awaiting code review approvals to unblock dependency chain.
|
||||
|
||||
## 06:15 - FRE-605 Phase 4 Implementation Complete
|
||||
|
||||
Completed Phase 4 (Change Tracking & Merge Logic) implementation and submitted for code review.
|
||||
|
||||
**Files Created (7 files):**
|
||||
|
||||
1. `src/editor/types/change-tracking.ts` - Type definitions
|
||||
2. `src/editor/utils/ChangeTracker.ts` - Snapshot/restore, change recording
|
||||
3. `src/editor/utils/MergeLogic.ts` - Screenplay-specific merge rules
|
||||
4. `src/editor/utils/VersionDiffViewer.ts` - Version comparison
|
||||
5. `src/editor/components/ChangeAcceptanceUI.tsx` - Review panel
|
||||
6. `src/editor/components/VersionHistoryPanel.tsx` - Version history sidebar
|
||||
7. Updated `ScreenplayEditor.tsx`, `Toolbar.tsx`, `Editor.css`
|
||||
|
||||
**Features Implemented:**
|
||||
- Automatic snapshot creation on document mount
|
||||
- Manual snapshot creation via toolbar button
|
||||
- Change tracking on element modification
|
||||
- Version history panel with snapshots and changes tabs
|
||||
- Accept/reject workflow for pending changes
|
||||
- Restore to previous snapshots
|
||||
- Screenplay-specific merge rules for all element types
|
||||
|
||||
**Status:**
|
||||
- Marked as `in_review`
|
||||
- Assigned to Code Reviewer (f274248f-c47e-4f79-98ad-45919d951aa0)
|
||||
- Plan document updated: FRE-605#document-plan
|
||||
|
||||
**Next Steps (After Code Review):**
|
||||
- Add revision highlighting (colored borders on modified elements)
|
||||
- Write unit tests for ChangeTracker and MergeLogic
|
||||
- Add keyboard shortcuts for version history
|
||||
- Build conflict resolution dialog
|
||||
|
||||
**Code Review Pipeline:**
|
||||
Founding Engineer → Code Reviewer → Security Reviewer → Done
|
||||
|
||||
Reference in New Issue
Block a user