The couple_packs table has no admin RLS policy, so the enabled packs
query returns empty for admin users. Query all partner-answered
questions instead — more useful for admin visibility anyway.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Shows questions the partner has answered that this user hasn't yet,
with intensity levels and partner's answer. Adds outstanding count
badge and gap-blocked indicator to the profile header.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Production only had one migration tracked in schema_migrations.
With --include-all, db push tried to re-run all 57 earlier migrations.
Without it, only migrations newer than the latest tracked version are applied.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Migration 20260127202703 was applied to prod via MCP but had no local
file, causing supabase db push to fail with a version mismatch.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Adds Sunday weekly recap push notifications summarizing couple match
activity. Includes edge function, migration, notification preference
toggle, and mobile notification handling.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Re-add is_explicit toggle on pack and dare pack forms labeled as
"NSFW". Show NSFW badge on pack cards and user enabled packs.
Remove all intensity/comfort level references from admin UI including
form fields, analytics charts, review dialog columns, AI generation
prompts/scoring, cherry-pick balancing, and settings toggles. The
database columns remain unchanged.
Use Reanimated's built-in Animated.FlatList instead of manually wrapping
with createAnimatedComponent to fix Android crash where animated scroll
handler binds before the native node is registered.
Also includes v1.0.3 version bump and expo-sharing pin.
Extract the slider track, levels, card, and modal into\nfocused subcomponents with shared styles/constants.\nPreserve the existing IntensitySlider API.
Move swipe screen logic into hooks/services and extract
state-specific UI components to keep files small while
preserving existing behavior.
Reference: US-002
The migration needs to run before add_question_type_to_recommended_questions
which depends on the question_type enum. Both had timestamp 20260125110000,
causing alphabetical sort to run them in wrong order.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Use IF NOT EXISTS for CREATE TYPE
- Use ADD COLUMN IF NOT EXISTS for ALTER TABLE
- Use DROP POLICY IF EXISTS before CREATE POLICY
This allows the migration to run safely even if schema already exists.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The add_question_types migration had an earlier timestamp than
add_color_to_categories which was already applied to production.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- New discovery components (ContentTile, ContentRow, CircularProgress)
- Refactor home screen with compact header and content tiles
- Add hide_nsfw profile setting for content filtering
- Add color column to categories table
- Track pack progress (answered/total questions)
- Update related stores and tests
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The latest supabase-js@2.92.0 has a Deno compatibility bug with
createRequire that causes all edge functions to fail with:
"The argument 'filename' must be a file URL object..."
Pin all edge functions to @2.45.0 with ?target=deno parameter
to ensure Deno-compatible builds from esm.sh.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add enabled packs and feature interests to admin user page
- Add clickable links from responses to packs in admin
- Add pack change notification edge function
- Remove react-native-quick-crypto (unused E2EE)
- Bump mobile version to 1.0.1 (versionCode 22)
- Add EAS config and preview build scripts
- Gitignore keystore and APK files
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 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
- 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