This garden has six sections and each now has a journey piece: the game, the comic, the forge, Ember, the estate and knowledge. Each tells its own story with its own numbers. This piece is the one above them: what the whole was trying to become, which architectures the parts passed through on the way, and the shape they share today. The person whose yes everything waits on is the playtester throughout.
Diagram: read it as four months in four views — one laptop in June, services in August, one listener in September, one queue in October; the components are the house as it stands and the guided views show which of them existed when.
The goal
Nothing here began as an architecture. In June 2026 there was a comic generator inside a node-graph image tool, a family role-playing game in a game engine, and a wiki an AI maintained. They shared a laptop and nothing else. The goal that eventually joined them was written down only in October, and it reads as four sentences. Everything that runs in the house is reproducible from a repository. Everything that works for the house is asked for, approved and reported in one place, by one assistant. Everything the house produces, a character, a page, a build, a deploy, is judged by a gate in code before a person looks at it, and the person’s look is what decides. And everything learned on the way is written where the next agent and the next reader will find it.
What we tested, and what each phase measured
June: the graph. The first comic pipeline put control flow, layout and lettering into a dataflow graph, and its failure log read as a catalogue of things a graph is bad at: delimiters that crashed a regex, a canvas that stretched, a face detector that divided by zero. Within a week the orchestration moved into a thin program and the graph kept one job, painting one panel. That one decision, orchestrate in code and leave the model a stateless tool, became the pattern for every pipeline after it: the comic’s Director, the forge’s twenty-one-step recipe, the game’s gate runner, and eventually the assistant’s queue.
August: services and a box outside. Three projects were generating character art and importing each other’s painters by path, two of them loading their own copy of a four-billion-parameter image model while a resident service already held one warm. The forge was split out to hold the shared things behind one HTTP contract, and the painter became a service with CUDA and Apple backends. The same month the estate got its first repository, for files that existed in exactly one place, and over three evenings a small box outside the house was built from code, rebuilt four times, and took the tailnet’s control plane out of the network it controlled. A second vault was created for people, frozen on write, beside the one the AI rewrites.
September: one listener and one origin. The assistant got a second account so a code worker could speak in its own voice, and a request addressed to it went nowhere while its presence dot stayed green. The fix generalised: Ember is the one listener and every other voice is a puppet; a finished task is a card with a diff, tests and a branch; one reaction merges, one declines, a third merges and asks to deploy; only the playtester approves. On 18 September every repository moved to a self-hosted forge as the only origin and work began arriving as pull requests. The public garden went live the same month, behind a gate that admits nothing by default and scans what the renderer produced, and its posts moved out of the AI wiki into the human vault when the audience rule was finally written.
October: one queue. With agents working all day, the cost became measurable and was measured: 4,377 calls in one day, 883 million cache-read tokens, 75 million cache-write, and 83 % of the writes caused by waits that outlived the cache. A level-set on 15 October counted eleven duplicated mechanisms, three ways to hold a GPU, capability names in four places, and reduced the whole orchestration layer to one sentence: Ember holds one queue; a box is one worker with one name; a worker has capabilities; a capability is a module, installed, health-checked, advertised and consumed by exactly one task kind. Every repository gained a goals file that states each goal, its measure, and whether it is coded, merged, deployed or verified. The comic turned to face the game and painted its fourth book from the game’s own rendered plates; the forge found that all 49 face presets had carried the same stylisation since September because every round had been judged against the last build and never against a human.
Where we are
One physical server in a cupboard, one box outside, two workstations, one tailnet that makes any device on it in-network. One assistant in the family rooms who is the only writer to one queue, with a ledger of packages, deploys and heartbeats, and an admin console whose home view is what waits on the playtester. Workers that enrol with a ticket, advertise what they consent to and can do, and take tasks by capability: redeploys, speech, voice samples, development work, and now image painting through the same queue. Three creative pipelines, the forge, the comic and the game, that call the painter through one contract and record evidence into the human vault. Two vaults with opposite rules, a search over both and over every repository’s docs and issues, and a garden of 21 posts that passes a scanner before any byte leaves.
A documentation true-up this week opened sixteen pull requests to bring READMEs and goals back in line with what is live, and found the recurring gap in its own words: work that is merged and not deployed, written as if it were done. The rule now is that every report says which of the four it is.
What is next
Deploy the merged work and verify it from the box, in every repository, and make the goals files say so. Turn every named defect into a code gate that fails before any comparison is run, and give the faces a neutral adult anchor to be judged against. Close the fourth comic once the playtester picks the print strip. Stand up the object store, migrate the chat server, install the backup server, put the sign-in in front of the family site and the comic. Keep the local-only path usable at any time. And keep these journeys current, because a living document is a claim about now and this one was written on 20 October 2026.
Architectures we tried
Kept: orchestration in code over stateless models; a resident painter behind one contract; one listener with several voices; one queue with capability matching and modules; one forge as origin with mirrors it pushes itself; infrastructure as code for anything outside the house; two vaults, a default-deny gate, a search that answers with links; small models for small work and a coordinator that restarts daily. Dropped: control flow in a node graph; a second listener; resident per-machine adapters; three GPU locks; a bare git hub and a second forge; six backup copies; a twenty-day session and waits longer than the cache; rules as prose where a runner could enforce them. Still open: configuration management for the boxes inside the house, strand hair against cards, and whether the studio for making comics stays its own application or joins the admin console.