-
f8240e01a9
feat(dates): wire pruneDeadTokens into createDateMatch
null
2026-06-30 23:34:56 -0500
-
342ca37e91
feat(couples): wire pruneDeadTokens into scheduledOutcomesReminder
null
2026-06-30 23:34:39 -0500
-
c32a5ad8cc
feat(couples): wire pruneDeadTokens into onCoupleLeave
null
2026-06-30 23:34:33 -0500
-
6fda1574ea
feat(backup): wire pruneDeadTokens into onRestoreRequested
null
2026-06-30 23:34:26 -0500
-
b564d1da42
feat(notifications): add pruneDeadTokens utility for FCM dead-token cleanup
null
2026-06-30 23:34:22 -0500
-
38eae8f915
docs: R25 coverage entries, instrumented test landmine warning, tokenized snapshot URL note
null
2026-06-30 23:33:54 -0500
-
88f2350c9c
docs(questions): v5 rewrite — Daily Fun Gate, restructured guides, trimmed schema
null
2026-06-30 23:33:48 -0500
-
da7a497c33
docs: update ClaudeReport R24-d entry to mark all files committed
null
2026-06-30 21:25:13 -0500
-
4773570745
docs: update ClaudeReport (R24-d/c) and Engineering_Reference_Manual (keybox phrase envelope)
null
2026-06-30 21:25:00 -0500
-
683e4ed8d0
docs(questions): v4 content guide, v3 quality checklist, daily single choice weekday lineup spec
null
2026-06-30 21:24:56 -0500
-
aa09566636
feat(backup): lock-less phrase reveal, copy-to-clipboard, partner-restore empty-state, manual helper entry (R24-d)
null
2026-06-30 21:24:52 -0500
-
b78dc24870
feat(backup): add back button to restore screens (R24-d)
null
2026-06-30 21:24:36 -0500
-
71227561e7
feat(backup): pass recovery phrase through RestoreManager fulfill/complete (R24-c)
null
2026-06-30 21:24:30 -0500
-
209ad74532
feat(backup): add ckx:v1 keybox envelope for recovery phrase transfer (R24-c)
null
2026-06-30 21:24:26 -0500
-
37815af781
chore: rebuild functions dist (add onRestoreRequested + onRestoreFulfilled exports)
null
2026-06-30 20:43:58 -0500
-
1e9f8b97bc
docs: update Future.md, ClaudeQAPlan.md, ClaudeReport.md, ClaudeiOSPlan.md, Engineering_Reference_Manual.md for R24 backup/restore
null
2026-06-30 20:43:34 -0500
-
db948511fb
chore: add org.json:json:20240303 test dependency for BackupCodec round-trips
null
2026-06-30 20:43:30 -0500
-
4640649593
feat(backup): add Firestore rules (backup manifest/chunks, restore_requests with isPublicKey helper) and Storage rules (users/{uid}/backups/)
null
2026-06-30 20:43:26 -0500
-
4b4f79361f
feat(backup): add onRestoreRequested and onRestoreFulfilled Cloud Functions (partner push + owner self-alert)
null
2026-06-30 20:43:22 -0500
-
139a78c222
feat(backup): add RESTORE_REQUESTED and RESTORE_SELF_ALERT notification types
null
2026-06-30 20:43:18 -0500
-
72c251ae95
feat(backup): wire opportunistic backup trigger into HomeViewModel.loadHome
null
2026-06-30 20:43:14 -0500
-
fd854b635c
feat(backup): add RESTORE_REQUEST and RESTORE_CONSENT routes + navigation
null
2026-06-30 20:43:10 -0500
-
df9edc1daf
feat(backup): add 'Ask your partner to restore' entry to RecoveryScreen
null
2026-06-30 20:43:06 -0500
-
f161fa49a5
feat(backup): add RestoreViewModel + RestoreRequestScreen + RestoreConsentScreen (partner-assisted restore UI)
null
2026-06-30 20:43:02 -0500
-
ed3c3e4d22
feat(backup): add RestoreManager (request/fulfill/complete partner-assisted restore with OOB code gate)
null
2026-06-30 20:42:58 -0500
-
c8b0130f1c
feat(backup): add CoupleKeyTransfer (ECIES couple-key wrap + OOB verification code) and CoupleEncryptionManager export/store methods
null
2026-06-30 20:42:54 -0500
-
4ac2c8f841
feat(backup): add BackupManager (incremental append + compaction) and BackupRestoreManager (download + decrypt + upsert)
null
2026-06-30 20:42:50 -0500
-
f94fccfc61
feat(backup): wire ConversationCacheDatabase and DAO into DatabaseModule
null
2026-06-30 20:42:46 -0500
-
ab59e7e5c9
feat(backup): add ConversationCache Room DB (entity, DAO, database)
null
2026-06-30 20:42:42 -0500
-
230e7f6201
feat(backup): add uploadBackupSnapshot and deleteBackupSnapshot to FirebaseStorageDataSource
null
2026-06-30 20:42:38 -0500
-
909d261b6c
feat(backup): add backup record reads to FirestoreConversationDataSource (getConversationsForBackup, getBackupRecords)
null
2026-06-30 20:42:34 -0500
-
522823f739
feat(backup): add FirestoreBackupDataSource (manifest CAS, chunk append, snapshot compaction, restore requests)
null
2026-06-30 20:42:30 -0500
-
14ba8f2b53
feat(backup): add BACKUP and RESTORE_REQUESTS collection constants to FirestoreCollections
null
2026-06-30 20:42:26 -0500
-
7f8dac0b14
feat(backup): add BackupCodec (JSON codec for backup chunks, checksum, reactions)
null
2026-06-30 20:42:12 -0500
-
6b469357c1
feat(backup): add ConversationBackup domain models (BackupMessageRecord, BackupCursor, BackupManifest, RestoreRequest)
null
2026-06-30 20:42:07 -0500
-
14bfbd04c8
chore: add ClaudeQAPlan.md and ClaudeReport.md to gitignore
null
2026-06-30 19:06:25 -0500
-
9c4dc0a609
docs: update Report with R23-DQ-001 fix and verification
null
2026-06-30 19:06:23 -0500
-
96fdd67e1a
docs: add R23-DQ-001 reconcile check to QAPlan Pass N
null
2026-06-30 19:06:20 -0500
-
968ab563a0
docs: add R23-DQ-001 entry to Engineering Reference Manual
null
2026-06-30 19:06:18 -0500
-
02e7e6d5c3
test(daily-question): add ReconcileLocalAnswerTest for Room/Firestore desync guard
null
2026-06-30 19:06:14 -0500
-
96274d68f9
fix(daily-question): wire reconcileLocalAnswerFromFirestore into HomeViewModel
null
2026-06-30 19:06:12 -0500
-
6dd1451095
fix(daily-question): wire reconcileLocalAnswerFromFirestore into DailyQuestionViewModel
null
2026-06-30 19:06:01 -0500
-
a6d3062585
fix(daily-question): add reconcileLocalAnswerFromFirestore to heal Room/Firestore desync
null
2026-06-30 19:05:59 -0500
-
8d563d4fd4
docs(date-memories): add date reflections requirement to iOS parity plan
null
2026-06-30 18:15:15 -0500
-
a90809bd40
docs(date-memories): update Report with R23 date memories verification
null
2026-06-30 18:15:13 -0500
-
a0bd5fa1ac
docs(date-memories): update QAPlan with date memories and reflection coverage
null
2026-06-30 18:15:11 -0500
-
1159d679b0
docs(date-memories): update glyph README with date_replay count
null
2026-06-30 18:15:09 -0500
-
1ea447fcd0
docs(date-memories): add illustration_date_memories_empty source assets
null
2026-06-30 18:15:07 -0500
-
d2ab0da87e
docs(date-memories): add glyph_date_replay source assets
null
2026-06-30 18:15:05 -0500
-
02c3180ee7
feat(date-memories): add illustration_date_memories_empty (light and dark)
null
2026-06-30 18:15:03 -0500
-
097140bc9d
feat(date-memories): add glyph_date_replay vector drawable
null
2026-06-30 18:15:00 -0500
-
602ab3a260
feat(date-memories): add date_history and date_reflections Firestore security rules
null
2026-06-30 18:14:56 -0500
-
4dd60a6a4d
chore(date-memories): add compiled onDateReflectionWritten
null
2026-06-30 18:14:54 -0500
-
2c47c222de
chore(date-memories): add compiled onDateHistoryCreated
null
2026-06-30 18:14:52 -0500
-
d4cedaf304
chore(date-memories): update compiled function index
null
2026-06-30 18:14:50 -0500
-
b7ad62054b
feat(date-memories): export onDateHistoryCreated and onDateReflectionWritten from index
null
2026-06-30 18:14:48 -0500
-
7a5f4e9bbd
feat(date-memories): add onDateReflectionWritten Cloud Function
null
2026-06-30 18:14:46 -0500
-
2eb21f42f9
feat(date-memories): add onDateHistoryCreated Cloud Function
null
2026-06-30 18:14:44 -0500
-
aa5ebcbcac
feat(date-memories): add date_logged and date_reflection_* notification channels to PartnerNotificationManager
null
2026-06-30 18:14:39 -0500
-
a96be6ea07
feat(date-memories): handle date_logged and date_reflection_* notification types in AppMessagingService
null
2026-06-30 18:14:27 -0500
-
47f311abda
test(date-memories): add DATE_REFLECTION_PENDING priority engine tests
null
2026-06-30 18:14:25 -0500
-
5375ba90a8
feat(date-memories): add date reflection nudge card to HomeScreen
null
2026-06-30 18:14:23 -0500
-
c056f6a7a1
feat(date-memories): add date reflection pending computation to HomeViewModel
null
2026-06-30 18:14:21 -0500
-
9b5f6b4eb3
feat(date-memories): add DATE_REFLECTION_PENDING priority to HomePriorityEngine
null
2026-06-30 18:14:18 -0500
-
038c1bd6e6
feat(date-memories): wire DateMemoriesScreen and DateReflectionScreen into AppNavigation
null
2026-06-30 18:14:16 -0500
-
9cd9cffe23
feat(date-memories): add dateReflection route to AppRoute
null
2026-06-30 18:14:14 -0500
-
cf061f24f6
feat(date-memories): add date memory marking logic to DateMatchesViewModel
null
2026-06-30 18:14:12 -0500
-
e4f10551a0
feat(date-memories): add 'We did this' and 'Date memories' entry to DateMatchesScreen
null
2026-06-30 18:14:10 -0500
-
90995cdaef
feat(date-memories): add DateReflectionScreen and ViewModel
null
2026-06-30 18:14:08 -0500
-
151e019a88
feat(date-memories): add DateMemoriesScreen and ViewModel
null
2026-06-30 18:14:03 -0500
-
f81987fa94
feat(date-memories): add DATE_HISTORY and DATE_REFLECTIONS to FirestoreCollections
null
2026-06-30 18:14:00 -0500
-
540ef29041
feat(date-memories): add FirestoreDateReflectionDataSource
null
2026-06-30 18:13:57 -0500
-
631064fcfe
feat(date-memories): add FirestoreDateMemoryDataSource
null
2026-06-30 18:13:56 -0500
-
de597f6238
feat(date-memories): add DateReflection domain model
null
2026-06-30 18:13:48 -0500
-
9a92b2b020
feat(date-memories): add DateMemory domain model
null
2026-06-30 18:13:46 -0500
-
28eb10f6c9
Revert "feat(date-memories): add DateMemory/DateReflection domain models and Firestore data sources (batch 1/8)"
null
2026-06-30 18:13:00 -0500
-
6a0849deb7
Revert "feat(date-memories): add DateMemories timeline + DateReflection screen, wire into nav (batch 2/8)"
null
2026-06-30 18:13:00 -0500
-
5905c2b2d0
Revert "feat(date-memories): add Home nudge for pending date reflection + priority engine (batch 3/8)"
null
2026-06-30 18:13:00 -0500
-
c19e7ea711
Revert "feat(date-memories): wire date_logged/date_reflection_* notification types into messaging service (batch 4/8)"
null
2026-06-30 18:13:00 -0500
-
6dddac4615
Revert "feat(date-memories): add onDateHistoryCreated + onDateReflectionWritten Cloud Functions (batch 5/8)"
null
2026-06-30 18:13:00 -0500
-
2b3c729e5e
Revert "feat(date-memories): add date_history + date_reflections Firestore security rules (batch 6/8)"
null
2026-06-30 18:13:00 -0500
-
2119792cca
Revert "feat(date-memories): add glyph_date_replay + illustration_date_memories_empty assets (batch 7/8)"
null
2026-06-30 18:13:00 -0500
-
7cc2e78cfb
Revert "docs(date-memories): update QAPlan, Report, iOS parity plan, and glyph README (batch 8/8)"
null
2026-06-30 18:13:00 -0500
-
6179a46c96
docs(date-memories): update QAPlan, Report, iOS parity plan, and glyph README (batch 8/8)
null
2026-06-30 16:52:09 -0500
-
067155c108
feat(date-memories): add glyph_date_replay + illustration_date_memories_empty assets (batch 7/8)
null
2026-06-30 16:52:04 -0500
-
a77b295124
feat(date-memories): add date_history + date_reflections Firestore security rules (batch 6/8)
null
2026-06-30 16:52:01 -0500
-
8829cffa7e
feat(date-memories): add onDateHistoryCreated + onDateReflectionWritten Cloud Functions (batch 5/8)
null
2026-06-30 16:51:59 -0500
-
8cfa367484
feat(date-memories): wire date_logged/date_reflection_* notification types into messaging service (batch 4/8)
null
2026-06-30 16:51:57 -0500
-
4ecb1560cb
feat(date-memories): add Home nudge for pending date reflection + priority engine (batch 3/8)
null
2026-06-30 16:51:55 -0500
-
15087df13b
feat(date-memories): add DateMemories timeline + DateReflection screen, wire into nav (batch 2/8)
null
2026-06-30 16:51:52 -0500
-
18ffdcdbaf
feat(date-memories): add DateMemory/DateReflection domain models and Firestore data sources (batch 1/8)
null
2026-06-30 16:51:50 -0500
-
d87603211a
feat(activity): ActivityScreen timeline, HomeScreen activity feed, HomeViewModel wiring, PartnerNotificationManager, sendThinkingOfYouCallable Cloud Function
null
2026-06-30 03:54:01 -0500
-
e74b6f59af
feat(cloud-functions): onEntitlementChanged, acceptInviteCallable, onGameSessionUpdate, onAnswerRevealed, onMessageWritten — FirestoreUserDataSource E2EE, AppMessagingService, EditProfileScreen, iOS plan
null
2026-06-30 02:38:31 -0500
-
fb810a12aa
feat(profile): FirestoreUserDataSource E2EE read/write, EditProfileViewModel wiring, CoupleRepository/UserRepository updates, HomeViewModel polish
null
2026-06-30 02:18:10 -0500
-
941f22cdbd
feat(home): HomePriorityEngine priority logic, HomeViewModel wiring, unit test coverage
null
2026-06-30 01:26:09 -0500
-
2a5c40508e
feat(notifications): QuietHoursManager + NotificationSettingsScreen rewrite, Cloud Functions (streakReminder, quietHours, reengagement, gameRetention), UserRepository E2EE wiring, SettingsDataStore, firestore rules, wiring-scan
null
2026-06-30 00:38:06 -0500
-
7b1443e578
feat(pairing): CreateInviteScreen invite-code UX, MainActivity nav wiring, LocalQuestionContent question pool expansion, Future.md planning
null
2026-06-29 21:44:26 -0500
-
f6291e1f2e
feat(home): HomeScreen rewrite, HomePriorityEngine polish, CoupleRepository E2EE wiring, OutcomeCheckInDialog, YourProgress, MemoryLane, settings/pairing/paywall/play/wheel/question screens cleanup, brand illustrations, QA docs
null
2026-06-29 16:51:46 -0500
-
912b8c8093
feat(onboarding): RecoveryKeyManager fix, OnboardingScreen polish, build.gradle bump, Future.md planning update
null
2026-06-29 13:01:08 -0500
-
b5b8ad8df9
feat(games): GameSessionManager cleanup, QuestionSessionRepositoryImpl fixes, HomeViewModel game-state wiring, QA docs
null
2026-06-29 12:20:07 -0500