feat: EPIC-05 — Future Self Prediction + Identity Persona Reveal#33
Open
UTA0619 wants to merge 2 commits into
Open
feat: EPIC-05 — Future Self Prediction + Identity Persona Reveal#33UTA0619 wants to merge 2 commits into
UTA0619 wants to merge 2 commits into
Conversation
…a Reveal Implements Issue #9 — AI-generated identity persona Screens: - FutureSelfScreen: locked → reveal → traits cascade flow Loading state, error state, empty state (min 5 entries gate) Days-since-prediction refresh hint, regen button Components: - PersonaCard: card flip animation (rotateY 0→360°), glow shadow, archetype header + ConfidenceRing, persona name + description Locked face: rotating symbol, tap-to-reveal CTA - ConfidenceRing: SVG animated circle (Animated.createAnimatedComponent), strokeDashoffset progress from 0→confidence% over 1400ms - TraitShiftRow: from→to trait shift with magnitude bar animation, direction color coding (growth/healing/transformation/integration) - archetypeConfig.ts: 8 archetypes with primary/secondary colors, gradient pairs, emoji, tagline, symbol Store (futureSelf.ts): - loadPrediction: fetch latest from future_self_predictions table - generatePrediction: invoke generate-future-self edge fn - isRevealed: persisted across sessions (AsyncStorage) - FutureSelfPrediction type: persona, traits, confidence, archetype Closes #9
This was referenced May 12, 2026
apps/mobile/src/screens/future/FutureSelfScreen.tsx:
- Loads prediction from `future_self_predictions` table via futureSelf store
- PersonaCard with animated reveal mechanic (setRevealed)
- TraitShiftRow list for all key trait shifts
- Confidence, entry count, horizon metadata row
- Share (native Share API) + Regenerate actions
- LoadingState / IdleState / ErrorState as separate hoisted components
- Pull-to-refresh via RefreshControl
supabase/functions/update-future-self/index.ts:
- Cron/manual POST handler, auth via CRON_SECRET
- Queries all premium users with >= 20 memories
- Generates 30d/90d/365d predictions in parallel (Promise.allSettled)
- GPT-4o prompt returns: personaName, description, keyTraitShifts,
confidenceScore, visualArchetype, shareSnippet
- Upserts on (user_id, time_horizon) conflict key
packages/shared-types/:
- Added VisualArchetype union type (8 archetypes matching archetypeConfig.ts)
- Full shared type set: EmotionType, Entry, Memory, User, Subscription,
Prediction, IdentityNode, OnboardingData
Monorepo scaffolding (same as epic-04 branch):
- package.json, pnpm-workspace.yaml, apps/mobile/package.json
- apps/mobile/src/services/supabase.ts (singleton client)
- apps/mobile/src/theme/tokens.ts + haptics.ts
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This was referenced May 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
EPIC-05: Future Self Prediction
Closes #9
The Moment
This is ECHO//SELF's signature feature — the dramatic identity reveal. A locked card that the user taps to flip open, revealing their AI-generated future persona.
Flow
Components
PersonaCardConfidenceRingTraitShiftRowarchetypeConfig8 Archetypes
Visionary 🌌 · Healer 🌸 · Creator 🎨 · Rebel 🔥 · Sage 🦉 · Explorer 🧭 · Guardian 🛡️ · Alchemist ⚗️
Next
→ EPIC-06: Stripe Subscription + Profile Screen (Issue #10)