Commit Graph

589 Commits

Author SHA1 Message Date
null 7b5790da43 feat(billing): wire pruneDeadTokens into onEntitlementChanged 2026-06-30 23:35:38 -05:00
null c7181e276f feat(questions): wire pruneDeadTokens into onMessageWritten 2026-06-30 23:35:29 -05:00
null 8b3356e60d feat(questions): wire pruneDeadTokens into onAnswerWritten 2026-06-30 23:35:24 -05:00
null 9ca9f19c51 feat(questions): wire pruneDeadTokens into onAnswerRevealed 2026-06-30 23:35:20 -05:00
null 13c0769efb feat(games): wire pruneDeadTokens into onGameSessionUpdate 2026-06-30 23:35:15 -05:00
null ffa038ca56 feat(dates): wire pruneDeadTokens into onDateReflectionWritten 2026-06-30 23:35:07 -05:00
null 2aa08efd39 feat(dates): wire pruneDeadTokens into onDateHistoryCreated 2026-06-30 23:35:00 -05:00
null f8240e01a9 feat(dates): wire pruneDeadTokens into createDateMatch 2026-06-30 23:34:56 -05:00
null 342ca37e91 feat(couples): wire pruneDeadTokens into scheduledOutcomesReminder 2026-06-30 23:34:39 -05:00
null c32a5ad8cc feat(couples): wire pruneDeadTokens into onCoupleLeave 2026-06-30 23:34:33 -05:00
null 6fda1574ea feat(backup): wire pruneDeadTokens into onRestoreRequested 2026-06-30 23:34:26 -05:00
null b564d1da42 feat(notifications): add pruneDeadTokens utility for FCM dead-token cleanup 2026-06-30 23:34:22 -05:00
null 38eae8f915 docs: R25 coverage entries, instrumented test landmine warning, tokenized snapshot URL note 2026-06-30 23:33:54 -05:00
null 88f2350c9c docs(questions): v5 rewrite — Daily Fun Gate, restructured guides, trimmed schema 2026-06-30 23:33:48 -05:00
null da7a497c33 docs: update ClaudeReport R24-d entry to mark all files committed 2026-06-30 21:25:13 -05:00
null 4773570745 docs: update ClaudeReport (R24-d/c) and Engineering_Reference_Manual (keybox phrase envelope) 2026-06-30 21:25:00 -05:00
null 683e4ed8d0 docs(questions): v4 content guide, v3 quality checklist, daily single choice weekday lineup spec 2026-06-30 21:24:56 -05:00
null aa09566636 feat(backup): lock-less phrase reveal, copy-to-clipboard, partner-restore empty-state, manual helper entry (R24-d) 2026-06-30 21:24:52 -05:00
null b78dc24870 feat(backup): add back button to restore screens (R24-d) 2026-06-30 21:24:36 -05:00
null 71227561e7 feat(backup): pass recovery phrase through RestoreManager fulfill/complete (R24-c) 2026-06-30 21:24:30 -05:00
null 209ad74532 feat(backup): add ckx:v1 keybox envelope for recovery phrase transfer (R24-c) 2026-06-30 21:24:26 -05:00
null 37815af781 chore: rebuild functions dist (add onRestoreRequested + onRestoreFulfilled exports) 2026-06-30 20:43:58 -05:00
null 1e9f8b97bc docs: update Future.md, ClaudeQAPlan.md, ClaudeReport.md, ClaudeiOSPlan.md, Engineering_Reference_Manual.md for R24 backup/restore 2026-06-30 20:43:34 -05:00
null db948511fb chore: add org.json:json:20240303 test dependency for BackupCodec round-trips 2026-06-30 20:43:30 -05:00
null 4640649593 feat(backup): add Firestore rules (backup manifest/chunks, restore_requests with isPublicKey helper) and Storage rules (users/{uid}/backups/) 2026-06-30 20:43:26 -05:00
null 4b4f79361f feat(backup): add onRestoreRequested and onRestoreFulfilled Cloud Functions (partner push + owner self-alert) 2026-06-30 20:43:22 -05:00
null 139a78c222 feat(backup): add RESTORE_REQUESTED and RESTORE_SELF_ALERT notification types 2026-06-30 20:43:18 -05:00
null 72c251ae95 feat(backup): wire opportunistic backup trigger into HomeViewModel.loadHome 2026-06-30 20:43:14 -05:00
null fd854b635c feat(backup): add RESTORE_REQUEST and RESTORE_CONSENT routes + navigation 2026-06-30 20:43:10 -05:00
null df9edc1daf feat(backup): add 'Ask your partner to restore' entry to RecoveryScreen 2026-06-30 20:43:06 -05:00
null f161fa49a5 feat(backup): add RestoreViewModel + RestoreRequestScreen + RestoreConsentScreen (partner-assisted restore UI) 2026-06-30 20:43:02 -05:00
null ed3c3e4d22 feat(backup): add RestoreManager (request/fulfill/complete partner-assisted restore with OOB code gate) 2026-06-30 20:42:58 -05:00
null c8b0130f1c feat(backup): add CoupleKeyTransfer (ECIES couple-key wrap + OOB verification code) and CoupleEncryptionManager export/store methods 2026-06-30 20:42:54 -05:00
null 4ac2c8f841 feat(backup): add BackupManager (incremental append + compaction) and BackupRestoreManager (download + decrypt + upsert) 2026-06-30 20:42:50 -05:00
null f94fccfc61 feat(backup): wire ConversationCacheDatabase and DAO into DatabaseModule 2026-06-30 20:42:46 -05:00
null ab59e7e5c9 feat(backup): add ConversationCache Room DB (entity, DAO, database) 2026-06-30 20:42:42 -05:00
null 230e7f6201 feat(backup): add uploadBackupSnapshot and deleteBackupSnapshot to FirebaseStorageDataSource 2026-06-30 20:42:38 -05:00
null 909d261b6c feat(backup): add backup record reads to FirestoreConversationDataSource (getConversationsForBackup, getBackupRecords) 2026-06-30 20:42:34 -05:00
null 522823f739 feat(backup): add FirestoreBackupDataSource (manifest CAS, chunk append, snapshot compaction, restore requests) 2026-06-30 20:42:30 -05:00
null 14ba8f2b53 feat(backup): add BACKUP and RESTORE_REQUESTS collection constants to FirestoreCollections 2026-06-30 20:42:26 -05:00
null 7f8dac0b14 feat(backup): add BackupCodec (JSON codec for backup chunks, checksum, reactions) 2026-06-30 20:42:12 -05:00
null 6b469357c1 feat(backup): add ConversationBackup domain models (BackupMessageRecord, BackupCursor, BackupManifest, RestoreRequest) 2026-06-30 20:42:07 -05:00
null 14bfbd04c8 chore: add ClaudeQAPlan.md and ClaudeReport.md to gitignore 2026-06-30 19:06:25 -05:00
null 9c4dc0a609 docs: update Report with R23-DQ-001 fix and verification 2026-06-30 19:06:23 -05:00
null 96fdd67e1a docs: add R23-DQ-001 reconcile check to QAPlan Pass N 2026-06-30 19:06:20 -05:00
null 968ab563a0 docs: add R23-DQ-001 entry to Engineering Reference Manual 2026-06-30 19:06:18 -05:00
null 02e7e6d5c3 test(daily-question): add ReconcileLocalAnswerTest for Room/Firestore desync guard 2026-06-30 19:06:14 -05:00
null 96274d68f9 fix(daily-question): wire reconcileLocalAnswerFromFirestore into HomeViewModel 2026-06-30 19:06:12 -05:00
null 6dd1451095 fix(daily-question): wire reconcileLocalAnswerFromFirestore into DailyQuestionViewModel 2026-06-30 19:06:01 -05:00
null a6d3062585 fix(daily-question): add reconcileLocalAnswerFromFirestore to heal Room/Firestore desync 2026-06-30 19:05:59 -05:00