THE WARGAME — Calm Space & BrainLabKids under attack
*Rules of engagement: Red plays every enemy this project has — the child's neurology, the mother's trust, iOS, attackers, entropy, and the founder himself. Blue answers only with what is actually built and live as of today. No hypothetical defenses. A round is HOLD if the live system defeats the attack, BREACH if red gets through — and every breach must end with a patch order.*
---
THEATER 1 — DAY ZERO (the child attacks the design)
**Round 1.1 — Red: "The child rejects the screen outright. He wants his loops, and this isn't his loops."**
Blue: This attack was anticipated at the constitutional level. Watch mode *is* a loop — soft, repeating, predictable, demanding nothing — deliberately built as familiar territory, not a replacement for it. And the finish plan pre-declared the outcome space: *engagement, indifference, rejection — all of it is DATA, not failure.* Red cannot win a round whose every outcome was already defined as success of the experiment.
**Verdict: HOLD** — but see 1.2, where red finds the real seam.
**Round 1.2 — Red: "Wrong battlefield. The iPad itself IS his loops. You're putting the new thing on the device his brain has already assigned to YouTube. Opening Calm Space instead of his videos is a violated expectation — you'll trigger the meltdown before the gate even clears."**
Blue: This is red's best strike of the war, and the build alone cannot stop it — it's a *deployment* problem. The defense is procedural and must go into the handoff:
**BREACH → PATCH ORDER 1 (handoff protocol, costs nothing):** First contact must not compete with his loops. Either (a) a different device than his YouTube device, or (b) a moment when he isn't seeking his videos — calm, fed, rested — with Calm Space opened *before* he's near, already sitting in Watch mode, screen alive, so he encounters a *state of the room*, not a *transition away from his thing*. Never take the videos away to present Calm Space. It is offered alongside, like a new window in the same house.
**Round 1.3 — Red: "The first sound startles him. One tone at the wrong moment and the room is poisoned on day one."**
Blue: Partial defense built-in: every tone is a low-volume sine (0.035–0.05 gain), nothing sudden, and iOS won't even unlock audio until his own first touch — the room *cannot* speak first.
**BREACH (residual) → PATCH ORDER 2 (one toggle, already built):** Her dashboard has the "Soft sounds" switch. The handoff protocol sets it **OFF for first contact**. Day Zero is silent. Sound enters on a later day, introduced by her, one door at a time. The mechanism exists; the order makes it doctrine.
**Round 1.4 — Red: "Happy stimming. He loves Ripples and taps fast and joyfully — 26 touches in 8 seconds — and your auto-settle interrupts his joy with a forced transition. You built a violated expectation INTO the safety system."**
Blue: A genuinely sharp attack — the false-positive settle. Three real mitigations stand: the threshold is high (26 in 8s is frantic, not playful, for most children); the settle is not a jolt but a 2.5-second fade into the same breathing orb that lives one door away — the gentlest possible interruption in the room's own vocabulary; and every settle is *logged and visible on her dashboard*, so a false-positive pattern becomes data she and you will see within days.
**Verdict: HOLD for v1, WATCHED** — the settles counter on her dashboard is the tripwire. If Day Zero+7 shows settles during joyful play, the threshold becomes per-child tunable in V2. The wargame's job is to know where to look; now we know.
---
THEATER 2 — THE MOTHER (trust and reality under attack)
**Round 2.1 — Red: "The letter over-promises. It says the cards 'speak out loud' — but out of the box they don't; they show and chime until she records. First mismatch between letter and reality, first crack in trust."**
Blue: The crack closes itself *inside the ceremony*: the handoff has her record the eight words minutes after setting her code — before the child ever touches Talk. And the truth underneath is better than the letter's promise: the cards speak in **her** voice, not a machine's.
**Verdict: HOLD — with one sentence added to the ceremony:** when she records, tell her why: *"we removed the computer voice; the only voice in his room will be yours."* The mismatch becomes the strongest trust-builder in the handoff.
**Round 2.2 — Red: "She clears Safari data one day — a cleanup habit, a storage-full prompt — and erases his entire history, his drawings, her code, and her voice. The room forgets him overnight, and she never knew the risk."**
Blue: The zero-data architecture that wins every security round (Theater 3) pays its price here: on-device means on-device fragility. Two shields exist: Add to Home Screen gives the app its own storage silo, away from casual Safari clearing; and regular use keeps iOS from evicting it.
**BREACH (residual) → PATCH ORDER 3 (two lines in the handoff, spoken aloud):** *"Everything lives inside this iPad. Don't clear Safari's website data, and open the room from its home-screen icon."* Plus the operator's insurance: keep `calm-space.html` AirDrop-ready — if the worst happens, the room rebuilds in one minute; only the memories are mortal. True fix (export/backup button) is V2, top of list.
**Round 2.3 — Red: "The dashboard overwhelms her. Charts, jargon, one more system to manage for a mother already carrying everything."**
Blue: Read the live dashboard: "About 2 minutes so far today. No overwhelm moments — a steady day." Plain sentences, her language, and the letter's promise kept in code — the app tells her to *rest*, never to check more. The closing line printed on her own screen: a child who only ever watches is using Calm Space exactly right.
**Verdict: HOLD.**
---
THEATER 3 — SECURITY (red brings the attackers)
**Round 3.1 — Red: "The URL leaks. It's in your chat logs, your screenshots, your handover docs. And the child code 1414 is readable in the page source by anyone who views it. I have both. I'm in."**
Blue: Come in, then. What red finds inside is the war's decisive fact: **an empty room.** Every byte of the child's data — his minutes, his drawings, his preferences, her voice, her code — exists only in the localStorage of the family's own device. The server holds *nothing*. A stranger with the URL and 1414 sees a blank app with no child in it. The gate was never the vault; **the architecture is the vault** — there is no server-side prize to take. Red has breached a door into a room where nothing is kept.
**Verdict: HOLD — the zero-data bet collapses the entire remote-attack surface.** Residual exposure is knowledge-of-existence only, and the noindex/no-referrer/no-links regime keeps even that to hand-delivered leaks.
**Round 3.2 — Red: "Then I attack locally. I pick up the iPad — the codes are plaintext in localStorage, trivially readable."**
Blue: Anyone holding the unlocked iPad already holds everything the codes protect; the passcode gate was always a *child barrier and a sibling barrier*, not a cryptographic one — stated as exactly that in the deploy receipts. The device's own iOS passcode is the real local perimeter, and it belongs to the family.
**Verdict: HOLD (by honest framing, not by cryptography).** Real auth arrives with V2's server engines, where it will actually protect something.
**Round 3.3 — Red: "The recorder. You put a microphone in a child's app. I'll make headlines of it."**
Blue: Read the file — one `getUserMedia` reference in 700 lines, inside the *mother's* dashboard, hard-stopping the mic tracks on every stop, storing to the device only, behind a Permissions-Policy that grants `microphone=(self)` on this path alone while the child-facing surface *cannot request a microphone at all* — the code for it doesn't exist on that side of the gate. And the CSP shipped stricter than the public site's: `default-src 'none'`, data-URL media only, zero external requests.
**Verdict: HOLD — this is the strongest room in the fortress.**
**Round 3.4 — Red: "Supply chain. I poison a CDN you load from."**
Blue: The page loads from nowhere. Fully self-contained, zero external URLs — verified by grep at deploy, enforced by a CSP that would refuse them anyway.
**Verdict: HOLD.**
---
THEATER 4 — INFRASTRUCTURE & ENTROPY
**Round 4.1 — Red: "I don't attack. I wait. Domain lapses, Vercel account hiccups, a bad deploy overwrites the file — and one morning the icon opens to nothing, which for this child is a violated expectation of the worst kind."**
Blue: Partial standing defenses: the file is committed in git with tagged history; deploys verify by SHA against a known target; the private path is one static file that no other work touches.
**BREACH (residual) → PATCH ORDER 4 (operator's ritual, five minutes):** (a) Domain auto-renew ON with a payment method that won't expire silently — check it this week. (b) The standing deploy rule already in force — every `/private11` change ships by SHA-verified receipt — is now doctrine: *no deploy touches that path without a hash target.* (c) The AirDrop backup from Patch 3 doubles as the outage plan: the room can run from a local file on the iPad in an emergency.
**Round 4.2 — Red: "iOS updates and something breaks — the recorder, the audio, the home-screen behaviour — and nobody notices until the child does."**
Blue: The dashboard is the early-warning system — she's in it regularly, and Claude Code's receipt already ordered the one test that matters: a real recording on the real device.
**Verdict: HOLD, with the tripwire named:** after any major iOS update, she (or you) taps one Talk card and one Record button. Ten seconds. Add it to the handoff sheet.
---
THEATER 5 — THE OPERATOR (red plays Khurram against the project)
**Round 5.1 — Red: "My best weapon was never technical. It's the founder's own brilliance — the hundredth idea arriving at midnight. I don't need to break v1; I just need it never to be declared finished. I've held this project hostage for months that way."**
Blue: FINISH-PLAN.md, rule zero: *nothing enters v1; every idea goes to the V2 parking lot; completion is a date, not a feeling.* And the record shows the defense working under fire — tonight alone, three new ideas arrived (mother's rhyme recordings, per-child settle tuning, storage export) and all three landed in V2, while the only v1 changes were doctrine *fixes* by director's ruling. The wall held on the very night red attacked it hardest.
**Verdict: HOLD — as long as the director keeps honoring his own rule.** Fable's standing order: every new idea gets answered with "beautiful — V2," including Fable's own.
**Round 5.2 — Red: "Bus factor. The whole architecture lives in one man's head and one AI's context windows. Remove either and the project is archaeology."**
Blue: Substantially defended — six doctrine documents, FINISH-PLAN, UPGRADE_LOG, the letter, and the handover exist as files; the repo carries the code and the receipts.
**BREACH (residual) → PATCH ORDER 5 (one Claude Code commit):** the six Calm Space/BrainLab docs, the Regulation Doctrine, FINISH-PLAN.md, and the mother's letter all committed into the repo under `/docs` — one home, versioned, outliving every chat window. One command, permanent.
---
THEATER 6 — THE OTHER FRONT (BrainLabKids, briefly)
Red probes the public site: the Lumosity-class claims? Purged and live-verified. The camera labs? Fully on-device, grep-proven, honestly labeled. The Brain Map? Committed, deployed, staged at /map awaiting the phone test — parked *by plan*, not by drift, with gates written. Twin Paradox identity? A ruled "later," sitting in its queue.
**Verdict: HOLD across the front.** This theater's battles are scheduled, not lost.
---
THE VERDICT
**Fable 5 wins the war — and red earns five patch orders on the way out.**
The war was decided by one architectural bet placed months ago: **the server knows nothing.** Every classic attack — URL leak, code exposure, data breach, scraping, interception — walked through the door and found an empty room. The gate can fall; the vault cannot, because the vault is the family's own device. Meanwhile the doctrine defeated the subtler enemies: no variance, no arousal, no synthetic voice, no engagement loops — red could not weaponize the app against the child because everything a weapon needs was refused at the constitutional level.
Red's real victories were never technical. They were the seams where the build meets the world: *which device, which moment, which volume, which spoken warnings.* All five patches are handoff protocol and operator ritual — not one line of code. The fortress is finished; what remains is marching into it correctly.
**The five patch orders (all pre–Day Zero, all free):**
1. First contact on neutral ground — never in competition with his loops; the room already alive before he nears it.
2. Sound OFF for Day Zero; her hand turns it on, later, one door at a time.
3. Two sentences to her, aloud: it all lives in this iPad; use the icon; never clear Safari data. AirDrop backup kept.
4. Domain auto-renew verified; SHA-receipt rule made permanent for /private11; local-file outage plan.
5. All doctrine documents committed to the repo — the project must outlive every head and every chat.
*End of wargame. The room stands. Bring the child.*