null
|
30fddcc2df
|
feat: E2EE — Tink AEAD, Argon2id KDF, recovery phrase, encrypted Firestore fields (batch v0.2.6)
- Add crypto module: CoupleKeyStore (EncryptedSharedPreferences), RecoveryKeyManager (Argon2id + AES-256-GCM key wrap), FieldEncryptor (AEAD per-field), CoupleEncryptionManager (orchestration)
- Add Tink + Bouncy Castle dependencies to build.gradle.kts, register AeadConfig in CloserApp
- Encrypt answer fields (writtenText, selectedOptionIds, scaleValue) on write, decrypt on read
- Encrypt DesireSync, HowWell, WheelAnswer, QuestionThread fields via CoupleEncryptionManager
- Generate recovery phrase during invite creation, display in CreateInviteScreen
- Add recovery phrase input to InviteConfirmScreen for encrypted invites
- Add RecoveryScreen + RecoveryViewModel for post-pairing key recovery
- Update Couple model with encryptionVersion, wrappedCoupleKey, kdfSalt, kdfParams
- Update Firestore rules: allow couple doc creation by members, fcmTokens path, encryptionVersion monotonic check, invite doc extended fields
|
2026-06-19 19:52:35 -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
|
8217a3385d
|
fix: extract Firebase auth calls into AuthRepository — LoginViewModel no longer depends on Firebase directly
|
2026-06-17 23:02:25 -05:00 |
null
|
84390a48fc
|
fix: test infrastructure and entitlement logic updates
|
2026-06-17 21:08:13 -05:00 |
null
|
ec315c63e0
|
feat: add App Integrity + device attestation modules
|
2026-06-17 19:37:19 -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
|
681cf7fb32
|
feat(billing): RevenueCat SDK integration, BillingRepository, PaywallScreen + ViewModel, Hilt DI, navigation route (batch 9)
|
2026-06-17 01:22:24 -05:00 |
null
|
e4a2588c50
|
security: enable Room schema export for CI migration validation (SecurityReport #7)
|
2026-06-16 22:59:38 -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
|
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
|
db177bc792
|
fix(firebase): replace placeholder Firebase config, update initializer and home screen wiring
|
2026-06-16 01:57:48 -05:00 |
null
|
1a33d4f2b9
|
feat(analytics): Firebase Analytics, Crashlytics, ObservabilityModule, Firestore rules
|
2026-06-16 01:13:20 -05:00 |
null
|
8bcb3308c1
|
feat(auth): Firebase auth wiring, login/signup/forgot-password with ViewModels
- Added FirebaseAuthDataSource, FirestoreUserDataSource
- AuthRepository + UserRepository interfaces and Firebase impls
- LoginViewModel, SignUpViewModel, ForgotPasswordViewModel
- OnboardingViewModel, CreateProfileViewModel
- Updated LoginScreen, SignUpScreen, ForgotPasswordScreen, OnboardingScreen, CreateProfileScreen with ViewModel-backed state
- Wired RepositoryModule with Firebase auth dependencies
|
2026-06-16 00:01:34 -05:00 |
null
|
1c976935c9
|
feat: Firebase + RevenueCat stack, PLAN.md integration, 11 implementation batches (v0.1.0)
|
2026-06-15 18:43:43 -05:00 |