Commit Graph
101 Commits
Author SHA1 Message Date
jjbrunton a7a13c9614 Add release notes and fix answer gap deadlock
- Add mobile release notes for v1.0.1
- Fix answer gap deadlock with NET gap calculation
- Randomize question order for variety
- Dismiss keyboard when match modal appears
- Add keyboard dismiss on chat scroll
- Pin EAS build node version
2026-01-11 15:10:14 +00:00
jjbrunton df955812fe Add inverse_of tracking and admin question management
- Add inverse_of column support for question pair linking
- Enhance admin questions page with bulk operations
- Add DB migrations for inverse_of and FK indexes
- Update pack generator docs for inverse linking
- Improve Docker configs for admin app
2026-01-11 11:17:46 +00:00
jjbruntonandClaude Opus 4.5 efe93a3db4 Fix subscription status showing "Via partner's" after purchase
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-10 23:02:31 +00:00
jjbrunton 0dedf44e70 Add published filter to question analytics 2026-01-10 21:52:13 +00:00
jjbruntonandClaude Opus 4.5 3009e80dd4 Add drag-and-drop reordering to categories page
- Replace up/down chevron buttons with @dnd-kit drag handles
- Update pack generation and question review commands
- Fix MCP bridge and add supabase package.json for Docker

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-10 21:19:36 +00:00
jjbrunton 2e05105bb0 Use StreamableHTTP transport for MCP server 2026-01-10 19:55:37 +00:00
jjbrunton 98621ca3fa Fix MCP server request handling
Pass Hono Context to handleRequest instead of raw Request object, fixing 500 error
2026-01-10 19:44:49 +00:00
jjbrunton 4d32226541 Update lockfile
Commit updated package-lock.json to fix npm ci error during deployment
2026-01-10 19:43:33 +00:00
jjbrunton 23a449fcca Fix MCP bridge script
Restore bridge.mjs build artifacts and update build script to include bridge.ts. Switch bridge to use StreamableHTTPClientTransport for better auth support.
2026-01-10 19:42:39 +00:00
jjbrunton b2925daf4f Disable proxy buffering for MCP SSE
Add X-Accel-Buffering: no headers to prevent Nginx/Dokploy from buffering SSE streams
2026-01-10 19:41:16 +00:00
jjbrunton 3c9a021f11 Fix MCP server entry point
Update start script and Dockerfile CMD to use index.mjs generated by tsup ESM build
2026-01-10 19:28:15 +00:00
jjbrunton 4e40b92b16 Add MCP server and enhance AI content tools
Implement self-hosted MCP server for admin actions, update AI generation tools in admin dashboard, and refine mobile app stores and components.
2026-01-10 19:24:06 +00:00
jjbruntonandClaude Opus 4.5 b0f1700e40 Add match archiving, chat enhancements, and daily limits
- Match archives with swipe-to-archive and unread filtering
- Chat settings sheet and full-screen media modals
- Match notification modal for new matches
- Admin AI settings with model/provider configuration
- Daily response limit feature with recommended questions
- New test coverage for stores, hooks, and components
- Claude Code agent and command configurations

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 20:18:34 +00:00
jjbrunton 595d6bd394 Remove partner answered indicator for privacy
Prevents users from deducing partner's negative answers
on the My Answers page when no match exists.
2026-01-09 13:44:04 +00:00
jjbrunton fc515a19b0 Fix Select empty value error in DarePacksPage 2026-01-08 21:39:44 +00:00
jjbrunton b933c3c421 Add dares feature schema and admin portal 2026-01-08 21:37:34 +00:00
jjbrunton aff0bc0888 Add admin pagination and update configs 2026-01-08 21:15:34 +00:00
jjbruntonandClaude Opus 4.5 b60b72a289 Update icons, screenshots, and UX improvements
- Refactor icon picker to use full Ionicons set dynamically
- Add date sort toggle to My Answers screen
- Fix match deduplication and show total count on home
- Clear stale data when switching chats
- Update app store screenshots
- Bump build number to 25

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-08 19:58:29 +00:00
jjbrunton c48936686e Remove E2EE and switch to plaintext messaging
🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-01-08 18:04:48 +00:00
Jamie BruntonandClaude Opus 4.5 43fa7033dc Add pack icon system and E2EE removal plan
- Replace emoji icons with Ionicons for professional appearance
- Improve E2EE key recovery with better diagnostics
- Add analytics for pack icon events
- Document E2EE removal plan for future simplification

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-08 15:34:25 +00:00
Sauci Dev 953bd7c03d Fix Android navigation and enforce secure-only messaging
- Remove forced redirect to pairing screen for users without a couple
- Users now go directly to dashboard after onboarding (matches iOS behavior)
- Add secureReady state to InputBar to prevent sending before E2EE is ready
- Pre-fetch admin key during key initialization to reduce chat load time
- Block media uploads until encryption is fully ready
- Add security status indicator in chat when encryption is initializing
2026-01-07 21:42:19 +00:00
jjbrunton 4b8f4315e9 Add premium subscription card with gold styling 2026-01-07 19:57:07 +00:00
jjbrunton 0a919f06fc Add intensity-based preferences and harden E2EE payload verification 2026-01-07 19:53:09 +00:00
Jamie Brunton e23f4557bb Switch to local EAS versioning and sync build numbers 2026-01-07 15:40:17 +00:00
Jamie BruntonandClaude Opus 4.5 693ae59321 Add message reporting and account deletion
- Add user message reporting via long press menu
- Add delete-account edge function for App Store compliance
- Update admin moderation page with AI/User tabs

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 13:24:30 +00:00
Jamie Brunton 314745c6cb Add iOS privacy purpose strings and version display
- Add descriptive purpose strings for camera, photo library, and microphone
- Display app version and build number on profile screen
- Add email redirect URL for sign-up flow
- Update Android OAuth client configurations

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-01-07 12:01:14 +00:00
jjbrunton 1f0201ec5f Improve web landing page design and UX
- Add FAQ section with accordion-style questions
- Enhance hero with stronger copy and App Store badge
- Add hover animations to features and phone mockups
- Add pricing display (£4.99/month) to Pro section
- Add step icons to How It Works section
- Improve accessibility with focus states and reduced-motion
- Add exit animation to mobile navigation menu

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-01-06 18:43:07 +00:00
jjbrunton e52430f0a8 Update 2026-01-05 15:21:56 +00:00
jjbrunton 36cc748d84 Move match card from header to message list
🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-01-04 20:26:54 +00:00
jjbrunton 474bbb6829 Collapse match card header on keyboard open 2026-01-04 19:55:32 +00:00
jjbruntonandClaude Opus 4.5 58209b94ef Fix EAS local builds and resolve require cycles
- Add dotenv-cli for EAS local builds to load env vars
- Break circular dependencies in store/hooks imports
- Add env var validation with clear error messages
- Remove hardcoded Sentry auth token from sentry.properties
- Add .ipa files to .gitignore

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-04 16:43:24 +00:00
jjbrunton bb2ce5a6a6 Implement infinite scroll for Matches and Answers
Add pagination support to stores and update list screens to load data in batches for improved performance with large datasets.
2026-01-03 22:34:41 +00:00
jjbrunton ae91602921 Improve mobile data retrieval and state management
- Add race protection and packId normalization to swipe screen
- Add loading/error states to matchStore with couple_id filter
- Sync per-match unread counts in realtime
- Use useFocusEffect for data freshness on Home screen
- Wire RefreshControl to actual loading state on Matches

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-01-03 20:10:58 +00:00
jjbrunton 994dd2a295 Add lifecycle push notifications and refine UI
Send push notifications when partner disconnects, resets progress, or deletes relationship.
Update Matches screen with new styling and remove legacy premium elements.
Remove message content preview from admin User Activity page.
2026-01-03 18:58:57 +00:00
jjbrunton a567fba349 Enhance swipe UI and add chat date separators 2026-01-03 18:37:18 +00:00
Jamie Brunton 7e686c147a feat: add reset progress and flagged media analysis 2026-01-03 13:08:23 +00:00
Jamie Brunton a7e29682c1 feat(chat): allow deleting broken or pending secure messages
- Add onLongPress prop to MessageContent
- Pass delete handler to MessageContent from ChatMessages
- Enable long-press on 'Couldn't open secure message' error to show delete options
- Enable long-press on 'Secure message' pending state
2026-01-03 10:28:51 +00:00
Jamie Brunton 365852c130 Add E2EE unit tests and improve mobile UI
- Add comprehensive tests for encryption/decryption logic
- Improve error messages for encrypted chat
- Update profile danger zone UI with blur effect
- Refactor typing indicator hook
2026-01-03 09:51:31 +00:00
Jamie Brunton 0ffa7fa952 Add E2EE key pair verification before send
🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-01-02 22:30:51 +00:00
Jamie Brunton 69f43ffb7d Regenerate native projects with SDK 35 2026-01-02 21:46:03 +00:00
Jamie Brunton 348ef221db Improve E2EE robustness and Android permissions
- Add IV validation and key sanitization for encryption
- Add stale key repair for media decryption failures
- Block READ_MEDIA_IMAGES/VIDEO permissions (use photo picker)
- Prevent double-tap crashes in media picker
- Clear media cache on logout
- Persist versionCode/buildNumber in app.json
- Bump Android targetSdk to 35
2026-01-02 21:36:26 +00:00
Jamie Brunton 198cd80dfd Implement E2EE and message content moderation 2026-01-02 20:49:11 +00:00
Jamie Brunton e1ff87dc03 Show opt-in counts by feature 2026-01-02 11:53:38 +00:00
Jamie BruntonandClaude Code f7aa6ed8dd Add feature opt-ins, dashboard view, and tests
Introduce feature_interests schema + realtime publication and surface opt-in trends in the admin dashboard. Add Jest test infrastructure/coverage for the mobile app and update push-all to run mobile checks before pushing.

Co-authored-by: Claude Code <claude@anthropic.com>
2026-01-02 11:36:51 +00:00
Jamie BruntonandClaude Code 1452519c76 Add profile appearance and notifications settings
Co-authored-by: Claude Code <claude@anthropic.com>
2026-01-02 10:47:24 +00:00
Jamie BruntonandClaude 066e7ff35d Update mobile builds and chat reveal flow
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-02 10:27:24 +00:00
Jamie Brunton d62fd1c053 Verify identity when enabling biometric auth
- Prompt for biometric authentication before enabling feature
 - Add error handling for failed authentication
 - Update .gitignore to exclude .opencode directory
2026-01-02 09:13:24 +00:00
Jamie Brunton 8f8c6e401d Refactor profile screen and organize project structure
- Extract ProfileScreen and components to features/profile
- Move shared hooks and stores to top-level
- Add RLS policies for admin permissions
- Add RELEASING.md guide
- Update .gitignore
2026-01-01 23:03:43 +00:00
Jamie Brunton df4c4d486b Increase build 2026-01-01 20:35:00 +00:00
Jamie Brunton 5bbc324290 Add IAP entitlement back 2026-01-01 20:30:35 +00:00