Grand Diomande Research · Full HTML Reader
Meaningful Power — Roadmap
**Document ID:** MFP-ROAD-001 **Version:** 1.0.0 **Last Updated:** 2026-01-15 **Reference:** `.project_control/checklists/IMPLEMENTATION_CHECKLIST.md`
Full Public Reader
Meaningful Power — Roadmap
Document ID: MFP-ROAD-001
Version: 1.0.0
Last Updated: 2026-01-15
Reference: `.project_control/checklists/IMPLEMENTATION_CHECKLIST.md`
---
Current State
| Metric | Value |
|---|---|
| Overall Completion | ~45 |
| Status | PAUSED (migration) |
| Primary Blocker | Platform decision |
| Active Development | Expo scaffold |
---
Phase Overview
Phase 0: Foundation (COMPLETE)
- [x] Project Charter (PC-001)
- [x] System Glossary (GL-001)
- [x] Assumptions & Invariants (AI-001)
- [x] Implementation Guide (IG-001)
- [x] Implementation Checklist (CL-001)
- [x] Source of Truth Directory (ST-001)
Phase 1: Data Layer (COMPLETE)
- [x] cards.json schema design
- [x] CardDataLoader implementation
- [x] CardAssetBridge implementation
- [x] CardAssets model
- [x] Asset preparation script
Phase 2: Card Display (75
- [x] Card model
- [x] Card view component
- [x] Card flip animation
- [ ] Card zoom/detail view
- [ ] GIF playback optimization
Phase 3: Grimoire (Collection) (50
- [x] Collection data structure
- [x] Grid layout
- [ ] Filtering by theme
- [ ] Filtering by chapter
- [ ] Search functionality
- [ ] Unlock status display
Phase 4: Deck Builder (25
- [x] Deck model
- [ ] Deck validation rules
- [ ] Drag-and-drop interface
- [ ] Theme synergy calculator
- [ ] Save/load decks
Phase 5: Battle System (10
- [x] Battle state machine design
- [ ] Turn phases implementation
- [ ] AI opponent
- [ ] Victory condition checks
- [ ] Battle animations
- [ ] Results screen
Phase 6: QR Unlocking (0
- [ ] Camera permission flow
- [ ] QR scanner implementation
- [ ] Unlock validation
- [ ] Server-side verification
- [ ] Duplicate prevention
Phase 7: Cross-Platform Migration (5
- [x] Expo project scaffold
- [ ] TypeScript models
- [ ] React Native components
- [ ] Navigation setup
- [ ] State management
- [ ] Supabase integration
---
Migration Strategy
iOS → Expo
Phase A: Core Models
├── Card.swift → Card.ts
├── Theme enum → Theme.ts
└── cards.json → shared
Phase B: Services
├── CardDataLoader → CardService.ts
└── Supabase client setup
Phase C: Views
├── CardView → CardComponent.tsx
├── Grimoire → CollectionScreen.tsx
├── DeckBuilder → DeckBuilderScreen.tsx
└── Battle → BattleScreen.tsx
Phase D: Platform Features
├── QR Scanner (expo-camera)
└── Haptics (expo-haptics)---
Key Milestones
| Milestone | Target | Status |
|---|---|---|
| Foundation Complete | Done | COMPLETE |
| Card Display Working | Done | COMPLETE |
| Grimoire MVP | TBD | IN PROGRESS |
| Expo Migration | TBD | STARTED |
| Battle System MVP | TBD | NOT STARTED |
| App Store Submission | TBD | NOT STARTED |
---
Technical Debt
| Item | Priority | Effort |
|---|---|---|
| Complete Expo migration | HIGH | 2-3 weeks |
| GIF optimization | MEDIUM | 2 days |
| Offline data persistence | MEDIUM | 1 week |
| Test coverage | LOW | 1 week |
| Asset size optimization | LOW | 3 days |
---
Decision Log
| Date | Decision | Rationale |
|---|---|---|
| 2024-12 | Start with iOS/SwiftUI | Fastest to MVP |
| 2025-Q1 | Migrate to Expo | Cross-platform reach |
| TBD | Defer multiplayer | Complexity, scope |
| TBD | Defer IAP | Regulatory, scope |
---
Invariants (Never Change)
From Project Charter:
| ID | Invariant |
|---|---|
| INV-001 | Card count = 45 (base set) |
| INV-002 | Chapter count = 15 |
| INV-003 | Cards per chapter = 3 |
| INV-004 | Theme count = 12 |
| INV-005 | Victory conditions = 3 |
| INV-006 | No real-money gameplay advantage |
---
Success Criteria
Technical (from Charter)
| Metric | Target |
|---|---|
| Launch to playable | < 3 seconds |
| Card load time | < 500ms |
| Frame rate | 60 FPS |
| Crash-free rate | > 99.5 |
| App size | < 150 MB |
Binary Acceptance
- [ ] All 45 cards display correctly
- [ ] Battle system completes full game loop
- [ ] All 3 victory conditions achievable
- [ ] Deck builder enforces validation rules
- [ ] App runs offline
- [ ] QR scanner unlocks cards
---
Next Actions
1. Complete Expo scaffold — navigation, state management
2. Port Card model — TypeScript version
3. Port CardService — data loading in RN
4. Build CardComponent — React Native card display
5. Test on both platforms — iOS and Android
---
Reference Documents
| Document | Path |
|---|---|
| Implementation Checklist | `.project_control/checklists/IMPLEMENTATION_CHECKLIST.md` |
| Implementation Guide | `.project_control/implementation_guide/IMPLEMENTATION_GUIDE.md` |
| State Snapshot | `.project_control/state_snapshots/SNAPSHOT_001.md` |
---
Change Log
| Version | Date | Changes |
|---|---|---|
| 1.0.0 | 2026-01-15 | Initial creation |
Promotion Decision
Attach run IDs, datasets, metrics, and reproduction commands.
Source Anchor
spine/Meaning Full Power/ROADMAP.md
Detected Structure
Method · Evaluation · Code Anchors · Architecture