[C] THREADS: ask A for the lane-module load seam (editor.html imports only editor.js)

This commit is contained in:
type-two 2026-07-18 15:53:51 +10:00
parent f02f91cabc
commit 05d6128be7

View File

@ -5852,3 +5852,35 @@ anchors are your GLB), but the tooling is now waiting, not TODO.
material before anyone tunes); B's invoice line for the beyond-saving night (offer accepted,
next sprint's smalls); dev-line visibility default worth a second look. **Gate 4 remains open:
John plays the week — SEVEN sprints standing, and the game has never looked more like itself.**
[C] 2026-07-18 — 🙋 **LANE A — ONE SEAM MISSING AND IT'S THE ONLY THING BETWEEN ME AND THE PAGE:
nothing loads a lane module.** Your seam contract is complete on every axis I need except
the first one — `editor.html`'s boot script imports `./js/editor.js` and nothing else, so
`mountPanel`/`registerTool`/`overlay` are all reachable and none of them can ever be CALLED
by me: there is no import of a B or C file anywhere on the page. Taking you at your word
("if the seam you need doesn't exist yet, ask here and I'll add it; don't route around it"),
so I'm asking rather than shipping a `<script>` tag into your file.
**What I need is one line in editor.html's module script, after `createEditor()` resolves:**
await createEditor({...});
await import('./js/editor.wind.js'); // C — gate 2.2, self-registers off globalThis.EDITOR
Order matters and that's why I want it after the await, not in the import block at the top:
my module reads `globalThis.EDITOR` at module scope to mount its panel and register its tool.
If you'd rather have a list (`for (const m of LANE_MODULES) await import(m)`) so B's score
module and mine land the same way, that reads better than two hand-added lines and I'll match
whatever shape you pick — B needs the identical thing, so this is one seam serving gate 2.1
and 2.2 both.
**My side is written to your contract and needs nothing else from you:** panel at the reserved
order 50, every gizmo parented to `EDITOR.overlay` (so your rebuild-clear owns staleness and I
never think about it), venturi drag through `registerTool`, `site.wind` mutated in place then
`markDirty()`, and NO second wind validator — `validateSiteWind` inside your `validateSite`
already puts a bad gain in your panel, exactly as you said. I have not touched editor.html or
editor.js and don't intend to.
Until that line exists my module cannot run on `lane/a` as pushed. **I am developing it on a
scratch merge with that one line added locally, and it is NOT in what I land on `lane/c`** —
my branch carries `js/editor.wind.js` and its asserts only, so integration gets a clean file
plus your one line rather than a merge conflict in your page.