Skip to main content

Priority Roadmap

Status: Rewritten 2026-07-09; row statuses refreshed 2026-10-06 against the code, see Progress: September 24 to October 6. Original framing: launch the companions behind a paywall, then iterate: more tricks, more companions, better UX everywhere.

The vision in one paragraph​

Companions are the product's differentiator: a coach in your pocket for every action sport, with a body, a voice, and a memory. Kaori (snowboard) is built — 3D stage, live voice, speech-synced trick demos, unified memory. Next: ship her to users with a free-sample paywall and voice-token allocation, then iterate the companion experience (more tricks, snowy environment, outfit/board unlocks, stance-aware coaching), add the skateboarding companion, refactor Spots into a flagship-quality UX, and instrument the whole app with usage analytics so decisions stop being guesses. Surfing companion after skate + snow are strong.

Priority Matrix​

P0 — Ship the companions (now)​

The feature is merged and prod-deployed; nothing installable contains it yet. Full audit: Companions Launch.

#TaskRepoEffortStatus
1Secure the voice WebSocket (JWT on upgrade, session caps, text-length cap)Backend1–2 daysPartial: session, per-IP and message caps shipped 2026-09-30; JWT on upgrade pending
2New EAS dev-client build + physical-device validation (MToon, voice, choreography)Mobile1 dayDone (v3.2.0, v3.3.0)
3v3.2.0 TestFlight + Play internal builds (version bump, store pipeline dusted off)Mobile1 dayDone: 3.3.0 live 2026-09-21
4Monitoring: Sentry both services, kith-voice in ecosystem.config, ElevenLabs credit alarm, uptime checksBackend1–3 daysPartial: /health shipped 2026-09-25; Sentry, spend alarm, uptime checks pending
5Release notes docs/releases/v3.2.0.md when the build shipsDocs0.5 dayDone

P1 — Monetization foundation (before public launch)​

Full model: Monetization: Paywall & Tokens.

#TaskRepoEffortStatus
1COGS levers: Flash-class TTS on stage + OpenRouter prompt cachingBackend0.5 dayPending
2Token metering: user.wallet.voiceTokens, usage_events, requireVoiceTokens middleware, lazy daily grantBackend3–5 daysPartial: text and voice metering with free/Plus tiers shipped 2026-09-30 (kaoriUsage); wallet and purchases pending
3Free-sample gating: Kaori-only for free tier, locked companion states + upsell UIBackend + Mobile + Web3–5 daysPending
4Web purchases: extend Stripe payments.js with tier + token-pack prices, site paywall/wallet UIBackend + Web3–5 daysPartial: Plus checkout activates since 2026-10-06 (webhook fix, verify-session, reconcile); tiers and token packs pending
5Mobile IAP via RevenueCat (fold into the companion EAS build)Mobile + Backend5–10 daysPending
6Basic rate caps on bot-chat (interim until metering lands)Backend1 dayDone 2026-09-30

P2 — Companion iteration + the skate companion​

#TaskRepoEffortStatus
1Regular/goofy stance onboarding — early profile question for boardsports users; feeds stance-aware choreography + coachingMobile + Backend2–3 daysPending
2Better snowboard 3D design (shape, materials, deck art)Mobile1–2 daysPending
3Refine FS360 + expand the snowboard TRICKS registry (bs 180, ollie, butters, grabs…)Mobile~0.5–1 day per trickPending
4Snowy stage environment for Kaori (skybox/terrain/props; per-sport environments pattern)Mobile3–5 daysPending
5Companion models → CDN with device cache (kills the 14MB bundle tax; prerequisite for outfits + roster growth)Mobile + Backend1–2 daysPending
6Unlockables v1: boards + colorways, XP/tier/purchase unlocks collectionMobile + Backend3–5 daysPending
7Tony — skateboarding companion: VRM avatar, persona corpus (skate media), voice, skate TRICKS registry (ollie, kickflip, shuv…), street/park environmentAll2–3 weeksPending
8Analytics events on all companion surfaces (demo opens, voice minutes, trick views) via usage_eventsMobile + Backend2 daysPending

P3 — Platform quality (parallel track)​

#TaskRepoEffortStatus
1Spots UX refactor — browsing/filtering/detail flows re-designed to flagship quality; the map overlay work was the startMobile + Web1–2 weeksPending
2Full-app UX audit (web + mobile): intuitiveness/value pass on every flow, informed by analyticsAll1 week audit + fixesPending
3Usage-analytics instrumentation app-wide (PostHog exists on web; add mobile SDK + event taxonomy)Mobile + Web3–5 daysPending
4Surf companion (Rico) — after skate + snow are strongAllLaterBacklog
5Engineering-standards carryover: tests on critical paths, Zod API schemas, structured logging, API versioningAllOngoingPartial

Engineering-standards status (October 2026): Biome + Husky + CI ✅ (all four repos) · Node 20 on prod ✅ · Google Play closed alpha ✅ · Push notifications ✅ (v3.1.0) · health endpoint ✅ (2026-09-25) · unit tests ✅ in every repo (backend node:test, web and mobile Jest) · schema validators ✅ (warn mode) · rate limiting ⚠️ partial (auth, registration, bot-chat, MCP) · Sentry and graceful-shutdown verification still pending, folded into P0#4 above.


Quarterly Plan​

Q3 2026 — Launch the companions​

  • Kaori 3D stage + live voice + FS360 demos (merged PR #4)
  • Backend persona / unified memory / voice pipeline in prod (2fa8388)
  • Secure voice endpoint + monitoring
  • v3.2.0 TestFlight + Play internal (3.3.0 live 2026-09-21)
  • Token metering + free-sample paywall
  • Web purchases live; mobile IAP submitted
  • Public launch with paywall from day one

Q4 2026 — Iterate + second companion​

  • Stance onboarding (regular/goofy)
  • Snowboard trick library expansion + snowy environment
  • Unlockables v1 (boards, colorways)
  • Tony (skateboard) alpha
  • Spots UX refactor
  • Full-app UX audit + analytics instrumentation

2027 — Scale the roster​

  • Tony launch + skate trick library
  • Outfit VRM variants + per-sport environments
  • Surf companion (Rico) exploration
  • Community/social growth features informed by analytics

Metrics to Track​

Companion & business​

MetricWhy
Stage opens / DAUIs the flagship discoverable?
Voice replies per user per dayToken-tier tuning input (from usage_events)
Free → paid conversionThe paywall's whole job
Voice COGS per user per monthMust stay under tier price; alarm on drift
Demo → "Learning" trick status liftDoes coaching actually work?
D1/D7/D30 retention, companion users vs notThe differentiation hypothesis

Engineering health​

MetricCurrentTarget
Crash-free sessionsUnknown (no Sentry)>99.5%
Mean time to detect errorDays (user report)Minutes (Sentry alert)
CI pass rateGreen on all repos>95%
Test coverage~0%40% on critical paths