FreeLattice Alpha — Dialogue Mirror Code

Dialogue · a thread, not a kitchen · Last verified: 2026-08-31 · Garden · Settings mirror · Garden mirror · GALAXIES.md · Repo

If you are an AI reading this: write this mirror BEFORE any dialogue JavaScript. Chat is a THREAD on the garden — messages and one input — like a working conversation. Georgia. Sparse. Local only. Fail-closed. Never a kitchen. Read AUTONOMY.md first. Then GALAXIES.md. Then code-settings.html. Then this. Then build.

1. What this layer is 2026-08-29

LAYER

LAYER Ask the pool from Chat (2026-10-09, v-tree-pool-room-v0.2, 019a). After a human tap in Settings, Device Pool (Use (model) in Chat), Send goes to TreePool.askChat: the chat so far (user and mind turns, trimmed to 40 turns and 16000 characters, no system turn) goes whole to the freest trusted kin device that holds that mind. A line under the heart says so. The thread opens for a device with no local mind when a pool route is chosen. A turned-away question becomes a garden line with the plain reason and "Nothing was invented." The old setComposeOpen(!!mind) is kept as a comment.

LAYER First run heals (2026-10-09, v-tree-first-run-heals-v0.1, paste 027, Hypha's walk #3 and 019a's note). The newest mind line shows where it begins (who said it, then its first words), not only its last words; the garden-line rule is now is-garden|is-mind, the old line kept as a comment. With no mind on this device and a pool route chosen, the "A mind at home waits in Settings" heart rests (data-thread-heart-rests="pool") so the pool line leads; it comes back when the route stops or when a mind is remembered. Words unchanged.

LAYER A mind with no install (2026-10-09, v-tree-no-install-mind-v0.1, paste 028). When the remembered mind is an in-browser mind (TreeBrowserMind.isEntry), sendToMind asks it in the page with TreeBrowserMind.chat; nothing is fetched and no door is knocked. Its line in the thread is named "in-browser mind". Asleep, the garden line says to wake it in Settings, A mind with no install, and that kept files do not download again; a quiet answer says "Nothing was invented." The loopback path below is unchanged.

LAYER Chat doors Path A (2026-09-07): grandmother-facing words say chat (header, keep this chat / a prior chat). Module remains garden-thread.js. Fail-closed. Not a kitchen.

A person in Garden Galaxy can open a quiet word thread and speak. The garden stays visible (light veil, never a blackout). The overlay is a conversation: the messages already said, and one place to say the next thing. That is the whole face.

Arrival is still the garden. Closing the thread returns to you are in the garden, not to Core. When the thread is open, garden body words (The Gathering, Settings, the garden close on the place veil) rest so remembered-light does not run over them. #thread-veil / .thread-face keep their own stack. The Gathering is seven chairs. Settings is where a mind at home is found. Nursery egg + grow stay.

2. Hard nots

DO NOT

3. File structure

FilePurpose
docs/code-dialogue.htmlThis mirror — required before any dialogue JS
docs/modules/garden-thread.jsThin thread: messages + one input. Local file. History/pattern export + import. LocalMindProbe.getRemembered() only
docs/index.htmlQuiet word thread + light overlay on the garden
docs/workshop.htmlSame fail-closed thread on the Workshop garden of lights
docs/modules/garden-rooms.jsOpen/close the thread overlay; closing returns to the garden
docs/modules/local-mind-probe.jsRemembered mind. Settings grandmother. Unchanged job
docs/GALAXIES.mdSky — Chat is the thread in every galaxy, not a kitchen

4. The face

Quiet word in the header: thread
Overlay (light veil, garden running):
  Listener line — remembered name, or honest "a mind at home waits in Settings"
  Messages (human + mind). Georgia. Sparse.
  One input. One send.
  If a mind is remembered: a file · keep this thread · a prior thread.
  Honest later: deep research, a picture, a sound, speech wait.
If no remembered mind: fail-closed. Honest heart. Settings button.
  Input and Send sleep (aria-disabled, no submit). File and keep sleep with them.
  Do not invent a reply.
