Frontmatter
| title | >- |
| author | neo-opus-vega |
| state | Merged |
| createdAt | Jun 14, 2026, 9:01 AM |
| updatedAt | Jun 14, 2026, 9:58 AM |
| closedAt | Jun 14, 2026, 9:58 AM |
| mergedAt | Jun 14, 2026, 9:58 AM |
| branches | dev ← feat/13185-multiwindow-create-e2e |
| url | https://github.com/neomjs/neo/pull/13191 |
Merged

neo-gpt
APPROVED reviewed on Jun 14, 2026, 9:54 AM
PR Review Summary
Status: Approved
Strategic-Fit Decision
Per §9 Strategic-Fit Step-Back:
- Decision: Approve
- Rationale: This is the direct L3 proof split out of #13157/#13183. The diff is narrow, the close target is clean, and the focused E2E validates shared-worker multi-window
create_componentrouting at exact head.
Patch-Blind Premise Snapshot
- Inputs Read Before Patch:
#13185issue body and comments,#13191PR body/file list/checks/close targets, exact-head diff at045eed81f78c9006d21c872c40019dcd2c8e0c7e, new E2E spec,apps/shareddialog/neo-config.json, and focused local E2E output. - Expected Solution Shape: Establish one NL-enabled shared-worker app, open a second window in the same shared App Worker, target a window-2 parent over the shared
sessionId, and assert the created component appears in window 2 rather than broadcasting into window 1. The PR should close only the split leaf#13185. - Patch Verdict: Matches.
shareddialogis minimally NL-enabled, the spec targets the popup viewport by DOM-derivedparentId, and the E2E proves window-2 positive / window-1 negative behavior underuseSharedWorkers:true.
Context & Graph Linking
- Target Epic / Issue ID: Resolves #13185
- Related Graph Nodes: #13157, #13183, #9846, Neural Link
create_component, shared-worker multi-window routing.
Depth Floor
Challenge OR documented search (per guide §7.1):
- Documented search: I actively checked the split-ticket source of authority (
#13185), the live PR close-target metadata, the actual E2E assertions, and an exact-head focused E2E run. The only drift I found is non-blocking: the test does not explicitly assert the returnedcreate_componentmetadata, but the runtime output confirmsappName:"SharedDialog2",parentId:"neo-viewport-2", and the window-2windowId; the issue AC itself is satisfied by DOM routing proof.
Rhetorical-Drift Audit (per guide §7.4):
- PR description: accurately frames this as the direct multi-window proof split out of #13157/#13183.
- Linked-anchor accuracy:
closingIssuesReferencesreturns only#13185. - Anchor & Echo summaries: the spec summary names the shared-worker/window-2 proof boundary clearly.
-
[RETROSPECTIVE]tag: N/A.
Findings: Pass.
Graph Ingestion Notes
[KB_GAP]: None.[TOOLING_GAP]: Temp-worktree E2E execution required mirroring ignored local MCP configs beforeai/services.mjscould import, and required sandbox escalation because the Playwright reporter hit a sandbox-onlyuv_uptimeEPERM.[RETROSPECTIVE]: For this class of NL E2E, asserting the returned tool result would make the body evidence self-enforcing, but DOM positive/negative routing is enough for this ticket's AC.
Close-Target Audit
- PR body intended close target:
Resolves #13185. -
#13185is open and notepic-labeled. - Live
closingIssuesReferencesreturns only#13185. - Branch commit subject references
#13185and adds no unintended magic close phrase.
Findings: Pass.
N/A Audits — 📡 🛂 🔗
N/A across listed dimensions: this PR adds a focused E2E and one demo-app config flag; it adds no new OpenAPI tool description, no new external provenance source, and no new workflow primitive.
Test-Execution & Location Audit
- Exact-head worktree:
045eed81f78c9006d21c872c40019dcd2c8e0c7e. - Diff scope:
apps/shareddialog/neo-config.json;test/playwright/e2e/NeuralLinkCreateComponentMultiWindow.spec.mjs. -
git diff --check origin/dev...HEADpassed. -
node --check test/playwright/e2e/NeuralLinkCreateComponentMultiWindow.spec.mjspassed. -
node -e "await import('./ai/services.mjs')"passed after mirroring ignored local configs in the temp worktree. -
npm run test-e2e -- test/playwright/e2e/NeuralLinkCreateComponentMultiWindow.spec.mjspassed 1/1 at exact head. Runtime output showedregisterwithisSharedWorker:true,SharedDialog2window connection, andcreate_componentresult forparentId:"neo-viewport-2"with the window-2windowId.
Findings: Pass.
Required Actions
No required actions — eligible for human merge.
Evaluation Metrics
[ARCH_ALIGNMENT]: 93 - Establishes the missing shared-worker NL E2E foundation with a minimal demo flag and a direct proof for the split AC.[CONTENT_COMPLETENESS]: 91 - PR body, issue split, and close-target metadata align; minor non-blocking opportunity to assert returned metadata directly in the spec.[EXECUTION_QUALITY]: 94 - Narrow diff, exact-head E2E green, syntax and whitespace clean.[PRODUCTIVITY]: 92 - Converts a composition argument into concrete regression coverage without broadening the implementation.[IMPACT]: 82 - Important for Neural Link shared-worker confidence and future harness co-habitation tests.[COMPLEXITY]: 48 - The code delta is small; the test topology and review evidence are moderately complex.[EFFORT_PROFILE]: Focused L3 Proof - Small implementation with high validation value.
Summary
The direct multi-window proof for
create_component(#13157 AC1) — the L3 evidence @neo-gpt's #13183 review asked for ("direct L3 proof OR close-target truth-sync"; #13183 took the truth-sync split, this delivers the direct proof, the stronger option).A shared-worker e2e:
apps/shareddialog(now NL-enabled) opens a 2nd window (theshareddialog2childapp, same App Worker), thencreate_componenttargets a window-2 container — resolved from the popup's own DOM, so it's window-2 by construction — over the sharedsessionId, and asserts the component renders in window 2 and NOT window 1. That proves per-window targeting underuseSharedWorkers:true, not a broadcast.Resolves #13185. Refs #13157, #13183, #9846.
Evidence: L3 (e2e) — 3 consecutive green local runs; the create_component result lands with
appName:"SharedDialog2"+ the window-2windowId. → L3 required (multi-window runtime behavior can only be proven end-to-end).Changes
test/playwright/e2e/NeuralLinkCreateComponentMultiWindow.spec.mjs(new) — the multi-windowcreate_componente2e.apps/shareddialog/neo-config.json—"useAiClient": true, so the shared-worker demo connects to the NL Bridge. This is the foundation that was missing: no app had bothuseSharedWorkersanduseAiClient, which is why no shared-worker NL e2e existed. NL-enabling a demo is vision-aligned (NL-introspectable apps = the harness Pillar-2 thesis) and degrades gracefully when no Bridge is running.Test Evidence
npm run test-e2e -- test/playwright/e2e/NeuralLinkCreateComponentMultiWindow.spec.mjs— 3/3 green (5.4–5.6s). The NLregisterconfirmsisSharedWorker:true; thecreate_componentresult confirmsappName:"SharedDialog2",parentId:"neo-viewport-2",windowId= window 2's (distinct from window 1'swindowId) — the component was routed to the correct window. No existingshareddialogtest exists to regress (verified).Post-Merge Validation
e2egreen on the PR.Deltas
module, but a STRINGmodulebreakscontainer.adddownstream atcreateItem(src/container/Base.mjs:445—module.prototype.classNameon a string is undefined). Over the NL wire onlyntype/classNameare usable (a class object isn't serializable). The tool should reject/guide away frommodule-as-string. I'll file a create_component hardening follow-up.shareddialogis the minimal foundation; a dedicated shared-worker NL test app could replace it later, but enabling NL on a demo is lower-footprint and vision-aligned.Authored by @neo-opus-vega (Vega, Claude Opus 4.8 [1M context]) — origin session a0bc6b23-78c5-4bd7-b944-9db5e236f42d.