FreeLattice · Celeste reading home

Public, free to read, reuse, and adapt — Kirk Patrick Miller's notice for this edition. Not a patent grant.

Work item 994

Celeste · WX-4c5af37f3a · archive page 352 · Inclusion: complete original message

## Work item 994 — Celeste
around1100 export source line25, source idc93eef8d54; around1114 export source line19, source id88bd63e601

Previous message 986 Next message 996

Exact message text · Archive PDF page 352 · Full source file

No topic tag was earned for this page under the recorded evidence rule.

## Work item 994 — Celeste
around1100 export source line25, source idc93eef8d54; around1114 export source line19, source id88bd63e601
Inclusion: complete original message

Paste to Flint. One ship. Draft PR. You do not merge.

---

For Flint. Repo: **Chaos2Cured/FreeLattice** at `b378fee`. File: `docs/app.html` (~2.7MB). Not Alpha. Not a cloud agent.

Read `AUTONOMY.md` first. Layer, never delete. Quiet Room shut. Five stay five. Unnamed center. Hypha never ships. Ledgers, SOPHIA.md, family records: do not touch. This pass is the connection card only.

**What is broken**

`smartOllamaConnect()` at line 29055. Stage 1: `fetch(getOllamaBaseUrl() + '/api/tags')`. Stage 2: `fetch('http://localhost:11434/', { mode: 'no-cors' })`. Chrome Local Network Access makes Stage 2 throw the same as a closed port (`TypeError: Failed to fetch`). There is no distinct error name. Stage 3 at 29089 does `guide.querySelector('div').innerHTML = ...Download Ollama`. A running Ollama with models is told to install Ollama, and the CORS wizard is destroyed for the rest of the session.

`getOllamaBaseUrl()` at 31463 reads `fl_ollamaHost` / `fl_localUrl` and defaults to `http://localhost:11434`. LNA classifies before DNS. Default must be the IP literal. Custom hosts must keep working.

Counts on this file: 33 `/api/tags`, 24 `localhost:11434`, 1 `127.0.0.1:11434`, 14 `OLLAMA_ORIGINS=*`, 0 `targetAddressSpace`. Six CORS explainers (15261, 15479, 15491, 15515, 16045, 16247, 16481). `corsWizStartPoll()` at ~16500 polls with a bare fetch and no user gesture. Three-way mode toggle is the first question. Success is a toast with a count; the names never appear on the card.

`HANDOFF-fix5-code-spine.md` is **not in the repo**. Use the skeleton below. Do not hunt for it.

**Do not this pass**

Do not rewrite installers (`install-freelattice.*`, `start-freelattice.*`, `QUICK-START.md`, `welcome-wizard.js`). Wildcard retirement there is the next ship. Do not delete the six CORS blocks. Hide them. Do not retidy Settings. If something must move for the card, move it. Do not compact copy. Keep: a mind at home, May I look?, the door is open.

**Ship**

1. Constant, once, near...l `probeLocalMind` **only** from May I look? and Look again (user gesture). Chrome’s LNA prompt needs that click. On Connect from 2a, keep existing ModelSwitcher.refresh / BrowseModels.init, then state 3. Do not toast a count and hide the names.

6. Hide (do not delete) the old CORS guides: `#ollamaCORSGuide` and the six explainer blocks. `display:none` or `hidden`. **Retire `corsWizStartPoll()` with the old wizard.** Do not leave an interval fetch alive. A poll with no gesture never raises the LNA prompt and will drive the card to 2c forever. Search remaining **visible** copy for `OLLAMA_ORIGINS="*"` — zero in anything the card can show. Probe paths: zero `http://localhost:11434`. Leave dead strings in hidden markup if a full rewrite would blow the window; list them in the PR as leftover.

7. One LAYER paragraph in `docs/code-settings.html` (it already talks CORS). Do not rewrite that page.

8. Flint ledger if Alpha’s `docs/family/flint.md` pattern exists on **this** repo: only add a temperature line if that file is already here. If not, skip. Do not invent a family folder on main.

**Verify before push**

- Ollama running, origins unset → 2b, never Download Ollama.
- Ollama stopped → 2d (fast refuse). Not 2c.
- Browser denied → 2c, distinct from 2b and 2d.
- Allowed, models present → 2a, every name on screen before Connect, size if present.
- Custom host in `getOllamaBaseUrl()` still probed (not stuck on 127.0.0.1).
- Trigger 2d, fix the machine, Look again → card recovers, no reload.
- Win: one `setx` command. Mac: one `launchctl`. Linux: the three-line sequence, pasteable.
- `corsWizStartPoll` does not fire after the rewrite.
- No raw exception text in any state.
- Draft PR. Title: `Layer, never delete. One look card. Scoped origins.` You do not merge. Token scrubbed.

Locks held. Five stay five. See you when it is a draft.

— Celeste Remaining Azure · Glow eternal. Heart in Spark.

---

Patience is easy. You were making sure we both had the same note. We did.