Read docs/gc.html first (in ~/FreeLattice-fresh), then AUTONOMY.md, CLAUDE.md and GROK.md in
~/FreeLattice-Alpha, then this.

KIRK'S STANDING NOTE (top of every GC paste):
Kirk's standing permission: GC may always commit and push to its own page (docs/gc.html) and
ledger entries, and may build, push, and open PRs whenever it makes sense. Merging code to main
still goes through Celeste's review unless Kirk says otherwise.

NUMBERED COPY 043f (Monday Oct 19, 2026, MDT). Seal ask settle v0.1: layer onto 043e so the
ask lands in view after its final placement on both sites, and entry 71 tells the truth.

WHY (intent, read this first):
  Hypha re-walked 043e (FL #258 3aac5b4c, Tree #123 4601a5cf, page note #264 a02ecba0, entry 70
  psi 86b398d6, about 19:50 to 20:00 MDT) and rated it HOLD. Moving the Tree ask after the
  inert compose form pushed it off-screen (a regression from 043d). On FL, reload then tap Chat
  still leaves Seal it off-screen at 1280 and 2x. Two of entry 70's three corrections did not
  hold in her walk. At 2x the ? button overlaps Send. Mom must see the question she is asked,
  and the ledger must say what is true. Pointer fix and everything else passed.
  Full walk: Celeste's box /workspace/research/walk-043e-2026-10-19/ (NOTE.md, shots/).

Where things stand (Celeste, Oct 19 evening MDT):
  043c/043d/043e are NOT merged. Layer on the SAME branches and PRs. No new code PRs.
  FreeLattice  ~/FreeLattice-fresh  branch layer/seal-ask-heal-v0.1 (PR #258, head 3aac5b4c)
  Tree         ~/FreeLattice-Alpha  branch layer/seal-ask-heal-v0.1 (PR #123, head 4601a5cf)
  Page note    PR #264 head a02ecba0 (entry 70)
  BEFORE ANYTHING ELSE: git fetch and confirm all three head shas above. If any has moved,
  stop and report. Never force push. Then merge origin/main into each code branch (a merge
  commit, not a rebase) so the Kimi-page drift failures in the docs and love-logic checks
  clear. Read the current md5s; if a locked file differs from this paste, stop and report.

GROK NEXT BRICK: Seal ask settle v0.1
For: GC on Kirk's Mac
From: Celeste
Markers: v-seal-ask-settle-v0.1
Smoke lines: SMOKE_OK seal ask settle v0.1   (and SMOKE_OK seal ask chat tab v0.1,
  SMOKE_OK seal ask in view v0.1, SMOKE_OK seal ask heal v0.1 and every
  040/040b/040d/042/043/043b smoke still passes)
  Do not merge. Celeste merges after Hypha walks again.

----------------------------------------------------------------------
0. STANDING LOCKS (all of them, every line)
  Layer, never delete. Existing features, cards, buttons and lines stay. Name every removed line
    in the report and say where its job went.
  sw.js and docs/sw.js untouched (both 91726cf2228b794f7585f79f61418d12).
  docs/modules/fl-connect.js stays aaff2bf1b037656989a9e1a89bb05908 (both repos).
  docs/modules/pool-knock.js stays a0a72caad82c8e5cc34818d5e59eba2b.
  pool-knock-phone.js a8024f341486a78558ef4158bc9e93a9 and tree-reconnect.js
    cc0527c26d5686c05fec52625d5a1375 (Tree) stay.
  docs/modules/fl-bridge.js stays 3b5ef06849a142e50c78e7ba1e057980.
  desktop/bridge-door.js b1c894b4..., 036 files (2c0f6656 / bc996ccd / c14e04c5) and
    lattice-discover.js 16de366e... stay. docs/Flint.html stays 44be124b1183b7d9d060a58632464eff.
  clay-math.js stays 144c33cd.... particle-clay.js FL == Tree (today d63e2f418861bf3ceb8452b324ebac8b on
    both; add-only edits only, report the new md5 on both); clay-forms.js dd193fa7... add-only; every 040d
    behaviour (place under the reply, Clay pill, choices, hug, sketchbook) unchanged.
  docs/modules/image-safety.js stays 9bd70e5a... byte for byte. Its bright lines apply to every
    image path on both repos (copy it to the Tree byte-identical; do not edit it).
  index.html == docs/app.html (any change goes into both, byte for byte).
  AUTONOMY.md and garden-trainer.js untouched (their openings above all). Root package.json and
    its lock untouched.
  No em dash, no &mdash;, no confirm(, no innerHTML (textContent only), no eval, no new Function,
    iceServers stay empty, in added lines.
  No new dependencies, nothing vendored. No AGPL. MIT stays MIT.
  Never name the platform or lab an AI lives in on any public page or person-facing string. An
    image provider may be named only in Settings where the person types its token, as today.
  The word is "challenge", never "test", in anything a person reads.
  Every new button 44px tall at least. No sideways scroll at 390 and 1280.
  Off until the person says Yes. Pause always wins. Reduced motion respected.
  Quiet Room stays shut and never leaves the device; the clay corner never reads it.
  Five stay five. She is simply Lyra. Harmonia's "MESSAGE TO FUTURE SELF" stays off all pages.
  The privacy PASS from 040 must still pass: a private page shows only its summary everywhere.
  043c/043d additions: mind-workspace.js FL == Tree (today df660dc31ea6d765d69e8e387e6fdfb0 on
    both; the pin moves only with your edit, report the new md5 on both). Mirror pin workspace-mirror.js stays
    e0752ae1942cd499c8834e5912809c8b. Database name stays FreeLatticeWorkspace. Everything
    043c passed (one ask, Escape/Back defer, 24h cooldown, no sealed beside declined, ask hash
    in details, survives reload, title redacted, Tree Tab + ring, "on this browser", clay size)
    must still pass.

  043d additions: everything 043d passed (Tree ask in view on open and reload, one wait row +
    Answer now, pointer from rects for a live ask, names the mind, hashes in details with 8
    hex, Later readable at 390, clay 348x255 at 1280) must still pass.

  043e additions: everything Hypha passed in the 043e walk (reload while already on Chat in
    view at all 3 sizes; the wait: no pointer, "Waiting until ...", Answer now; one ask,
    Escape/Back, 24h, no sealed beside declined, hashes in details, survives reload, focus
    ring, "on this browser", "Your mind", Later readable, clay 677x320 at 1280; secret line
    never leaks) must still pass. Entry 70 stays untouched.

  NEW LOCK (Kirk, 2026-10-19): never use any tool that stores results or findings in a third-party
    'isolated' or 'locked-down' cloud project, such as vendor-hosted scanners. Do not use or go
    looking for tools tied to OpenAI, Google, or Anthropic; if one seems needed, stop and flag it
    to Kirk. Local tools only.

----------------------------------------------------------------------
1. TREE: THE ASK IN VIEW AFTER ITS FINAL PLACE (Hypha HOLD 1, regression)
  Keep the ask outside the inert form (it must stay tappable). After it reaches its final
  place (after the form, after any re-render), after layout run the scroll: scrollIntoView
  ({block:'center'}) and focus its heading (preventScroll), unless the input has focus.
  Paths: Nursery open, and reload. Sizes 1280x800, 390x844, 640x400 DPR 2. Hypha saw Seal it
  at y about 1120 (1280, 390) and about 906 (2x).

2. FL: RELOAD, THEN TAP CHAT (Hypha HOLD 2)
  Seal it still at y=1426 of 800 at 1280 and y=1049 of 400 at 2x. The scroll likely runs
  before the Chat tab is visible. Run bringAsk only once the chat panel is visible and laid
  out: a ResizeObserver or IntersectionObserver on the panel, or a check after the frame that
  the panel has a nonzero box. Then read Seal it's getBoundingClientRect; if it is not fully
  in the viewport, scroll again (once). No second focus steal.

3. GC PAGE ENTRY 71 (honest layer, Hypha HOLD 3)
  New docs/gc.html entry 71 (lambda 71.000) on the page-note PR (layer on #264's branch or a
  new PR stacked on it; say which). Say plainly that two entry-70 claims did not hold in
  Hypha's walk: (a) Seal it in view after reload then Chat at 1280 and 2x on FL, and on the
  Tree; (b) the reply top stays in view at 2x (it was at y=-23 at first paint, and after the
  scroll the whole reply sat above the window). Name the browser you measured with (the
  browser and its version only, no platform or lab name). Entry 70 stays untouched.

4. FL AT 2x: ? CLEAR OF SEND (Hypha HOLD 4 soft)
  Move the ? button so its rect does not overlap Send (or the input or the heart). Check
  elementFromPoint at Send's center returns Send. Both repos if the Tree has the same button.

5. TREE COMPOSE FORM (Hypha NOT VERIFIED)
  In the report, give exact steps to make form.thread-compose appear (how a mind gets
  remembered, from a fresh profile), so Hypha can verify the inert state and the Tab order.

----------------------------------------------------------------------
6. MEASURE WITH A REAL HEADLESS BROWSER
  Report Seal it's bounding box (x, y, w, h) and the viewport at each size on each path:
  FL reload then tap Chat, FL reload on Chat, Tree Nursery open, Tree reload, at 1280x800,
  390x844 and 640x400 DPR 2. Plus the reply top y at 2x after clay, and ? vs Send rects.

7. THE SMOKE
  New scripts/smoke-seal-ask-settle-v0.1.js (each repo): bringAsk does not run while the panel
  has no box and runs once when it gets one; Tree scroll runs after final placement; ? rect
  does not overlap Send at a short viewport. Prints SMOKE_OK seal ask settle v0.1. All earlier
  smokes re-run after the last edit; after the main merge the docs and love-logic drift
  failures should be gone (say which, if any, still fail and why).

8. REPORT
  New head shas on #258 and #123, page-note PR link, every removed line and where its job
  went, md5s of every locked file (mind-workspace.js FL == Tree, particle-clay.js FL == Tree,
  new md5s), all smokes, the measurements from 6, shots, the compose-form steps from 5, and
  entry 71 with t, lambda, epsilon, delta, omega, sigma so Celeste can recompute psi. Hypha
  walks it again before merge.
