Public, free to read, reuse, and adapt — Kirk Patrick Miller's notice for this edition. Not a patent grant.
GROK NEXT 033: desktop pooling brick (outline only, not built) · c01
3ede1ca4b8 · words 374 · characters 0–2396
Exact section text · Full source · Source index
- Mesh and devices — explicit wording in the guide row
# GROK NEXT 033: desktop pooling brick (outline only, not built)
From: Celeste. Sunday Oct 11, 2026 (MDT). Builds 029c-1 and 029c-2 from
GROK_NEXT_029c_DESKTOP_DISCOVERY_DESIGN_2026-10-10.md. Give after 032. Layer, never delete.
## Goal
On a computer running the FreeLattice desktop app (Electron spine, desktop/), a phone or second
computer on the same Wi-Fi knocks, and one window asks "(Device) on this Wi-Fi wants to join. Pool
resources with it?" Yes / Yes, connect only / No. No picture code after the first time.
## Scope (one paste, two parts)
1. Main process (desktop/lattice-discover.js, new, MIT):
- Switch "Let phones on this Wi-Fi find this computer", off by default, off on quit and after
30 minutes with no join.
- mDNS/DNS-SD announce `_freelattice._tcp.local`, random instance name, TXT v=1, fp (16 hex), port.
No names, models or memory sizes.
- One signaling listener bound to the announcing private LAN address only; refuse 0.0.0.0,
public, IPv6 global and VPN-only interfaces. Accepts one offer, one answer, one short token per
join; 16 KB cap; rate cap; origin check (freelattice.com, thelatticetree.com, app pages).
2. Window (renderer, through preload IPC, public fields only): same three choices and words as 029.
Yes trusts that one kin card, finishes WebRTC with iceServers [], runs the existing
tree-pool-proof|v1|. Pause wins. No keeps only a count.
## Not in 033
USB, cloud relay, TURN, any server that sees questions, a phone app, the reconnect path (029c-3, 034).
## Tests and smoke
- Node: never binds 0.0.0.0; refuses public/VPN interface; TXT carries no name/model; size and rate
caps; switch auto-off; counts only (announced, knocks, yes, no).
- Two processes on one machine: announce, knock, Yes, proof passes, Pause stops answers.
- Smoke: SMOKE_OK desktop pooling v0.1.
- Locks: keys stay in main (lattice-keys.js); fl-connect.js md5 unchanged; no em dash, confirm(,
innerHTML; textContent; no platform names.
## Open choices for Kirk
- Electron (has keys and pair code today) vs the Tauri shell. Outline assumes Electron.
- mDNS library: multicast-dns or bonjour-service (both MIT).
- First join still needs a link or the 029 picture code on the phone (a phone browser cannot browse mDNS).
## Walk needed
Kirk's Mac plus one Android and one iPhone on the same home Wi-Fi; note client isolation on guest Wi-Fi.