Read this, and either approve it or tell me what to change. Nothing has been built. Nothing is deployed. This is the plan only.
Right now the family app is a website you open in a browser. At the end of this it is an app with its own icon on the home screen — tap it, no address bar, Skippy inside it. And your phone can buzz, which nothing in this whole system can do today.
That last part is the real prize. Today the app's own updates list is the only place anything arrives, which means you have to go and look. That changes the day this ships.
You said the new design goes on before it gets converted. That is how this is written. Converting first would mean wrapping up a half-finished look and shipping it to a phone, then changing it underneath everyone.
The app looks like the design Chantelle picked — one big number on a block of colour at the top of each screen, thin lines instead of boxes, nothing rounded, nothing animated. Every button stays exactly where it is. Nothing you tap moves.
It then stops being a website. Own icon, one tap, no address bar. Skippy comes with it, and so does the kids' screen.
Both phones buzz, each with their own things. Yours never reach her lock screen and hers never reach yours. Her phone asks her first, on her own device — you authorised the capability, she still gets to say no, and a no from her is final.
No new passwords, and neither of yours changes. One small thing does: the app still accepts an old shared sign-in from before you each had your own. That gets switched off. Anyone whose phone is still holding it is asked once for the password they already have.
You caught this: Skippy already moved to the cloud, so notifications follow. The plan originally put them on the Mac at home — only because the list of phones happened to sit there in a file. That was inheritance, not a reason. With your Mac off, the buzzing still works.
Re-sequenced 8 August on your call: the code gets mapped and straightened before anything is drawn, and the two sides sign one plan before anyone builds.
Write down what this app actually is: what draws each screen, where every number on it comes from, which screens quietly share the same machinery, and what the app is really made of once it's built. Nobody has ever done this.
It's the reason both previous attempts failed, and the reason the automatic checks reported everything fine while looking at nothing. A check aimed at a guess is what you write when nobody knows the shape of the thing being checked.
What's holding it up: nothing. It's pure reading and it waits on no one.Where the app does the same job three different ways, it becomes one way. Where a colour is defined in four places, it becomes one.
And the test that decides it: take a real change from the design and try to make it. If the only way is to pile a new rule on top of an old one, the structure is wrong — and the structure gets fixed, not the look. That's exactly what went wrong twice.
What's holding it up: the map. You can't consolidate duplicates before you've found them.Every automatic check gets pointed at what the build actually produced rather than at a filename, and each one ships with a deliberately broken copy so it has to go red in the same run it goes green.
What's holding it up: the straightened code. One moment needs you and Chantelle both reachable, for the sign-in change.Engineering hands over the map and the straightened structure. The design side draws against what is actually there — the real pieces, the real states, the real number of rows, including what each screen looks like when it's empty. They go back and forth until nothing is unaccounted for.
Going round again here is cheap. Going round again during the build is what produced two reverted redesigns. The drawing supplies the look; the map supplies what there is to draw.
What's holding it up: the three steps above, and Chantelle — she owns the design and hers is one of the two signatures.Rebuild each screen against the agreed plan, ship it, look at it, move on. The words on screen and what every number means are frozen — a machine compares them before and after and rejects the work if anything moved.
What's holding it up: the signed plan.The full sweep across all four people's screens — yours is the only fully filled-in one, so every check ever run has looked at the one screen where the empty-data problem doesn't appear. Then the native shell, and the notifications.
What's holding it up: the redesign, and one sitting at your Mac with Xcode. That's the only moment in the whole plan that genuinely needs you.There are no hours, days or weeks anywhere in this plan, on purpose — you've corrected that twice. Instead every step says what is holding it up, and that's only ever one of four things: a decision only you can make, a credential or terms nobody has read, a sitting at your Mac nobody can do for you, or another step finishing first.
Steps one and two are held up by nothing at all. They are unblocked, and they are just work.
This is the most valuable part of the plan, and it's the part that usually gets skipped: naming the work that a later step would throw away.
| Already built | What that means |
|---|---|
| The native shell | Built on 31 July for this exact app. Named, configured, icons drawn. It has never been opened in Xcode — that's your one sitting. |
| Skippy inside the app | Already there, already answering, already wired to the grounded engine. Not being rebuilt. |
| The privacy boundary | Already enforced at the front door, per person, on every request. The conversion is designed specifically so this keeps working untouched. |
| The design | Chantelle chose it on 5 August, you confirmed it on the 6th. It is the family app's own look, not the business branding — so the business rebrand doesn't hold this up. |
✓ The app's permanent name
Live Free Love Free. One note, not a question: the name and its hidden identifier lock permanently at the first upload to Apple, so whoever does that upload confirms them first.
✓ Whose phone is allowed to buzz
Both, with separate lists. I read "both buzz" as separate lists rather than asking again — the alternative puts a card about your private material on her lock screen, which was never on the table.
✓ Android
After iPhone, and not scoped yet. It sits in the plan the way desktop does: named, waiting, costing nothing now.
The design itself is settled and is not reopened by this plan. What the creative director is walking into is step two, and there are four questions sitting with Chantelle that belong to design rather than to engineering:
None of these hold the build up. A screen whose question is still open gets built to how it behaves today and goes live with everything else; only the disputed piece gets revisited when she answers.
The drawings contain invented numbers — a weight of 84.2 against a real 209.8, a readiness of 81 against a real 77. The drawing supplies the structure, the order and the proportion. The live data supplies every single value. A builder matching the drawing copies the number, and that has happened here before.
Nine open items are written into the plan itself rather than hidden. None is a contradiction — each is a call for whoever builds that part. The two worth knowing about:
The full specification was handed, eight separate times, to a reader who knew nothing except where the file was — no conversation, no context, no previous findings — and asked one question: what would you build from this? Seven rounds of fixes went back in.
That's what caught, before a single line of code existed: