null
|
21df900bc7
|
fix: add contentDescription to icon buttons for accessibility
|
2026-06-18 02:46:10 -05:00 |
null
|
df961e8d94
|
fix: enforce multi-choice maxSelections limit across all answer UIs, pass questionIds to startGame
|
2026-06-18 02:41:33 -05:00 |
null
|
4134c4570d
|
fix: integrate game session lifecycle into DesireSync, HowWell, and ThisOrThat
|
2026-06-18 02:29:14 -05:00 |
null
|
2b8e05b29b
|
fix: address Neo review — fix cloud function partnerName scope, WheelCompleteScreen session ID, polling isActive, navigateTo reset
|
2026-06-18 01:28:43 -05:00 |
null
|
7926289153
|
fix: clamp scale midpoint and handle edge case in wheel session answer UI
|
2026-06-18 01:17:47 -05:00 |
null
|
c6df885e1e
|
fix: add answer options to wheel session screen so partners can answer questions
|
2026-06-18 01:09:08 -05:00 |
null
|
7fb913db99
|
fix: add camera hardware feature flag, fix WaitingForPartnerScreen layout
|
2026-06-18 01:05:04 -05:00 |
null
|
c58b1c6326
|
feat: enforce one active game per couple with partner notifications
|
2026-06-18 00:56:21 -05:00 |
null
|
2677e38514
|
fix: use sex column for Desire Sync question filtering instead of fragile ID pattern
|
2026-06-18 00:32:39 -05:00 |
null
|
c0696cfb80
|
feat: partner leave notification, real-time couple state sync, in-app unpair alerts
|
2026-06-18 00:25:52 -05:00 |
null
|
eaac8ffcc9
|
feat: couple-scoped daily question, answer sync, partner notifications, and answer review
|
2026-06-18 00:18:05 -05:00 |
null
|
92a257b3eb
|
feat: add sex field to user profile, Google profile extraction, multi-step onboarding, profile editing
|
2026-06-17 23:59:46 -05:00 |
null
|
f7b95fc9ba
|
feat: add Google sign-in icon, update login screen and auth visuals
|
2026-06-17 23:07:19 -05:00 |
null
|
8217a3385d
|
fix: extract Firebase auth calls into AuthRepository — LoginViewModel no longer depends on Firebase directly
|
2026-06-17 23:02:25 -05:00 |
null
|
370a56069f
|
refactor: comprehensive UI polish across 26 files — components, screens, theme consistency
|
2026-06-17 22:44:14 -05:00 |
null
|
d135b306aa
|
feat: add CategoryGlyph component, DesireSync polish, UI refinements across screens
|
2026-06-17 22:31:34 -05:00 |
null
|
85bb8d9f69
|
feat: add DesireSync module with sexual_preferences questions and Room integration
|
2026-06-17 22:23:04 -05:00 |
null
|
d21763ac41
|
feat: add sexual_preferences seed data (question_v2 schema)
|
2026-06-17 22:10:50 -05:00 |
null
|
a530064ddb
|
fix: refine shell back routes — remove full-screen screens from shellBackRoutes set
|
2026-06-17 22:03:36 -05:00 |
null
|
45058fdd5f
|
feat: couple intimacy seed data, "How Well" screen, ThisOrThat + wheel polish
|
2026-06-17 21:57:40 -05:00 |
null
|
254652cb86
|
feat: add "This or That" screen with navigation, DB query, and Play Hub card
|
2026-06-17 21:34:07 -05:00 |
null
|
84390a48fc
|
fix: test infrastructure and entitlement logic updates
|
2026-06-17 21:08:13 -05:00 |
null
|
827cfd2e2d
|
fix: UI polish across auth, play hub, settings, wheel screens
|
2026-06-17 20:59:21 -05:00 |
null
|
d6f5eb6b0f
|
fix: inject FirebaseFirestore via constructor instead of getInstance()
|
2026-06-17 20:53:42 -05:00 |
null
|
e5c734d3b2
|
fix: ViewModel and repository error handling improvements
|
2026-06-17 20:51:18 -05:00 |
null
|
c89e4f6bba
|
fix: answer reveal and question category UI/state fixes
|
2026-06-17 20:41:37 -05:00 |
null
|
a0fd1d56f6
|
feat: category picker redesign, bucket list wiring, settings + nav updates
|
2026-06-17 20:38:06 -05:00 |
null
|
c816033e74
|
feat: cloud function for date match cleanup, ViewModel and repo improvements
|
2026-06-17 20:26:24 -05:00 |
null
|
fb87fe149a
|
docs: rewrite README with product clarity, add screenshots, register Room DAOs in DI
|
2026-06-17 19:59:07 -05:00 |
null
|
662a49df9d
|
refactor: centralize all Firestore collection paths in FirestoreCollections constants
|
2026-06-17 19:47:58 -05:00 |
null
|
19c6b4a6cb
|
fix: real uid in bucket list, Firestore rules hardening for date plans & bucket list
|
2026-06-17 19:41:27 -05:00 |
null
|
ec315c63e0
|
feat: add App Integrity + device attestation modules
|
2026-06-17 19:37:19 -05:00 |
null
|
0095151bd9
|
fix: add input sanitization across date plan forms and repository
|
2026-06-17 19:23:53 -05:00 |
null
|
ede7c70ea7
|
fix(release): date/time pickers, debug logging guards, RC_API_KEY comment, ExternalLinks TODOs (gap fixes)
|
2026-06-17 02:00:39 -05:00 |
null
|
4ede77f067
|
feat(legal): ExternalLinks utility, Privacy/Terms links in Settings + Paywall screens (batch 12)
|
2026-06-17 01:32:05 -05:00 |
null
|
f3bad90ec6
|
feat(notifications): FCM token registration, quiet hours, notification permission helper, reminder Cloud Functions (batch 11)
|
2026-06-17 01:30:04 -05:00 |
null
|
b9ad713ddb
|
feat(billing): server-side entitlement sync — RevenueCat webhook handler, entitlement logic, Firestore EntitlementChecker, Hilt DI, callable sync function (batch 10)
|
2026-06-17 01:25:51 -05:00 |
null
|
681cf7fb32
|
feat(billing): RevenueCat SDK integration, BillingRepository, PaywallScreen + ViewModel, Hilt DI, navigation route (batch 9)
|
2026-06-17 01:22:24 -05:00 |
null
|
c9ff160bf3
|
fix(ui): responsive visual QA pass — text ellipsis, navigationBarsPadding, touch targets, spacing fixes (batch 8)
|
2026-06-17 01:17:47 -05:00 |
null
|
d109f7fcd0
|
fix(ui): partner invite flow polish — compact layout, share button, back affordances, secondary route styling (batch 7)
|
2026-06-17 00:16:42 -05:00 |
null
|
cc974661d3
|
fix(ui): settings & partner state polish — no fake data, tappable partner row, gated destructive actions, subpage back affordances (batch 6)
|
2026-06-17 00:13:20 -05:00 |
null
|
557af3e546
|
feat(dates): add Date Builder + Bucket List — backend models, Room DAOs, Firestore sources, repositories, UI screens, ViewModels, navigation routes, Firestore rules
|
2026-06-17 00:05:46 -05:00 |
null
|
512a6c9f42
|
feat(dates): add Date Match MVP Phase 1 — swipe UI, Firestore models, 30+ seed ideas, match reveal
|
2026-06-16 23:30:58 -05:00 |
null
|
1fc25d6c1f
|
security: add client-side auth rate limiting with exponential backoff (SecurityReport #11)
|
2026-06-16 23:01:02 -05:00 |
null
|
e4a2588c50
|
security: enable Room schema export for CI migration validation (SecurityReport #7)
|
2026-06-16 22:59:38 -05:00 |
null
|
e28a08e5f1
|
security: hash question IDs and coarsen categories in Firebase Analytics (SecurityReport #9)
|
2026-06-16 22:58:27 -05:00 |
null
|
a412247bf3
|
security: kimi-k2.7 review fixes — Ed25519 crypto API, Firestore rules try/catch removal, atomic idempotency, RevenueCat 8.20.0, rate limiter fix, remove plaintext fallback, tighten push wording
|
2026-06-16 22:42:53 -05:00 |
null
|
50c44d2afd
|
security: swap RevenueCat hybrid-common SDK for native Android SDK purchases:10.10.0, add Maven repo
|
2026-06-16 22:09:22 -05:00 |
null
|
e82207c9d0
|
security: swap alpha crypto 1.1.0-alpha06 for stable 1.0.0, update MasterKey→MasterKeys API
|
2026-06-16 22:05:37 -05:00 |
null
|
95ea9ffed5
|
security: disable auto backup, rewrite backup rules as allowlist, harden data extraction rules for Android 12+
|
2026-06-16 21:58:17 -05:00 |