RWF — Features & Current Progress
27 Aug 2026 · the complete writeup. Live version with rendered components: https://rwf.qalarc.com/system
Where the build stands
Phase 0 (due diligence) — complete. Prototype — feature-complete and live. What began as an email evaluation is now a running system: a tested game engine, two chat bots, a phone-first app, an ops console, an AI layer, and push-to-deploy hosting at rwf.qalarc.com — 90+ tests green, CI-gated.
| Metric | Value |
|---|---|
| Tests | 90+ green (engine 44 · bots 22 · API 24) — run on every push |
| Public pages | 9 — site, demo, app, system, hub, debug, connect, slack, state API |
| Elements catalogued | 36 across families A–G |
| Components | 16 design-system primitives (see /system) |
| Deploy | GitHub push → Cloudflare Pages in ~20s |
| AI | GLM-5.3 via server-side proxy (site guide, app narrator, bot taunts) |
Features — by family
A · Core loop — BUILT
300-format match (any reps, any order, first to raw target closes; highest effort-adjusted score wins) · tier handicap v1 (couch ×1.5 → athlete ×0.85) · closure bonus (+15) · charity pot ledger (winner directs, never receives) · AI taunt engine with canned fallback. %HRR handicap v2 is engine-ready (blend math implemented + tested) and activates when heart-rate straps land.
B · Retention arc — BUILT
4-week seasons (3/2/1 points, MVP +1) · champion crowning · A/B division relegation-promotion · streaks with charity forgiveness ($2, once/season) · comeback ×1.2 (>30% behind, once/match — mechanically enforces "everyone has a shot") · baseline learning (HR drift ≤10%/update; volume-based tier correction — anti-sandbagging).
C · Social & viral — MOSTLY BUILT
Branded result cards (1200×675 SVG from bots, PNG export from app) · spectator mode (watch <code>) · crew-vs-crew challenges · drop-cam clips and public web ladder still ideas.
D · Corporate — BUILT (seeded)
Hub console corporate tab: org leagues, employer-funded pots ("no employee money handled"), aggregate-only wellbeing dashboard with k≥5 suppression (Sahha-EAP playbook), renewal outlook. Awaiting real org data.
E · Verification — P1 BUILT
In-browser MoveNet camera counting (pushups/squats, angle-threshold state machine, on-device only) + Web Bluetooth HR straps (GATT 0x180D, Karvonen %HRR per-set) are LIVE in the app — entries log with verified:true and avgHrrPct, which the engine already scores. P2 HealthKit/Health Connect and P3 WHOOP/Garmin cloud cross-check remain phased (docs/05).
F · Wilder cards — IDEAS
Referee review · physical champion belts · radio mode (drum-track rep cues) · annual charity championship.
G · Second wave — FIRST FOUR BUILT (27 Aug)
LIVE: rematch button (one-tap run-it-back, roster carried) · Monday digest (matches, margins, MVPs, pot, rivalry callout, AI one-liner) · photo finish (≤5% gap → dramatic card + coral SVG variant) · nemesis (head-to-head rival detection). Still proposed: personal records · ghost race · guest slot · charity all-time ladder · roast-tier setting · adaptive equivalents · warm-up predictions.
Systems
- game-core — pure TS engine, 44 tests, 100% branch cover
- bot-core + bots — one command grammar, WhatsApp (Qalarc Hub) + Slack<br>(Bolt Socket Mode), sim harnesses, result-card generator
- app — phone-first PWA (onboard → crew → match → seasons), polished<br>(tier cards, medals, confetti, sticky log bar), 35 browser checks
- hub console — ops + corporate tabs, live /api/state polling
- site — Three.js showcase, interactive handicap demo, AI guide
- AI layer — /api/ai proxy (local + Pages Function), key server-side
- apps/api — unified REST backend (crews/matches/seasons), 24 tests —<br>the MVP foundation that replaces localStorage + bot file state
Progress against plan (docs/02)
- Phase 0 ✅ (research, analysis, plan, email, call prep)
- MVP phase: engine ✅ · bots ✅ · app ✅ · web ✅ · handicap v1 ✅ —<br>remaining for MVP proper: wire app↔API↔bots (mechanical), auth, first real<br>crews
- Pilot gates: WhatsApp Cloud API verification, Stripe pots, Slack directory,<br>legal opinion (docs/15 blockers register)
Top blockers (docs/15)
- 🟥 Slack app needs 5-min human creation → permanent install link
- 🟥 WhatsApp Cloud API group support unverified — shapes pilot architecture
- 🟥 Charity-wager legal opinion before real money
- 🟧 Always-on bots — minirig kit ready, one SSH command
- 🟧 App ↔ API ↔ bots state unification
Next session priorities
- Wire the app to apps/api (kill the localStorage/file split)
- Activate camera verification lane (MoveNet)
- Install hosting kit on minirig
- G-family sign-off → build rematch + Monday digest
- Send the email (demo-first framing), take the call, fill the divergence log