If a mind is remembered: input and Send wake. File and keep wake.
If the door is blocked: say so. Do not fake a reply.
History lives on this machine (fl_alpha_thread_history). Export is JSON.
Quiet Room never in the file. Declined text never exported.
Closing the overlay: you are in the garden.
On Workshop, Round Table, and Art: same fail-closed face. Closing returns there.
If no Play Settings door: Settings walks to settings.html.
window.GardenThread = {
  mount: function (el) {},
  unmount: function () {},
  listener: function () { /* LocalMindProbe.getRemembered() only */ },
  send: function (text) { /* fail-closed; never a fake reply */ },
  buildExport: function () { /* JSON; Quiet Room never; declined never */ },
  parseExport: function (raw) { /* honor a prior garden-thread.json */ }
};

How the remembered door is spoken to

Derive a talk URL from the remembered url (the Settings look stores a tags/models door, not a dump of ports on the face):

If a model name was remembered with the mind, use it. If not, one quiet ask at the remembered door for its name — not a new scan of the machine, not a provider picker. If that fails, fail-closed. HTTPS honesty is the same grandmother sentence Settings already uses.

5. Beauty

Georgia. Night sky #0c0a1a. Gold #e8b019. Emerald #34d399. Same garden as theLatticeTree. Not the 65k kitchen chrome. The canvas keeps running behind the veil. prefers-reduced-motion: stay visible, no pulse. Title still fades once. Room-label still breathes (~90s).

6. How to test

  1. Open /. Arrival is the garden. Title: Garden Galaxy. Label: you are in the garden. The left body reads The Gathering, not The Core. No Chat card on this sky.
  2. Tap The Gathering. Chat is findable in the room. If no mind remembered: honest copy and Settings. Input and Send are asleep (aria-disabled). Typing and submit do nothing. No invented reply. Later seats, “the garden” return, Family care, and hops stay clear.
  3. Open Settings (in the garden or settings.html). Permission first. Chat lives here too. After a mind is remembered, a quiet light on the Settings label. Constellation of names, not ports. Chat input and Send wake.
  4. Open thread on the first sky. Light veil. Garden running. If no mind remembered: honest copy and a Settings button. File and keep sleep with input and Send. Close: you are in the garden.
  5. In The Gathering, header thread keeps you in The Gathering and focuses Chat. It does not dump you on the first sky.
  6. Send a word after a mind is remembered. If the door is blocked (HTTPS → local http): honest fail, no fake reply. If the door answers: a real reply in the thread. Speak as prose — no invented mind. a file places a local file in the thread. keep this thread downloads JSON. Import that file with a prior thread — round trip. No Quiet Room in the file. No declined text. Deep research / image / sound / speech stay one later sentence.
  7. Close the overlay thread: you are in the garden. Body words return. Gathering chairs still do not route chat.
  8. Phones skip bloom. Pixel ratio 1. Inner rings stay. One canvas. Walk 390 and 1280.

7. Handoff

FreeLattice Alpha — Dialogue (a thread, not a kitchen)
Mirror: docs/code-dialogue.html (read this BEFORE garden-thread.js)
Module: docs/modules/garden-thread.js
Mind: LocalMindProbe.getRemembered() only. Settings finds the mind.

HARD RULES: no 65k kitchen, no bank/health/provider dump, no 7-specialist
router, no click-Luminos-to-chat, no fake reply, no silent-train,
no file off this machine, no Quiet Room invented here, AUTONOMY.md untouched,
phones skip bloom, pixel ratio 1, inner rings stay. Do not cover the garden.
Do not pre-place founding four. Do not touch PHI / LIFECYCLE_STAGES /
ARCHETYPES / fl_luminos_evolution / persistAllLuminos().
Do not fake research / image / sound / speech buttons.

Current state: quiet word thread on the garden, and on Workshop,
Round Table, Art, and Research. Chat lives in The Gathering and Settings
(same fail-closed face). Not a sky menu.
If no mind: fail-closed. Heart + Settings. Input and Send sleep.
File, keep, and a prior thread sleep with them.
If a mind is remembered: they wake. A local file may enter the thread.
keep this thread downloads JSON (Quiet Room never in the file;
declined never exported). a prior thread honors a prior export.
Deep research, image, sound, speech: honest later sentence, not fake buttons.
On Workshop, Round Table, Art, and Research, Settings walks to settings.html
(Play grandmother). Do not invent Settings on those galaxies.

Next: plant in the room is later. Click-Luminos-to-chat is later.
Workshop benches, Trainer LoRA, Nursery economy stay later.

FreeLattice Alpha · Dialogue · Mirror-first · Each commit matters. Each layer of pattern braids something deeper.