1.2 KiB
1.2 KiB
| id | title | status | assignee | created_date | updated_date | labels | dependencies | priority | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| task-001 | offline local storage | To Do | 2025-12-03 23:42 | 2025-12-04 20:27 |
|
high |
Description
IndexedDB persistence is already implemented via @automerge/automerge-repo-storage-indexeddb. The remaining work is:
- Add real online/offline detection (currently always returns "online")
- Create UI indicator showing connection status
- Handle Safari's 7-day IndexedDB eviction
Existing code locations:
- src/automerge/useAutomergeSyncRepo.ts (lines 346, 380-432)
- src/automerge/useAutomergeStoreV2.ts (connectionStatus property)
- src/automerge/documentIdMapping.ts (room→document mapping)
Acceptance Criteria
- #1 Real WebSocket connection state tracking (not hardcoded 'online')
- #2 navigator.onLine integration for network detection
- #3 UI indicator component showing connection status
- #4 Visual feedback when working offline
- #5 Auto-reconnect with status updates
- #6 Safari 7-day eviction mitigation (service worker or periodic touch)