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
|
b049024ba9
|
feat: update date_plan_preferences Firestore rules to use auto-IDs
|
2026-06-17 19:12:14 -05:00 |
null
|
2b1238a64c
|
feat: add Firestore rules for entitlements and notification_queue collections
|
2026-06-17 19:10:45 -05:00 |
null
|
534bb076c7
|
feat: implement Ed25519 RevenueCat webhook signature verification
|
2026-06-17 19:08: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
|
160fb38c4f
|
docs(qa): private MVP checklist, internal testing checklist, store assets checklist, code QA scan (batch 13)
|
2026-06-17 01:34:32 -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
|
6b964935d4
|
chore: remove functions/node_modules from git, add to .gitignore
|
2026-06-17 01:26:05 -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
|
b8b2cc68c4
|
security: fix webhook signature fail-open (now throws 500 on missing key), fix overly restrictive couple update rules
|
2026-06-16 22:11:51 -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 |
null
|
403a8c02e2
|
security: neutral push notification wording — no question text, categories, streak pressure, or relationship context on lock screen
|
2026-06-16 21:57:07 -05:00 |
null
|
b6e7a3e9cf
|
security: add express-rate-limit — webhook 10/min, health 30/min, default 60/min, configurable via env, localhost skip
|
2026-06-16 21:56:32 -05:00 |
null
|
ae1087b0aa
|
security: add RevenueCat Ed25519 signature verification, product ID allowlist, expiration storage, verifyPremiumActive helper, raw body capture, complete event types
|
2026-06-16 21:53:53 -05:00 |
null
|
ddfe9e250a
|
security: remove google-services.json from repo and git tracking, add to .gitignore
|
2026-06-16 21:47:42 -05:00 |
null
|
c28ce9c58d
|
security: restrict couple-level Firestore writes — immutable fields, owner-only messages/reactions, server-only deletes, valid state transitions
|
2026-06-16 21:46:56 -05:00 |
null
|
bd1ea5cecd
|
security: fix invite rules missing-doc bypass, webhook timing attack, entitlement replay protection and entitlement_id check
|
2026-06-16 21:45:04 -05:00 |
null
|
f45f8dd114
|
security: fail-closed webhook auth, constant-time secret comparison, centralized env validation
|
2026-06-16 21:37:57 -05:00 |
null
|
e8274370d1
|
chore: add CONCERN.md to .gitignore
|
2026-06-16 21:32:14 -05:00 |
null
|
afeb1a1a03
|
docs: add README, add proguard rules, Firestore entitlement checker, network security config, update build config and onboarding
|
2026-06-16 20:16:47 -05:00 |
null
|
84995641f3
|
refactor: package rename from com.couplesconnect.app to app.closer, update build config and firebase setup
|
2026-06-16 20:03:58 -05:00 |
null
|
e42de938e7
|
fix: update Invite model, backup rules, and Firestore security rules
|
2026-06-16 19:44:28 -05:00 |
null
|
a870b17801
|
refactor: update AcceptInviteScreen with theme-consistent visuals and layout
|
2026-06-16 19:14:06 -05:00 |
null
|
99ff77a357
|
refactor: consolidate theme usage across components, screens, and wheel flow
|
2026-06-16 18:44:23 -05:00 |
null
|
71441bec14
|
refactor: extract shared auth/settings visuals, apply consistent theme across screens
|
2026-06-16 04:16:16 -05:00 |
null
|
0f73c656d8
|
fix(answers): update answer flow screens, navigation, and question input component
|
2026-06-16 03:39:40 -05:00 |
null
|
56f2d8c045
|
fix(home): update HomeScreen and HomeViewModel
|
2026-06-16 03:25:03 -05:00 |
null
|
0e9606366b
|
fix(questions): update category and pack library screens
|
2026-06-16 03:07:32 -05:00 |
null
|
888ffa3c1a
|
fix(ui): polish screens, update ViewModels, add docs
|
2026-06-16 02:55:16 -05:00 |
null
|
5302526d32
|
fix(theme): apply consistent color system, polish UI across all screens
|
2026-06-16 02:49:36 -05:00 |
null
|
c1548f28fb
|
fix(navigation, pairing): update route handling and invite screen layout
|
2026-06-16 02:30:18 -05:00 |
null
|
342c3276a0
|
fix(home,onboarding): correct navigation and state handling
|
2026-06-16 02:18:28 -05:00 |
null
|
db177bc792
|
fix(firebase): replace placeholder Firebase config, update initializer and home screen wiring
|
2026-06-16 01:57:48 -05:00 |
null
|
7a9d4c3b49
|
feat(ui): wheel history screen, session repo, external links, shared loading/error/empty components
|
2026-06-16 01:24:04 -05:00 |
null
|
bee617c493
|
chore(server): add Node.js backend with auth, questions, answers + update gitignore
|
2026-06-16 01:17:58 -05:00 |