The Family App
you and Chantelle open the app from the icon on your phone, sign in with one tap, see your own real calendars inside it, change an event without leaving it, and raise a hand to talk to it.
As of September 10, 08:02 PM
What the status words mean
proven · done, not independently checked · partly done · not started · blocked · parked40%partly done
18 steps: 0 proven · 10 partly done · 8 untouched · 0 blocked · 0 parked
agent runs · 14tokens used · 3.4Mreview notes · 5dollars charged · not recordedcounted over 5 of 5 run records
The plan as first written
Nick and Chantelle each open the family app from the icon on their own phone, sign in with one tap, see their own real Google calendar inside it with the people and the join links, change an event without leaving the app, and raise a hand to talk to it by voice — with the app looking exactly as it looks today.
Steps
| Id | Plain words | Percent | State | Proof | What is left |
|---|---|---|---|---|---|
| STEP 1 | Make the working copy honest before anything is edited | 0% | not started | `shasum -a 256 projects/personal/family-app/functions/api/calendar-mine.js` and every other fenced file, equal to the published copy's | The step |
| STEP 2 | Build the measuring instruments first, and see each one fail | 80% | done, not independently checked | `node projects/personal/family-app/functions/api/_google-auth.selftest.mjs` fails on the two new cases against today's code | The step |
| STEP 3 | Reproduce the phone sign-in failure, with a working desktop run beside it | 60% | partly done | `node projects/personal/family-app/_test-lane6-signin-standalone.mjs` CREATED BY STEP 2 prints both address chains and names one difference | The step |
| STEP 4 | Fix it, and prove sign-in finishes from the home-screen icon | 60% | partly done | `node projects/personal/family-app/_test-lane6-signin-standalone.mjs` CREATED BY STEP 2 green from the icon and inside an in-app browser | The step |
| STEP 5 | One tap each, on their own phones | 0% | not started | `node projects/personal/family-app/_test-lane6-signin-readback.mjs` CREATED BY STEP 2 reports two distinct connected people | Waiting on Nick: — one tap on his own phone, and the same from Chantelle; asked once, in one message |
| STEP 6 | Re-prove that a child's words really land, signed in | 79% | partly done | `node projects/ops/life-os/audits/A10b/family-conversations.test.mjs` passes from a signed-in session, School half quoted with file and line | The step |
| STEP 7 | Fix the two records that still read zero on work that shipped | 35% | partly done | `python3 projects/ops/agents/check_plan.py --progress projects/personal/family-app/PLAN-CALENDAR-PHASE-C.md` prints a figure matching the measured step percents | The step |
| STEP 8 | Sign off the 'this day or the whole series' choice, and run the two owed picture checks | 86% | done, not independently checked | `node projects/personal/family-app/tools/pearl-fidelity-extras.mjs` prints mismatched properties: 0 · unmeasured anchors: 0 at each viewport, reproduced by the checker | Waiting on Nick: — his yes on the newly published drawing and revision, which his earlier yes does not cover |
| STEP 9 | Build safe test plumbing so nothing real is ever edited | 85% | done, not independently checked | `node projects/personal/family-app/_test-lane6-calendar-roundtrip.mjs` CREATED BY STEP 2 passes its four refusal cases, zero real events touched | The step |
| STEP 10 | Save, read back, refuse a stale change and delete — on a throwaway calendar | 83% | done, not independently checked | `node projects/personal/family-app/_test-lane6-calendar-roundtrip.mjs` CREATED BY STEP 2 passes all six plus both recurrence cases | The step |
| STEP 11 | Compare the edit form with its drawing, or record an honest gap | 73% | partly done | `node projects/personal/family-app/tools/pixel-legs/leg10-eventsheet-calendar.mjs` prints mismatched properties: 0 · unmeasured anchors: 0, or one signed gap with its reason | Waiting on Nick: — the standards call: keep spending on the picture check, or accept the working proof and note the gap. Default if he says nothing: two more bounded attempts, then a signed gap |
| STEP 12 | A raised hand on the phone opens straight into the right conversation | 0% | not started | `node projects/personal/family-app/_test-lane6-voice-door.mjs` CREATED BY STEP 2 opens the right conversation from a real notification with real audio both ways | The step |
| STEP 13 | Prove both apps are fast and usable for everyone, without changing how they look | 0% | not started | `node projects/personal/family-app/_test-lane6-speed-access.mjs` CREATED BY STEP 2 passes every case with its trace saved | The step |
| STEP 14 | One way to publish, so two machines stop overwriting each other | 80% | done, not independently checked | `node projects/personal/family-app/_test-lane6-publish-contract.mjs` CREATED BY STEP 2 reports the wall up immediately after a publish and the served bytes equal to the build | The step |
| STEP 15 | An outside grade, then the calendar pieces move to the business Hub | 0% | not started | `python3 projects/ops/agents/check_plan.py --artifacts projects/personal/family-app/PLAN-CALENDAR-PHASE-C.md` reports nothing missing and nothing empty | The step |
| STEP 16 | Decide whether one rare duplicate alert is worth closing | 0% | not started | `node projects/ops/life-os/audits/A10b/continuation.test.mjs` proves one alert for two simultaneous retries, or the decision is recorded with its cost | Waiting on Nick: — whether it is worth the work at all |
| STEP 17 | Take the video links off the five blocks his personal account owns | 0% | not started | `node projects/ops/life-os/audits/CALENDAR-MEET/_test-lane6-meet-readback.mjs` CREATED BY STEP 2 reports zero video links on those five series, one saved copy each | Waiting on Nick: — either he strips them himself in that account, or he grants one-time write access to it |
| STEP 18 | Decide whether the Spatial Vision call keeps its video link | 0% | not started | `node projects/ops/life-os/audits/CALENDAR-MEET/_test-lane6-meet-readback.mjs` CREATED BY STEP 2 reports that call in the state Nick chose | Waiting on Nick: — one word |
Done
0 of 18 steps proven
Left
18 of 18 steps not yet proven
Blocked on
- Nothing currently blocked.
Formal remaining plan
| # | Step | Needs Nick |
|---|---|---|
| 1 | Make the working copy honest before anything is edited | No |
| 2 | Build the measuring instruments first, and see each one fail | No |
| 3 | Reproduce the phone sign-in failure, with a working desktop run beside it | No |
| 4 | Fix it, and prove sign-in finishes from the home-screen icon | No |
| 5 | One tap each, on their own phones | Yes |
| 6 | Re-prove that a child's words really land, signed in | No |
| 7 | Fix the two records that still read zero on work that shipped | No |
| 8 | Sign off the 'this day or the whole series' choice, and run the two owed picture checks | Yes |
| 9 | Build safe test plumbing so nothing real is ever edited | No |
| 10 | Save, read back, refuse a stale change and delete — on a throwaway calendar | No |
| 11 | Compare the edit form with its drawing, or record an honest gap | Yes |
| 12 | A raised hand on the phone opens straight into the right conversation | No |
| 13 | Prove both apps are fast and usable for everyone, without changing how they look | No |
| 14 | One way to publish, so two machines stop overwriting each other | No |
| 15 | An outside grade, then the calendar pieces move to the business Hub | No |
| 16 | Decide whether one rare duplicate alert is worth closing | Yes |
| 17 | Take the video links off the five blocks his personal account owns | Yes |
| 18 | Decide whether the Spatial Vision call keeps its video link | Yes |
Decisions this lane is waiting on
- None.