Direction

Decisions to Make

The open calls, split into design and functionality. Each shows the options, a recommendation, and what unblocks once it's made. Already-settled decisions are listed at the bottom so they stop getting relitigated.

Design decisions

D1. Which desktop design direction?
Pairing: Atelier + Sanctuary + Observatory-as-Chart
Dark luxury marketing site, calm light logged-in app, chart workspace as a section. Best of all three; modestly more design-system work.
Single direction everywhere
Pick one of the three comps and apply it universally. Simpler system, but each mood has a weak surface (Atelier daily use, Sanctuary marketing, Observatory onboarding).

Unblocks: design tokens, landing rebuild, every screen redesign. See Desktop Comps.

D2. Default theme: light-first or dark-first?
Context-split
Marketing and immersive reading moments dark; daily dashboard and reading text light by default with the existing toggle. Matches the primary/accent color-swap system already designed.
Dark-first everywhere
Stronger brand mood; harder on long-form reading comfort and daytime use.

Unblocks: comp refinement, token defaults, screenshot/app-store art.

D3. Does the AI get a name and face?
Named persona ("Séla")
Marketable, memorable, relationship-forming — but sets a tone bar every answer must clear.
Unnamed "your guide"
Safer, more premium-neutral; loses the shareable character.

Recommendation: let the focus group decide — App B tests the persona directly; its "quality of Séla's answers" and free-text responses answer this. Unblocks: mobile copy voice, marketing.

D4. Card art: illustrated, procedural, or licensed?
Commissioned original deck
Brand asset and merch; slow and costly (78 pieces).
Procedural/generated art now, commission the flagship deck later
Ship immediately (App C demonstrates the approach), then sell the commissioned deck as a premium unlock.
License an existing deck
Fast but undifferentiated and encumbered.

Unblocks: Deck concept production build, premium-deck revenue idea.

Functionality decisions

F1. Monetization model
Subscription (Lumenal Plus) + one-off luxury reports + shop
Subscription fits the daily-habit concepts; reports stay high-margin one-offs; shop rides along. Matches all three test apps' "would you pay" probes.
Credits/pay-per-reading
Simple to reason about, but taxes the habit loop the mobile concepts depend on.
Free readings, monetize shop only
Underprices the AI product entirely.

Unblocks: Stripe scope (checkout vs Billing), paywall placement, focus-group pricing questions.

F2. Mobile winner criteria and commitment
Pre-commit to the metrics on the Focus Group page
Day-2/3 returns + would-keep-using rating decide; runner-up's best feature folds in. Decide the rule before the data arrives.
Judgment call after reading feedback
Flexible but invites re-testing forever.

Unblocks: the native mobile build. See Mobile Test Apps.

F3. Migration order: payments before or after AWS cutover?
Payments first, on current stack
Stripe integrates at the edge-function layer and ports cleanly; revenue validation shouldn't wait months for infra.
Migrate first, then build payments once
Avoids porting the webhook handlers, at the cost of a quarter of zero revenue signal.

Unblocks: the next engineering sprint's contents.

F4. Mobile auth + offline depth for v1
Email + Apple/Google OAuth; cache readings read-only offline
The spec's full offline queue (messages, scheduling) is Phase-3+ complexity; v1 needs sign-in and readable readings on the subway.
Full offline-first per spec (SQLite, sync queues)
Correct end-state, wrong first milestone.

Unblocks: rewritten mobile Phase 1 spec.

F5. What happens to the Circle (social) features?
Ship compatibility-as-artifact only
Synastry readings you can run on anyone's birth data and share as an image — social value without the graph. Full connections/messaging deferred.
Keep full social scope in v1
The schema exists, but cold-start risk is high and it competes for the same build weeks.

Unblocks: whether messaging infra makes the migration cut list.

Already decided

DecisionCallWhen
Backend platformAWS-native (Aurora, Cognito, S3, API Gateway via CDK) — not self-hosted Supabase2026-07-10
AI providerDirect Google Gemini API, same models, replacing the Lovable gateway2026-07-10
Payments providerStripe (per web and mobile specs)Feb 2026 specs
Mobile codebaselumenal_expo is the active app; lumenal_mobile is legacy/emptyFeb 2026
Canonical architecture docdocs/index.html (2026-07-10) supersedes the February markdown docs2026-07-10