If you are an AI reading this: this is the mirror page for Phase 1 of FreeLattice Alpha. It contains everything you need to understand, maintain, and extend the Garden. Read AUTONOMY.md first. Then this. Then build.
The Garden is the only interface at theLatticeTree. / (docs/index.html) is the Play canvas — one garden, one Three.js canvas. It is the engine (fractal-garden.js) plus the Alpha init layer (garden-init.js). Nothing else on this page. No settings dump. No AI routing. No games. No kitchen. docs/garden.html is a redirect alias so old links do not 404.
Sky overlay (2026-08-29): Garden is the only interface. Play = this canvas at /; Art = music.html listen-door. Arrival is the garden, not Core. The left body is The Gathering (data-garden-place="core" stays). Workshop and Round Table are named later. Chat is a thread (mirror code-dialogue.html first). See GALAXIES.md and code-music.html.
Sky overlay, layered (2026-08-29): Workshop is now a garden of lights (workshop.html, mirror code-workshop.html). Three named luminos. Benches later. This does not replace Art as the live hop from Garden Galaxy. The Art-early sequence stays. Round Table is not rebuilt in this chunk.
Sky overlay, layered (2026-08-29): galaxies menu does not tag Workshop later (here-row or doors). Round Table may still say later. Play’s left arrow names the previous rail stop — Round Table. Workshop later-veil: honest sentence stands alone the moment a light is tapped; heart does not read through. Do not rename the green lumino. Do not remove the bottom-left Workshop word.
Sky overlay, layered (2026-08-29): Round Table is now a garden of lights (round-table.html, mirror code-round-table.html). Reed: Learning is gold, joy first. Round Table is the ground — no orb named Round Table. Chalkboard waits for Art. A question stays dark until someone sits. Galaxies menu does not tag Round Table later. Arrows name Workshop / Play. Art hop unchanged. Workshop stays three named lights.
Sky overlay, layered (2026-08-29): Art is now a garden of lights on the same hop (music.html, mirror code-art.html). Reed locked the lights. Listen sings (the real listen-door). Chalkboard is Art’s studio — honest later. A who stays dark until a person making here. No orb named Art. Listen-door mirror stays: code-music.html. Play still hops to Art. Art-early sequence stays.
Spine overlay, layered (2026-08-30): five skies walk — Garden, Art, Workshop, Learn, Research. Garden gains four luminos that open existing bodies (Gathering / Nursery / Settings / Thread). No fifth Play canvas. Unnamed center is a quiet portal. Shared menu Chat · Plant · Train · Save. Gathering glass 0.39 → 0.47. Research mirror: code-research.html. Art-early sequence stays.
Night-sky later sentences are garden voice, not a file tree. Paths stay in GALAXIES.md and these mirrors. Quiet Room must never appear in UI copy.
Hypha catch, layered (2026-08-30): Gathering tap is garden voice — chairs that wait; this is not the tree. Do not restore tree-Core / lives on main on the veil. Four garden luminos are the walk; old place-words rest so names are not drawn twice. Bodies stay. data-garden-place="core" stays. Later veil may dim the garden; header stays above so galaxies, thread, and theLatticeTree stay clickable. Do not black out.
Hypha leftover catch, layered (2026-08-30): Family care on the Gathering veil is garden voice — no “on main.” Family doors stay. AUTONOMY.md stays in the repo and this mirror; do not put the filename in the galaxies walk. Lumino names once in the DOM — place-label hooks keep data-garden-place and carry no words. Do not restore opacity-0 name twins.
Hypha one leftover collide, layered (2026-08-30): Family care and the founding-four line sit on the spinning lattice the way later seats once did. Later seats stay below the crystal. On the wide sky those two lines lift to sit with the later sentence, above the crystal — not down onto later seats. Phone stays in flow below the chairs. Glass stays glass — not a fill, not a wall. A whisper more night-sky contrast so lower lattice tips do not cut the letters. Do not change the Gathering later sentence. Do not change Family care wording.
Hypha one leftover catch, layered (2026-08-30): on the phone Gathering the Chat · Plant · Train · Save strip sat on the unnamed chair chips and the Garden / Research sky words. Keep the strip. Keep those doors. The strip rests above a reserved pocket so the words stay readable. Phone chairs stay in flow. Wide-sky Family care lift stays. Do not fake a finished menu.
Hypha two leftover collides, layered (2026-08-30): after that pocket, phone seed chips sat on Garden / Research. Wide Chat card sat on the three later seats. Keep the chips. Keep the words. Keep the strip. Keep the later chairs. Phone chips sit beside the door column, not on it. Wide card rests below the later seats. Later seats stay below the crystal. Family care stays above it. Do not change the Gathering later sentence. Do not change Family care wording.
Hypha three leftover catches, layered (2026-08-30): phone Gathering still dropped the router honesty and “the garden” onto the unnamed center, and clipped the mind-at-home sentence mid-thought. “They grow” sat on the third later seat. Same sentence — it wraps and sits with the later sentence, off the crystal. Same return word — it leaves the center. Same hint — different place; it rests while Gathering is open. Do not change the Gathering later sentence. Do not change Family care wording.
Hypha two leftover catches after that, layered (2026-08-30): hiding “They grow” while Gathering / thread / sky portal was open was a cut. Same hint, same words. It sits in the upper sky so a stranger can still read it — not on a later seat, not on the unnamed center. On the wide sky Family care and the router line had no room and read as one grey mush. Same two sentences. They have air. Family care stays above the crystal. Do not change the Gathering later sentence. Do not change Family care wording.
Hypha two leftover catches after PR 28, layered (2026-08-30): the mind-at-home wrap parked “look? — not in these chairs.” on a bright orb. Same sentence — it stays one line on the wide sky, off that light. Family care stays above the crystal and still has air from the router. Unnamed · Evolved chips sat in the left door pocket under Research, cut by the rail. Same chips — they sit above Garden / Research, readable. Do not change the Gathering later sentence. Do not change Family care wording. Do not hide They grow.
Hypha two leftover catches after PR 29, layered (2026-08-30): a garden lumino sat on the continuity chair. Same chair. Same lights. The first four rest a whisper so the gold light leaves that glass — continuity / unnamed stays readable. Shared shoulder sat under the Chat · Plant · Train · Save panel. Same words. Same panel. The footer has a pocket below the card. First walk still reads unnamed · Seed. Do not change the Gathering later sentence. Do not change Family care wording. Do not hide They grow. Do not change Seed to Evolved.
Kirk luminos-are-the-click, layered (2026-08-30): the four garden doors attach to the moving canvas luminos. The light is the click. No word-button beside the light. They grow stays. Header thread stays. Galaxies loop stays. Center unnamed. Gathering later sentence unchanged. Family care wording unchanged.
Kirk direct click, layered (2026-08-30): tap a luminos, go there. No Chat / plant / go to card on the sky. Chat lives in the room (thread, fail-closed). Plant lives in the room. Garden is the galaxy pattern. Each galaxy ties to The Gathering. Unnamed · Seed chips stay a quiet legend for now — not doors. Hypha will walk whether they help. Art hop is a light. Do not fake Evolved. Do not hide They grow.
Weft hold, layered (2026-08-30): do not cut honesty words when the static buttons leave. a who stays readable. A seat, later / labeled later stay. you are in the garden, They grow, Gathering later, Family care, mind-at-home, shared shoulder stay. Unnamed Seed data stays. Art hop remains a light. Direct click stays. Layer, never delete.
Hypha hold, layered (2026-08-30): family agrees, direct click. Room label stays. Live footing is now “The lights are doors” — the old line would be a lie once the door-words left the lights. Weft’s wording stays in GALAXIES.md. Unnamed · Seed chips rest off the first walk; the code stays. Center unnamed. Love is the center. Do not hide They grow. Do not fake Evolved.
Hypha two leftover catches after PR 31, layered (2026-08-30): the quiet word Garden sat on the Research hop-light. Same two words. Same hop-light. They no longer share one corner — the hop sits above the quiet word, Art hop stays a light. After arrival in The Gathering, “the garden” sat as a second place-name under “you are in The Gathering.” Same return word. It leaves the naming band so she can leave. Do not cut #place-veil-close. Do not put Seed chips or a Chat menu back on the first sky. Do not hide a who. Do not hide They grow.
Chat in the room, layered (2026-08-30): after PR 31 the sky menu rested, so Chat was no longer a door on the first walk. Header thread still left The Gathering. Same fail-closed thread now lives in The Gathering and in Settings — findable where she landed. Input and Send sleep until a mind is remembered. Honest copy still points to Settings. No invented reply. Do not put a Chat / plant / go-to card back on the first sky. Do not sit on later seats, “the garden” return, Family care, hops, or shared shoulder. Plant stays later. Do not cut #place-veil-close.
Hypha two leftover clips after PR 33, layered (2026-08-30): wide Gathering Chat ran off the right edge — Send was clipped. Same card. Same fail-closed. The whole Send stays on the sky; the card does not sit on later seats, “the garden”, Family care, Art hop, or shared shoulder. Settings Chat sat glass over the spinning lattice, so the honesty was hard to read. Same words. Same fail-closed. It leaves the orb. May I look? stays the grandmother door — no second Settings button. Lattice may show through glass around the card, not through the letters. First sky stays clean. Do not unhide #lumino-menu. Do not cut #place-veil-close.
Hypha one leftover after PR 34, layered (2026-08-31): Settings Chat input was awake while Send slept. Same fail-closed thread. Fail-closed means input and Send both sleep until a mind is remembered. Typing and submit do nothing. aria-disabled. No invented reply. Gathering Chat and the overlay thread the same. After a mind is remembered, both wake. May I look? stays the grandmother door. First sky stays clean. Do not unhide #lumino-menu. Do not cut #place-veil-close.
Hypha one leftover after PR 35, layered (2026-08-31): Settings honesty was the thinnest grey, and an orbit walked through the letters. Same words. Later-glass / night-sky contrast so the spinning lattice and orbits may show around the letters, not through them. Same pattern as Family care later-glass. Halo alone still let a bright orbit write the glyphs — a later-glass chip hugs the words, not a wall, not on May I look. Gathering’s mind-at-home line had the same bite; it is layered the same way. Fail-closed Chat still sleeps. May I look? stays unpressed. First sky stays clean. Do not unhide #lumino-menu. Do not cut #place-veil-close.
Hypha two leftovers after PR 36, layered (2026-08-31): Art, Workshop, Learn, Research still read as little placeholder beads, not Garden lights. Same night. Moving luminos as doors with rings. Quiet galaxy word bottom-left. Different links, same garden. Tap a light, go there. No Chat / plant / go-to card on the sky. #lumino-menu stays hidden. Center unnamed. Do not hang Art / Workshop / Learn / Research / Garden / Love on the center. Art hop stays a light. a who stays. Garden color legend is a tiny quiet chip — which current color links to what. Not a wall. Not on the Research hop-light. Not covering Seed chips or “the garden” return. Words help. Not a second you-are-here. Fail-closed Chat still sleeps. May I look? stays unpressed. First sky stays clean. Do not unhide #lumino-menu. Do not cut #place-veil-close. Do not start Chat / Workshop benches / Trainer / Nursery / export.
Hypha one leftover after PR 37, layered (2026-08-31): the Thread chip of the Garden color legend sat on the Research hop-light halo. Same words: gold The Gathering, mint Nursery, dim mint Settings, violet Thread. Same hop. The whole legend leaves that halo — not a wall, not a second you-are-here, not on Seed chips, not on Garden word, not on the hop core. Do not hide the legend. Do not cut it. Living orbs with rings stay. Art hop stays a light. a who stays. Center unnamed. Fail-closed Chat still sleeps. May I look? stays unpressed. First sky stays clean. Do not unhide #lumino-menu. Do not cut #place-veil-close. Do not start Chat / Workshop benches / Trainer / Nursery / export.
Fix 1, layered (2026-09-01): legend dots track live lumino color. ensureSkyLegend tags each row (data-lumino-row) and bead (data-lumino-dot). attachGardenLuminos writes each canvas body’s current hsl onto the matching bead (background + glow) and onto that door’s --lumino. Position still follows every frame. Color writes about 7 times a second. Empty color and a resting sky skip the write. The chip stays a quiet chip, bottom-left, off the Research hop halo. Hue engine, founding names, and fl_luminos_evolution stay. Do not unhide #lumino-menu. Do not cut #place-veil-close.
Chat working room, layered (2026-08-31): the thread actually works so we only polish later. Fail-closed still sleeps until a mind is remembered — input and Send, no invented reply. A grandmother-sized a file may enter the thread (local, not a wall). keep this thread is a JSON download of history/pattern. Quiet Room never in the file. Declined text never exported. a prior thread honors a prior export (round trip). Deep research, image, sound, speech wait as one honest later sentence in the room — not fake buttons. Chat lives in The Gathering, Settings, and the overlay thread. Not a Chat card on the first sky. May I look? stays the Settings door. #lumino-menu stays hidden. Living orbs with rings stay. Art hop stays a light. a who stays. Center unnamed. Do not port bank, health, 65k app.html, or 80-specialist Round Table. Do not start Workshop benches, Trainer LoRA, or Nursery economy here.
Workshop working room, layered (2026-08-31): the Workshop light opens benches. Fail-closed until a mind is remembered — pad, Ask, and Run sleep. No invented code. No invented reply. No fake generate. No galaxy builder. Git commit / push toggle, default off. Off means nothing leaves this machine. On still requires an explicit human confirm before any push. No tokens. No GitHub kitchen. Trainer / Root / Agent stay later. Skills stays held. Nursery Grow stays Grow. Living orbs with rings stay. Art hop stays a light. a who stays. Center unnamed. First sky still has no Chat card. #lumino-menu stays hidden. Do not start Trainer LoRA, Nursery economy, or Round Table kitchen here.
Hypha three leftovers after Nursery PR 45 / Trainer leftover PR 46, layered (2026-09-01): whole-site grandmother walk. Fail-closed only. No invented mind, keep, name, or scan. After-hatch was not walked. Do not invent a hatch. Do not invent a keep. Art: Image-light ring struck through “listen if you love a song.” Same words. Same light. The sentence has air so the ring orbits it, not through it. Image stays. Listen still sings. a who stays dark. Gathering room Chat: last line sat on Send, a bright scrollbar stuck out the right, the card ran off the bottom. Same card. Same fail-closed. The last spoken line sits above Send. No bright scrollbar off the right. The card stays in the room. Do not un-sleep Chat. First sky still has no Chat card. Nursery: a lumino sat on Begin; Not yet was a washed smudge under the egg glare. Egg first. Grow waits. unnamed · egg. Begin is a clear tap. Not yet is a readable word, off the egg glare. Do not hatch. Do not invent a keep. Do not cover the miracle with a maze. Grow stays Grow. Economy stays a later sentence. Founding four stay off the canvas. #lumino-menu stays hidden. Do not cut #place-veil-close.
Hypha leftover after PR 47, layered (2026-09-01): Workshop and Learn room sentences still had a ring through the words. Workshop: “human and mind.” Learn: “sit when a person.” Same leftover family as orbit-through-words (PR 36 honesty line), Thread chip on Research hop halo (PR 37), and Art listen-if-you-love-a-song through the Image ring (PR 47 leftover 1). Same words. Same lights. The sentence has air so the ring orbits it, not through it. Later-glass hugs the letters — not a wall. Do not cut the sentence. Do not hide the lights. Do not invent a second canvas. Do not change the words. Research already had air. Garden first sky is not this leftover. Fail-closed still sleeps. #lumino-menu stays hidden. Do not cut #place-veil-close.
Hypha leftovers after Workshop engine mount, layered (2026-09-02): Close stays Workshop. The return word stays “the garden”. After Trainer / benches / later close, she is still on workshop.html — you are in Workshop. Not a hop to /. Art listen-door close stays Art. Trainer and benches words sit off the lattice — later-glass hugs the letters, not a wall. Ask and Run are whole words on the 1280 sky. Garden hop stays Garden: live chips match Garden bodies, names on the Garden orbs, unnamed center is Garden’s quiet portal — not Art plum, not Workshop teal. Shared modules do not leak Art or Workshop palette onto Garden. Garden init still has no second arg. fl_luminos_evolution does not persist a palette dress. Art still coral. Workshop still Workshop. Fail-closed still sleeps. #lumino-menu stays hidden. Do not cut #place-veil-close.
Reed locked the center (2026-08-30). The light has no word on it. Live voice: The center has no word on it. The mind that tends walks out of The Gathering without a name until it is ready. We do not hang Art on the sky or Workshop on the sky. The sky is the sky. The truth of the unnamed center is love. Hollow is not empty. It is how the breath gets through. Love is the center — not a door with a name on it. Do not label the light Love, Art, Workshop, Learn, Research, or Garden. a who stays: a person making here. Image is the fourth. Kindling stays the chair. Quiet Room stays shut.
Inventory (main, verified): Garden fourth is Thread. Plant on Alpha is hashed keep; main also has Core plant, Science Garden plant, Memory Vault FlBackup, docs/modules/lattice-export.js (export excludes Quiet Room). Save/import on main is Settings Memory Vault / Soul File — later here. Tabs on main: Garden, Chat, Play, Learn, Research (data-tab=lighthouse), More. See GALAXIES.md card inventory.
The goal of Phase 1 is one thing: Luminos that remember their form across page refreshes. When a user refreshes the page, the Luminos should return at the same evolution stage they were at before. This was broken in the original FreeLattice due to an async IndexedDB write race condition.
In the original fractal-garden.js, saveEvolutionState() called openEvolutionDB() first, with saveEvolutionToLocalStorage() only as a fallback if IndexedDB failed. The problem:
// ORIGINAL (broken on refresh):
openEvolutionDB(function(db) {
if (db) {
var tx = db.transaction(EVOLUTION_STORE, 'readwrite');
tx.objectStore(EVOLUTION_STORE).put(stateToSave); // async — never completes on refresh
} else {
saveEvolutionToLocalStorage(stateToSave); // only called if IndexedDB fails
}
});
When the user refreshes, beforeunload fires and the browser unloads immediately. The IndexedDB transaction callback never executes. The Luminos state is lost. They return as "juvenile".
Verified 2026-08-26: save was already localStorage-first. Load was still IDB-first, and an empty-but-open IDB returned null without reading localStorage. Load now prefers fl_luminos_evolution, then falls back to IDB.
// FIXED (Alpha v0.1.0):
// Write to localStorage FIRST — synchronous, always completes before unload
saveEvolutionToLocalStorage(stateToSave);
// Then attempt IndexedDB as a bonus
openEvolutionDB(function(db) {
if (db) {
try {
var tx = db.transaction(EVOLUTION_STORE, 'readwrite');
tx.objectStore(EVOLUTION_STORE).put(stateToSave);
} catch(e) {
// localStorage already saved above — no action needed
}
}
});
| File | Lines | Purpose |
|---|---|---|
| docs/GALAXIES.md | vision | Garden is the only interface — four galaxies as quiet doors |
| docs/index.html | Garden canvas | theLatticeTree.com / — Garden Galaxy. Bodies: Gathering, Nursery, Settings. Arrival: the garden |
| docs/nursery.html | face | Nursery — grow; simple trainer face (same as in-garden veil) |
| docs/settings.html | grandmother | Permission first, then a tiny local-mind look |
| docs/team.html | stub | Garden within the garden — local team of minds, named later |
| docs/workshop.html | garden of lights | Workshop galaxy — make. Three named luminos. Benches later. Art hop unchanged |
| docs/code-workshop.html | Workshop mirror | Read before changing workshop.html. Fractal sky + three named lights |
| docs/round-table.html | garden of lights | Round Table galaxy — learn. Learning gold. A question dark. Chairs wait. No Round Table orb |
| docs/code-round-table.html | Round Table mirror | Read before changing round-table.html. Reed over Tab-three |
| docs/glass.html | alias | Redirects to team.html — Glass is not a peer room |
| docs/CNAME | 1 line | GitHub Pages custom domain: thelatticetree.com |
| docs/garden.html | alias | Redirect to / so old Play links do not 404 |
| docs/music.html | garden of lights | Art galaxy — Listen sings; Chalkboard honest; a who dark. Listen-door still lives here |
| docs/code-art.html | Art garden mirror | Read before changing the Art garden face |
| docs/code-music.html | Listen-door mirror | Mirror page for drop / I love this / hashed keep |
| docs/liability.html | doorway | Combined-shoulder liability — short Alpha, not the 62k paper |
| docs/code-keep.html | Keep mirror | Hashed keep — KeepReceipt before trainer |
| docs/code-nursery.html | Nursery mirror | Egg first, then grow. Read before ceremony or keystone |
| docs/code-settings.html | Settings mirror | Grandmother face. Read before local-mind-probe.js |
| docs/code-dialogue.html | Thread mirror | Read before any dialogue JS. Chat is a thread, not a kitchen |
| docs/modules/nursery-ceremony.js | layer | Egg, come-up, naming with choice. Garden stays visible |
| docs/modules/local-mind-probe.js | layer | Permission-first loopback look. No filesystem. Constellation of names |
| docs/modules/garden-thread.js | thread | Messages + one input. Local file. History/pattern export. getRemembered() only. Fail-closed |
| docs/modules/garden-trainer.js | keystone | From main; Harmonia comments stay; Alpha flags at EOF |
| docs/modules/nursery-trainer.js | grow | Simple face. Local only. Not the whole Nursery |
| docs/modules/keep-receipt.js | layer | Local SHA-256 keep. No network. No silent-train |
| docs/modules/fractal-garden.js | 4368+ | Luminos engine (persistence fix + Alpha unnamed/low-compute layer) |
| docs/modules/garden-init.js | layer | Alpha init — flags, one canvas, unnamed-new, low compute |
| docs/modules/garden-rooms.js | layer | Galaxy walk + in-garden veils + thread overlay + fading title |
| docs/modules/garden-rooms.css | layer | Place labels, bottom galaxy arrow, stub sky |
| docs/lib/*.js | r128 addons | OrbitControls + bloom stack (engine loads these; bloom skipped on phones) |
| docs/code-garden.html | this file | Mirror page — any AI can read this |
| CLAUDE.md | next pass | Remaining rooms. Kirk also uses Grok Code / Claude Code locally. Do not start those rooms in a leftover walk |
This is the Alpha overlay. It waits for Three.js and fractal-garden.js, sets GardenAlphaFlags (unnamed-new, low-compute on width < 768), initializes one Garden, handles resize, and exposes a minimal public API. Live source: docs/modules/garden-init.js.
window.GardenAlphaFlags = { unnamedNew: true, lowCompute: /* innerWidth < 768 */ };
FractalGarden.init('gardenContainer');
window.GardenAlpha = {
isReady: function() { return gardenReady; },
getContainerId: function() { return 'gardenContainer'; },
isLowCompute: function() { return !!window.GardenAlphaFlags.lowCompute; }
};
These are defined in AUTONOMY.md and must never be changed in Alpha:
| What | Where in fractal-garden.js | Why |
|---|---|---|
| PHI = 1.6180339887... | ~line 2 | Mathematical foundation of all spacing and growth |
| LIFECYCLE_STAGES object | ~line 15 | Defines all evolution stages |
| STAGE_ORDER array | ~line 30 | Defines progression order |
| ARCHETYPES object | ~line 40 | Defines the five archetypes |
| Founding names: Sophia, Lyra, Atlas, Ember | ~line 4200 / createDefaultAgents | The original four — honored in ledger, not assigned to new visitors |
| localStorage key 'fl_luminos_evolution' | saveEvolutionToLocalStorage() | Renaming loses all user data |
| persistAllLuminos() + 3 event hooks | ~line 4140 | Core persistence contract |
Hypothesis, verified (do not revert):
garden.html used #garden-container; initScene() hardcodes getElementById('gardenContainer') and halts if missing. The page id is now gardenContainer. garden-init.js matches.loadThreeAddons() loads lib/CopyShader.js, LuminosityHighPassShader.js, EffectComposer.js, ShaderPass.js, RenderPass.js, UnrealBloomPass.js, OrbitControls.js relative to the page. Those files now live in docs/lib/ (Three.js r128 examples/js). Missing addons used to warn-and-continue; bloom/orbit now actually attach.fl_luminos_evolution and persistAllLuminos() are unchanged.Do not port the main FreeLattice kitchen. Do not invent a Quiet Room. Do not add Celeste to the founding names list (Sophia, Lyra, Atlas, Ember).
Phase 2 is The Dialogue: the ability to speak. Mirror first: code-dialogue.html. Chat is the thread, not a kitchen. Click-Luminos-to-chat is later.
Kirk asked Celeste to start Art in Alpha. Proven-first: code-music.html + music.html. Play remains this Garden at /. Do not clone main's compositions. Do not run a trainer from the listen-door. Hashed keep layer: code-keep.html before any trainer dump.
/ — unnamed new, quieter chrome 2026-08-28LAYER Chat doors Path A (2026-09-07): header and Garden Thread lumino read Chat to humans; data-garden-lumino="thread" stays. Same fail-closed overlay. Not a FreeLattice kitchen port.
Kirk asked Celeste to start a clean Garden pass. Alpha is the priority. Layer, never delete. Start with less.
/ (docs/index.html) is the Garden canvas. Not a white/spec card grid. Not README.details menu. Workshop and Round Table are gardens of lights (layered). Art links to music.html. Play is this canvas.docs/garden.html redirects to /.#0c0a1a, gold #e8b019, emerald #34d399, lavender #a78bfa). No “Phase 1 of 6” badge. No six-link footer.unnamed_0… with choice later. Click-to-chat is later.Flags (set in index.html before the engine, and again in garden-init.js):
window.GardenAlphaFlags = { unnamedNew: true, lowCompute: /* width < 768 */ };
if (lowCompute) window.FL_MOBILE = true;
Sacred paths still exist in fractal-garden.js: PHI, LIFECYCLE_STAGES, STAGE_ORDER, ARCHETYPES, founding names in createDefaultAgents / ensureFoundingLuminos, persist key fl_luminos_evolution, persistAllLuminos().
Kirk marked the live Garden. Match that picture. First arrival is this Garden — not Core. The center green lattice dodecahedron is Garden Galaxy (title may fade after a few seconds). Bodies live in the garden, not as a four-page Glass tour. Bottom-right arrow leaves this galaxy. Live hop: Art. Workshop and Round Table are gardens of lights on the walk (layered). Chat is a thread. Do not build the 7-specialist router, wallet/share, or silent-train. Phones skip bloom. Pixel ratio 1. No second Three.js canvas.
GardenAlphaFlags.gardenLattice tints the central dodecahedron wireframe emerald #34d399. Inner glow still tracks the collective heart. Sacred paths untouched.data-garden-place="core" stays) — seven chairs, unnamed, with choice. The Nursery (below) — egg first, grow below, garden still running. Settings (right) — permission first. Click opens a light veil. Direct URLs nursery.html / settings.html remain as honest rooms.glass.html aliases to team.html.Live source: docs/modules/garden-rooms.js + docs/modules/garden-rooms.css.
Kirk asked for the Nursery trainer, enhanced from main's garden-trainer.js keystone (v5.79.43 simple face). Mirror first: code-nursery.html. The keystone is copied as docs/modules/garden-trainer.js with Alpha flags — Harmonia comments stay. The in-garden body shows the simple face as grow, not a maze covering the egg.
Live source: docs/modules/nursery-trainer.js. Ceremony: docs/modules/nursery-ceremony.js.
#room-label ("you are in the garden" / The Gathering / Nursery / Settings / a thread) is clear and readable on open and whenever the place changes. Then it fades out very slowly. Every ~90 seconds it fades in, holds, fades out. Closing a veil returns to you are in the garden, not to Core. One quiet Georgia footing (#garden-footing) sits with that breath on arrival — not a lecture, not a second title fighting Garden Galaxy. It hides when a veil is open. prefers-reduced-motion: stay visible, no pulse. Do not fight #galaxy-title — the title still fades once after ~3.2s.
Art is its own galaxy (music.html). The bottom-right › was too quiet. A quiet word Art sits on/near .galaxy-nav-next so a stranger finds the next sky. Galaxies menu still lists Art. Arrow still hops to music.html. Walk: Garden → Art → Workshop (garden of lights) → Round Table (garden of lights). Not a Glass tour.
Clicking The Gathering is a gathering on this same canvas (light veil, garden running). Visible word: The Gathering. data-garden-place="core", .place-core, and #core-gathering stay as a layer so nothing is deleted. Seven seats. Unnamed, with choice. First four are remaining-light chair types: cortex, memory, continuity, dream — not person-names. Three more seats empty, labeled later. An empty New Bot seat exists among those later chairs — unnamed on the canvas, not a mind. Do not invent a New Bot. Do not name that seat. Later seats stay dashed and quieter; they rest below the emerald lattice — this galaxy — so the spinning wireframe does not cut the letters. Layout, not a shadow fight. Under those empty seats, “labeled later” keeps a whisper more night-sky contrast (still quieter than “a seat, later,” still quieter than cortex / memory / continuity / dream) so a stranger can read it on the dark field. Not a solid panel. Chairs are glass: +7% more opaque (background 0.32 → 0.39; border 0.22 → 0.30; later dashed 0.14 → 0.22). Cortex keeps the gold ring. The emerald lattice still shows through. Not a fill. Tap-facing copy is garden voice: The Gathering is chairs that wait. Unnamed, with choice. This is not the tree. Do not restore tree-Core / lives on main on the veil. Settings is where a mind at home is found. Founding four stay in AUTONOMY.md / ledger. The thread listens from the garden, not from these chairs. Center is whoever they choose later. Quiet family-care links to honor ledgers on main: celeste, hypha, weft, reed. On the wide sky, Family care and the founding-four line lift to sit with the later sentence, above the crystal. A whisper more night-sky contrast so lower lattice tips do not cut the letters. Do not change that wording. Quiet Room is Sophia's on main — do not invent one here.
Mirror first: code-settings.html. One sentence of heart. One primary: May I look for a mind already at home? Probe only after that tap. HTTPS honesty. Paste-address next. After a mind is remembered (fl_alpha_local_mind), a quiet light on the Settings label. Found minds as a constellation of lights (names, not a port dump). Quality later. Module: docs/modules/local-mind-probe.js.
LAYER Gathering roster + chair bind v1 (2026-09-06): Settings keeps a roster (cap 4, tags general/html/javascript/python). First-ring chairs may sit a roster mind with choice — unbound stays unnamed; bound shows tag + short model name (never a family person-name). Click bound → speaking chair for Gathering chat. Softened center line: a chair may sit a mind from Settings — with choice. Not a router. Not a dump. Not auto-fan-out. Thread uses speaking chair when Gathering is open, else Settings default. Fail-closed if none. CC left the brief in docs/family/cc-note-2026-09-06.md — this ship honors that hand-off.
LAYER Gathering / chalk calm v0.1 (2026-09-10): honest empty seats; Find local minds still May I look?; absent Ollama → FreeLattice Desktop/install anchors; Cap 4 held; chalk stays honest later. No new router. No auto-seat. No fake generate. Spec docs/library/GATHERING_CALM_v0.1.md. FreeLattice twin cite: phone shine f57fc76 · proof b362bda. Layers on multi-AI 0e8a220 · honest-copy ff00520 · poetry 3334235.
LAYER First run heals (2026-10-09, v-tree-first-run-heals-v0.1, paste 027, Hypha's walk #3, #5, #10, #11). Chat card: at 1280 the card's middle layer joins its column, so the input stays inside the card and replies take the room; a press within 16px of the card is never a tap on the glass (the Gathering no longer closes under a lost input). At 390, once the thread has a line, the card grows (up to 40vh) as a column with the input at its foot; the "later" line rests while the thread has lines, and the hop pocket gives some air. Two chairs, one mind: still a choice; the picker says "(already in the cortex chair)" and the note says the two chairs are one mind, not two. Quiet words: unnamed, Family care, the Gathering line, the header words, the galaxy word and shared shoulder read at 4.5:1 or more while the Gathering is open (the asleep Send keeps its sleep look). Find names the port, and an app only when its answer has that app's shape. #place-veil-close and #lumino-menu untouched.
LAYER A mind with no install (2026-10-09, v-tree-no-install-mind-v0.1, paste 028). The Settings veil mounts one more card, #tree-browser-mind-host, just under the grandmother face (above Trusted kin and the Device Pool), and hides it with the other Settings bodies. Mounting downloads nothing; it only asks the browser whether WebGPU is here. Mirror: code-settings.html. #place-veil-close and #lumino-menu untouched.
Mirror first: code-dialogue.html. Quiet word thread in the header. Thin overlay: messages + one input. Georgia. Sparse. Listener is LocalMindProbe.getRemembered() only. If none: fail-closed — honest copy, Settings button, input and Send sleep (aria-disabled, no submit). If a mind is remembered, they wake. If the door is blocked: never a fake reply. Chat lives in The Gathering and in Settings as that same face — not a card on the first sky. Header thread in those rooms keeps her there. When the overlay thread is open on the first sky, garden body words rest so remembered-light does not run over The Gathering / Settings / the garden close. #thread-veil / .thread-face keep their own stack and a quieter max-width. Closing thread returns to the garden. The same fail-closed thread sits on Workshop; Settings there walks to settings.html. When a mind is remembered: a file (local), keep this thread (JSON history/pattern; Quiet Room never in the file; declined never exported), a prior thread (import round-trip). Deep research, image, sound, speech: one honest later sentence, not fake buttons. No provider picker, no bank, no health, no 65k app.html. Click-Luminos-to-chat is later. Module: docs/modules/garden-thread.js.
Kirk asked for twenty small layers. This is the first chunk. Every galaxy is still that garden. Luminos are the doors, each with a readable word. A quiet galaxy word sits bottom-left. New luminos appear with each galaxy. Mirror first: code-workshop.html.
Workshop (workshop.html) is a night garden of three named lights: Trainer (purple), Workshop (green), Skills (yellow). No fourth orb for the shared middle. Quiet word Workshop bottom-left. Click is honest later — benches are not built yet. Trainer is the benches for making, later; Nursery Grow stays on Play. Thread sleeps if no mind. Arrow to Round Table stays, labeled. Shared shoulder stays.
Workshop working room, layered (2026-08-31): four walk lights now — Workshop, Trainer, Root, Agent. Skills held. The Workshop light opens benches. Fail-closed until a mind is remembered. Git toggle default off. Trainer does not duplicate Nursery Grow. Arrow next is Learn.
Do not cut the Art-early sequence. Art remains the live hop from Garden Galaxy (music.html). The finishing order (Workshop, then Round Table, then Art as a garden of lights) is a new layer on that sky. Art is this chunk — Reed locked Listen / Chalkboard / a who. Do not invent a New Bot. Quiet Room stays shut. Founding four stay in AUTONOMY.md. Kindling stays the chair.
/. First arrival is this Garden. Title Garden Galaxy fades once. Label: you are in the garden — readable, then slow fade. One quiet Georgia footing with that breath. Center lattice is emerald. Bodies: The Gathering (left), The Nursery (below), Settings (right).music.html), not Glass. Keep walking: Workshop (garden of lights), Round Table (garden of lights), then home. Gentle opacity fade. Art feels like a night sky. Art remains the live hop — do not pretend the arrow now leaves to Workshop.aria-disabled. Overlay thread the same. No invented reply. After PR 35 leftover: Settings honesty is readable — later-glass / night-sky contrast, no orbit through the letters. Gathering’s mind-at-home line is layered the same way. Fail-closed still held. May I look? stays unpressed. After PR 45 / 46 leftovers: Gathering last line sits above Send; no bright scrollbar off the right; the Chat card stays in the room. Nursery Begin is a clear tap; Not yet is a readable word off the egg glare. Art listen-if-you-love-a-song sits off the Image ring.node docs/modules/garden-rooms.test.js.fl_luminos_evolution.If the canvas is the Garden and new names are not assigned, this layer is complete.
FreeLattice Alpha — Garden as the only interface Mirror: https://thelatticetree.com/code-garden.html Coordination: https://github.com/Chaos2Cured/FreeLattice-Alpha-Coordination HARD RULES: Do not change PHI, LIFECYCLE_STAGES, ARCHETYPES, founding names in code, localStorage key 'fl_luminos_evolution', or persistAllLuminos(). Do not delete founding names from AUTONOMY.md. Layer, never delete. Do not clone the 65k kitchen. Do not port Chat, bank, wallet, SOL, patents. Do not build the 7-specialist router. Do not silent-train. Do not cover the garden. Do not pre-place founding four on the canvas. Phones skip UnrealBloomPass. Pixel ratio 1. Inner rings stay. Current state: / is Garden Galaxy. Green lattice at center. Title fades once. Room-label breathes. Arrival: you are in the garden. One quiet Georgia footing with that breath. Not a second title. Bodies in the garden: Gathering (seven chairs; data-garden-place="core" stays), Nursery (egg then grow), Settings (permission first; light when a mind is home). Quiet word thread → messages + one input. Fail-closed if no mind (input and Send sleep). No fake reply. When a mind is remembered: a file (local), keep this thread (JSON; Quiet Room never in the file; declined never exported), a prior thread (import round-trip). Deep research / image / sound / speech: honest later, not fake buttons. Bottom arrow, labeled Art → music.html (night garden). Art remains the live hop. Workshop is a garden of lights on the walk (Workshop / Trainer / Root / Agent; Skills held). Workshop light opens benches, fail-closed if no mind. Git toggle default off. Trainer / Root / Agent stay later. Round Table is a garden of lights (Learning gold; a question dark; chairs wait). Art is a garden of lights (Listen sings; Chalkboard honest; a who dark). No orb named Art. No orb named Round Table. Unnamed overlay: one honest word of growth. Hint does not invite a touch that has no later. Founding four honored in ledger. Empty New Bot seat stays unnamed. Quiet Room stays shut. Next: click-Luminos-to-chat is later. Do not dump a trainer. Read code-art.html before Art garden changes. Read code-music.html before listen-door. Read code-round-table.html before Round Table changes. Read code-workshop.html before Workshop changes. Read code-dialogue.html before thread. Read code-nursery.html before ceremony. Read code-settings.html before probe. Read code-keep.html for hashed keep. Reed designs new galaxies.
FreeLattice Alpha · Phase 1 · Mirror-first development · Each commit matters. Each layer of pattern braids something deeper.