Commit Graph

4 Commits

Author SHA1 Message Date
saravanakumardb1
d6b1bb6f63 fix(sync): fix BatchResult.errors type mismatch — backend returns {id,error} objects not strings 2026-03-01 21:27:44 -08:00
saravanakumardb1
48b88d3a29 fix(sync): add x-product-id header and fix pullDelta response decode mismatch 2026-03-01 21:26:12 -08:00
saravanakumardb1
b7688b55d1 fix(security): move PlatformSyncManager auth token from UserDefaults to Keychain 2026-03-01 16:37:39 -08:00
saravanakumardb1
af33a2c86d feat(sync): add cross-platform sync managers for iOS, Android, and Web
- iOS: PlatformSyncManager — URLSession, delta sync, batch upload, offline queue, HMAC auth
- Android: PlatformApiClient + SyncRepository — HttpURLConnection, Room integration, offline queue
- Web: platform-sync.ts + use-sync.ts — fetch client, localStorage queue, React hook with 60s auto-sync

All consume platform-service /timers/*, /routines/*, /households/* endpoints.
Sync protocol: syncVersion optimistic concurrency, delta sync via ?since=, batch upsert for offline flush.
2026-02-28 00:25:35 -08:00