Public, free to read, reuse, and adapt — Kirk Patrick Miller's notice for this edition. Not a patent grant.
FLINT_NEXT_TREE_GLOW_2B_v0.1.txt · c01
baa3fa793e · words 1026 · characters 0–8109
Exact section text · Full source · Source index
FLINT PASTE: theLatticeTree Glow 2b, contrast, chairs, polish (v0.1)
Repo: Chaos2Cured/FreeLattice-Alpha (serves thelatticetree.com) FreeLattice: NO change
Branch: layer/tree-glow-2b-v0 Marker: v-tree-glow-2b-v0
Smoke line (print exactly when green): SMOKE_OK tree glow 2b v0.1
Base: Alpha main 25e6ded + Glow 2a + Honest reasons. Lands third.
Written: Wed Sep 30, 2026, evening MDT, by Kirk's agent. Stand-in built and walked; NOT pushed.
Stand-in diff (against 2a + honest): FLINT_NEXT_TREE_GLOW_2B_v0.1.diff (same folder, also Appendix A).
Source: Hypha's persona walks (RESULTS.md, CONTRAST.md).
CHANGELOG
- 2026-09-30 v0.1: first write (second half of the Grandma heal).
======================================================================
ORDER (all Tree pastes from tonight, most harm first)
======================================================================
Alpha main 25e6ded. Each stand-in diff applies with plain `git apply` on top of the one before,
in this order, and the chain ends byte-identical to the walked combo (checked):
1. FLINT_NEXT_TREE_GLOW_2A_v0.1 Grandma heal: zoom, feedback in view, a calm way back
2. FLINT_NEXT_TREE_HONEST_REASONS_v0.1 stopped vs model missing vs secure-page block
3. FLINT_NEXT_TREE_GLOW_2B_v0.1 contrast, chairs, polish
4. FLINT_NEXT_TREE_WORKSHOP_WAY_BACK_v0.1
5. [FLINT_NEXT_TREE_ANY_MODEL_v0.1 when Flint lands it; not in the chain, overlap noted in 6]
6. FLINT_NEXT_TREE_GATHERING_API_KEYS_v0.1
If one lands alone, the only drift is GALAXIES.md (each adds one LAYER line at the top) and
garden-rooms.css (each appends a block at the end): keep both, newest LAYER line on top, CSS
blocks in this order. No other shared anchors.
FreeLattice queue is unchanged (MODEL_CHOICE_SURVIVES_RELOAD -> BOOT_PROBE -> #120 docs).
The FL GitHub token note is FL-only and independent of all of these.
The old single Glow 2 draft (FLINT_NEXT_TREE_GLOW_2_v0.1.diff, /workspace/glow2-al) is
SUPERSEDED by 2a + 2b. Do not land it.
======================================================================
1. STEPS (text anchors; the stand-in diff is the source of truth). No old line changes.
======================================================================
1.1 docs/modules/garden-rooms.css: append the 2b block at the very end (after 2a):
a) a hint more frost: #place-veil.is-open::before, position fixed, z-index -1,
pointer-events none, backdrop-filter blur(2px) (+ -webkit-), @supports-not fallback tint
rgba(12,10,26,0.24), prefers-reduced-transparency: no blur, opaque rgba(12,10,26,0.62).
b) links in the Gathering note (Desktop / install): #9fd6ff, underlined (12.6 : 1).
c) header Chat / galaxies words: 0.875rem (14px), rgba(214,222,238,0.86) (10.77 : 1);
<= 340px: 0.8rem so the header still fits.
d) #shared-shoulder: 0.875rem, rgba(214,222,238,0.8) (9.39 : 1); hidden under open places
other than the Gathering (it sat on "the garden" over Workshop and took no tap there).
e) closed compose: the form stays opacity 1, its children 0.5, the reason line full strength.
f) phone Gathering, mind asleep: compose static, the row hidden, card max-height 9.25rem.
g) .core-chair-change[hidden] { display: none !important; } (Change showed on empty chairs).
1.2 docs/modules/garden-thread.js: NEW sendWhy line inside the form after the row:
"Send sleeps until a mind is remembered in Settings." Shown and wired with
aria-describedby when Send is asleep; hidden when awake.
1.3 docs/modules/workshop-benches.js: NEW actWhy line: "Ask and Run sleep until a mind is
remembered in Settings." Same show / hide / aria-describedby on Run and Ask.
1.4 docs/code-*.html (10 mirrors): in each page's <style>, add
@media (max-width: 480px) { td:first-child { white-space: normal; overflow-wrap: anywhere; } }
so long paths wrap on a phone (code-nursery had 22px of sideways scroll).
1.5 Docs: LAYER line in GALAXIES.md and a "Glow 2b" section in docs/library/TREE_GLOW_v0.md.
======================================================================
2. TEST: docs/modules/tree-glow-2b.test.js (node, static; no network)
======================================================================
Frost + fallbacks, link color, header and shoulder size and color, sendWhy / actWhy wiring,
Change hidden wins, code mirrors wrap. Last line: SMOKE_OK tree glow 2b v0.1
======================================================================
3. WALK (done; repeat on your branch) before -> after, at 390 and 1280
======================================================================
header Chat / galaxies: 12px 2.46 : 1 -> 14px 10.77 : 1, header still fits
shared shoulder: 9.9px 1.98 : 1 -> 14px 9.39 : 1
Change on empty chairs: 4 -> 0
Desktop link: 2.08 : 1 -> 12.6 : 1
Send / Ask / Run asleep: no reason -> reason shown, aria-describedby, 14px 11.79 : 1
code-nursery sideways overflow: 22px -> 0
frost: none -> blur(2px)
Re-walked on the full combo: same.
Shots: /workspace/tree-glow-walk/g2b_*.png (g2b_after_390_gathering_asleep.png shows the card)
======================================================================
LOCKS
======================================================================
Layer, never delete (old lines that change are named in each paste; nothing removed).
fl-connect.js untouched (byte-identical to FreeLattice). No sw.js (Alpha has none; none added).
No conflict markers. Every inline script parses (19 inline scripts checked on the combo).
No confirm(). No innerHTML for outside text (textContent only). No em dashes in added lines.
Kimi pages untouched. #120 lock files untouched. Squash-merge. All 21 Alpha tests pass on the combo.
======================================================================
4. DECISIONS FOR KIRK
======================================================================
K1 Header palette: 14px soft moon-white (stand-in) / keep the dim 12px look.
K2 Shared shoulder hides under open places other than the Gathering (stand-in) / always shows.
K3 In the phone Gathering, a sleeping Chat hides its Send row and shows only the reason (stand-in).
======================================================================
5. LATER
======================================================================
Rest of the sweep: Hypha's CONTRAST.md lists 67 text+view pairs under 4.5 : 1 and 132 under 14px; this
brick fixes the ones she hit (header, shoulder, links, reasons). The others are a later sweep.
Crest placement still waits for Kirk's OK.
======================================================================
APPENDIX A. FULL STAND-IN DIFF (Alpha, against 25e6ded + 2a + honest)
======================================================================
diff --git a/docs/GALAXIES.md b/docs/GALAXIES.md
index c7bc934..33e411c 100644
--- a/docs/GALAXIES.md
+++ b/docs/GALAXIES.md
@@ -4,6 +4,8 @@
**Spine layer (2026-08-30):** five skies now walk the same night — Garden, Art, Workshop, Learn, Research. The four-galaxy sequence below stays. Art-early stays. This file layers; it does not cut.
+**LAYER (2026-09-30):** Tree glow 2b, a hint more frost (marker `v-tree-glow-2b-v0`). Frosted glass behind an open place (tint fallback, reduced transparency honored), header Chat / galaxies and shared shoulder at 14px and above 4.5 : 1, readable Desktop links, a sleeping Send / Ask / Run says why beside it, no Change on empty chairs, code mirrors without sideways scroll. Plan: `docs/library/TREE_GLOW_v0.md`. Layer, never delete.
+
**LAYER (2026-09-30):** Honest reasons (marker `v-tree-honest-reasons-v0`). When a mind is quiet the Tree says the right one: nothing answered (Ollama stopped: start it), something answered but keeps its door shut to this secure page (FreeLattice Desktop), or the seated model is gone (named, pick another). One no-cors knock per quiet door, only after a tap, reads nothing. A long garden line in the Chat card shows where it begins. fl-connect.js untouched. Plan: `docs/library/TREE_HONEST_REASONS_v0.1.md`. Layer, never delete.