saravanakumardb1
|
424e804396
|
fix(ios): resolve Swift compile errors for iOS 26 / Xcode 26
- Fix CloudKitSyncManager deinit concurrency violation
- Replace deprecated List(selection:) with VStack+ForEach sidebar
- Replace removed Animation.none with Animation.linear(duration: 0)
- Fix CountdownRing initializer parameter mismatch
- Unwrap optional timer.duration in ShareableTimerManager and DataExportManager
- Add missing .event case to exhaustive switch
- Change CascadeWarning.scheduledTime from let to var
- Fix CalendarSyncManager CMTimer init (add elapsedBeforePause, remove non-existent params)
- Add missing UserNotifications import in SleepManager
- Remove parameterized App Intents phrases (iOS 26 restriction)
- Temporarily remove watchOS target dependency for iOS build
|
2026-03-19 14:22:50 -07:00 |
|
saravanakumardb1
|
d6b1bb6f63
|
fix(sync): fix BatchResult.errors type mismatch — backend returns {id,error} objects not strings
|
2026-03-01 21:27:44 -08:00 |
|
saravanakumardb1
|
48b88d3a29
|
fix(sync): add x-product-id header and fix pullDelta response decode mismatch
|
2026-03-01 21:26:12 -08:00 |
|
saravanakumardb1
|
b7688b55d1
|
fix(security): move PlatformSyncManager auth token from UserDefaults to Keychain
|
2026-03-01 16:37:39 -08:00 |
|
saravanakumardb1
|
3adab843cd
|
refactor(ios): migrate CrashReporter to ByteLystPlatformSDK's BLCrashReporter
Replaced standalone MetricKit crash reporter (153 lines) with thin wrapper (34 lines)
delegating to SDK's BLCrashReporter. Preserves existing call-site API.
|
2026-02-28 22:38:55 -08:00 |
|
saravanakumardb1
|
d1b4534b22
|
refactor(ios): migrate Cloud/ files to ByteLystPlatformSDK — eliminate duplicated platform code
Replaced standalone implementations with thin wrappers over shared SDK:
- KeychainHelper → delegates to BLKeychain (53→27 lines)
- TelemetryService → delegates to BLTelemetryClient (139→55 lines)
- FeatureFlagService → delegates to BLFeatureFlagClient (72→39 lines)
- AuthService → delegates to BLAuthClient (359→171 lines)
- project.yml → added ByteLystPlatformSDK local package dependency
Total: 623 lines of duplicated code → 292 lines of thin wrappers.
PlatformSyncManager kept as-is (product-specific timer DTOs).
All existing call-site APIs preserved — zero breaking changes.
|
2026-02-28 22:12:37 -08:00 |
|
saravanakumardb1
|
3596a8f350
|
feat(sync): wire platform sync into timer and routine stores, extend fullSync for routines, add error/not-found pages
|
2026-02-28 20:24:53 -08:00 |
|
saravanakumardb1
|
77254b751e
|
fix(telemetry): lowercase osFamily to match server enum
|
2026-02-28 19:26:52 -08:00 |
|
saravanakumardb1
|
75927d00e2
|
chore(ios): add TelemetryService + FeatureFlagService to Xcode project
|
2026-02-28 19:25:01 -08:00 |
|
saravanakumardb1
|
180c98160b
|
feat(ios): add telemetry client, feature flags client, Settings login/register form
|
2026-02-28 19:10:08 -08:00 |
|
saravanakumardb1
|
e3add90f87
|
feat(auth): add forgot password, reset password, change password, delete account, email verify, token refresh
Web:
- platform-sync.ts: Added forgotPassword, resetPassword, changePassword, verifyEmail, resendVerification, deleteAccount API functions
- auth-context.tsx: Added forgotPassword, resetPassword, changePassword, deleteAccount actions + successMessage state + 45min auto-refresh timer
- settings/page.tsx: Added forgot password link, change password form, delete account form with confirmation
- reset-password/page.tsx: New page for password reset via email token
- verify-email/page.tsx: New page for email verification via token
iOS:
- AuthService.swift: Added forgotPassword, changePassword, deleteAccount methods
- SettingsView.swift: Added change password, delete account, forgot password UI sections
Android:
- AuthService.kt: Added forgotPassword, changePassword, deleteAccount methods
|
2026-02-28 04:08:58 -08:00 |
|
saravanakumardb1
|
6a41cc9f48
|
feat(mobile): add auth login/register flow for iOS and Android
- iOS: Add KeychainHelper.swift for secure token storage
- iOS: Add AuthService.swift (CMAuthService) with login/register/refresh/logout
- iOS: Add LoginView.swift (CMLoginView) with ChronoMind theme
- iOS: Wire auth gate in ChronoMindApp.swift (LoginView vs ContentView)
- iOS: Add Account section to SettingsView with email/plan/sign-out
- iOS: Add Cloud group + 3 files to Xcode project.pbxproj
- Android: Add AuthService.kt with Hilt @Singleton, login/register/refresh/logout
- Android: Add LoginScreen.kt with Compose login/register form
- Android: Wire auth gate in MainActivity via Hilt-injected AuthService
- Android: Add Account section to SettingsScreen via HiltViewModel
- Android: Add x-product-id header to PlatformApiClient
|
2026-02-28 03:22:23 -08:00 |
|
saravanakumardb1
|
11e50295ea
|
feat: fix web build, add repo infra, port iOS engine modules, add routine screens
- fix(web): cast window through unknown in platform-sync.ts (TS2352)
- docs: add AGENTS.md, README.md, CLAUDE.md, .windsurfrules, .cursorrules, env.example
- feat(ios): port Recurrence.swift from web/src/lib/recurrence.ts
- feat(ios): port NLParser.swift from web/src/lib/nl-parser.ts
- feat(ios): port ContextMessages.swift from web/src/lib/context-messages.ts
- feat(ios): add CMRoutine model + Routines.swift engine with state machine + templates
- feat(ios): add RoutineListView, RoutineRunnerView, RoutineEditorView
- feat(android): add RoutineScreen.kt with list, runner, templates, step controls
Web: 373 tests passing, build succeeds with --webpack flag
|
2026-02-28 01:50:35 -08:00 |
|
saravanakumardb1
|
af33a2c86d
|
feat(sync): add cross-platform sync managers for iOS, Android, and Web
- iOS: PlatformSyncManager — URLSession, delta sync, batch upload, offline queue, HMAC auth
- Android: PlatformApiClient + SyncRepository — HttpURLConnection, Room integration, offline queue
- Web: platform-sync.ts + use-sync.ts — fetch client, localStorage queue, React hook with 60s auto-sync
All consume platform-service /timers/*, /routines/*, /households/* endpoints.
Sync protocol: syncVersion optimistic concurrency, delta sync via ?since=, batch upsert for offline flush.
|
2026-02-28 00:25:35 -08:00 |
|
saravanakumardb1
|
bebb566caf
|
feat(growth): add referral program — unique codes, invite tracking, Pro reward months
|
2026-02-27 22:59:02 -08:00 |
|
saravanakumardb1
|
fdcae8297a
|
feat(share): add shareable timer links with universal link support + import/export
|
2026-02-27 22:58:57 -08:00 |
|
saravanakumardb1
|
9be48f0abf
|
feat(gdpr): add data export (JSON) + account deletion — App Store and GDPR compliance
|
2026-02-27 22:57:56 -08:00 |
|
saravanakumardb1
|
3df8ac597b
|
feat(wellness): add sleep manager (HealthKit, bedtime routine, smart alarm) + mood/energy check-in with weekly insights
|
2026-02-27 22:57:47 -08:00 |
|
saravanakumardb1
|
639d606233
|
feat(web): add Playwright E2E tests, service worker, package updates
|
2026-02-27 22:37:04 -08:00 |
|
saravanakumardb1
|
4341502e33
|
feat(location): add CoreLocation geofencing triggers + MapKit travel time intelligence
|
2026-02-27 22:35:48 -08:00 |
|
saravanakumardb1
|
351410ba41
|
feat(calendar): add EventKit calendar sync — read events, convert to timers, auto-sync every 15m
|
2026-02-27 22:35:36 -08:00 |
|
saravanakumardb1
|
2fc277b663
|
feat(macos): add macOS menu bar app — popover timeline, quick timer, keyboard shortcut, settings
|
2026-02-27 22:35:26 -08:00 |
|
saravanakumardb1
|
e87e027c0f
|
feat(testflight): add MetricKit crash reporting + feedback form in Settings
|
2026-02-27 22:24:00 -08:00 |
|
saravanakumardb1
|
01c0f5759e
|
feat(sync): add iCloud sync via NSUbiquitousKeyValueStore with merge strategy
|
2026-02-27 22:23:45 -08:00 |
|
saravanakumardb1
|
2c224c5c4f
|
test(week9): add urgency tests (14) + accessibility tests (14) + update roadmap Week 9
|
2026-02-27 22:20:29 -08:00 |
|
saravanakumardb1
|
3bec3602d2
|
feat(a11y): add VoiceOver, Dynamic Type, Reduce Motion, High Contrast accessibility helpers
|
2026-02-27 22:20:22 -08:00 |
|
saravanakumardb1
|
be0e8748b2
|
feat(ipad): adaptive layout — NavigationSplitView sidebar + timer detail side panel on iPad
|
2026-02-27 22:20:15 -08:00 |
|
saravanakumardb1
|
4b579750a2
|
test(week8): add reschedule engine tests (14) + gamification engine tests (15) + update roadmap
|
2026-02-27 22:14:01 -08:00 |
|
saravanakumardb1
|
40fd63e748
|
feat(gamification): integrate gamification into app — badge celebration overlay, history stats+badges tabs
|
2026-02-27 22:13:50 -08:00 |
|
saravanakumardb1
|
58dde35cc9
|
feat(gamification): add streak card, focus score card, badge grid, confetti, weekly summary card with share
|
2026-02-27 22:13:44 -08:00 |
|
saravanakumardb1
|
f6208e65d1
|
feat(gamification): add streak engine, focus score, badge definitions, and GamificationStore
|
2026-02-27 22:13:39 -08:00 |
|
saravanakumardb1
|
a86ed05271
|
feat(reschedule): add reschedule sheet UI, undo banner, suggestion banner, and timeline integration
|
2026-02-27 22:13:32 -08:00 |
|
saravanakumardb1
|
931746a119
|
feat(reschedule): add AI reschedule engine with shift, skip, push, undo and smart suggestions
|
2026-02-27 22:13:27 -08:00 |
|
saravanakumardb1
|
0b798bf9ff
|
test(shared): add SharedTimerData tests + update roadmap Week 7 checkmarks
|
2026-02-27 22:01:57 -08:00 |
|
saravanakumardb1
|
016a3d14e5
|
feat(project): add widget, watchOS, and complications targets to project.yml with dependencies
|
2026-02-27 22:01:51 -08:00 |
|
saravanakumardb1
|
36523334c4
|
feat(siri): add App Intents for Siri Shortcuts — set timer, start pomodoro, next timer info
|
2026-02-27 22:01:46 -08:00 |
|
saravanakumardb1
|
71bda1dab9
|
feat(watch): add watchOS app with timeline, timer detail, quick presets, haptics, and complications
|
2026-02-27 22:01:39 -08:00 |
|
saravanakumardb1
|
5936016a36
|
feat(widget): add WidgetKit widgets — small, medium, lock screen with AppIntentTimelineProvider
|
2026-02-27 22:01:34 -08:00 |
|
saravanakumardb1
|
4b1cbcf81b
|
feat(live-activity): add ActivityKit attributes and LiveActivityManager for Dynamic Island
|
2026-02-27 22:01:28 -08:00 |
|
saravanakumardb1
|
46d9866253
|
feat(shared): add App Groups data layer for iOS/Watch/Widget communication
|
2026-02-27 22:01:24 -08:00 |
|
saravanakumardb1
|
35f53e87f5
|
feat: add Pomodoro session celebration with trophy animation
|
2026-02-27 21:23:45 -08:00 |
|
saravanakumardb1
|
a1120a56e8
|
feat: add in-app toast system with notification fallback for denied permissions
|
2026-02-27 21:21:46 -08:00 |
|
saravanakumardb1
|
28dfa9f929
|
feat: add Serwist service worker for offline PWA support
|
2026-02-27 21:18:43 -08:00 |
|
saravanakumardb1
|
cae442d099
|
test: add time-blindness and urgency tests (82 total passing)
|
2026-02-27 21:16:49 -08:00 |
|
saravanakumardb1
|
755d030c7a
|
test: add 13 Zustand store tests (66 total passing)
|
2026-02-27 21:15:30 -08:00 |
|
saravanakumardb1
|
815e1cd7fe
|
docs: comprehensive roadmap update with all Phase 1 checkmarks and commit links
|
2026-02-27 21:11:39 -08:00 |
|
saravanakumardb1
|
1883697de7
|
feat: add settings link in dashboard header
|
2026-02-27 21:10:25 -08:00 |
|
saravanakumardb1
|
cad95be62a
|
feat: add Zod schemas, settings page with sound preview, notification controls
|
2026-02-27 21:09:33 -08:00 |
|
saravanakumardb1
|
d2b5563414
|
feat: add time blindness aids, feedback button, tab title flash, system theme detection
|
2026-02-27 21:08:22 -08:00 |
|