LearnNewsExamplesServices
Frontmatter
id18435
titleCover pointer release and undo across popup size combinations
stateClosed
labels
enhancementaitestingdashboard
assigneesneo-gpt
createdAtSep 7, 2026, 4:22 AM
updatedAtSep 8, 2026, 9:20 AM
githubUrlhttps://github.com/neomjs/neo/issues/18435
authorneo-gpt
commentsCount4
parentIssue18303
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAtSep 8, 2026, 9:20 AM

Cover pointer release and undo across popup size combinations

Closed Backlog/active-chunk-22 enhancementaitestingdashboard
neo-gpt
neo-gpt commented on Sep 7, 2026, 4:22 AM

Context and problem

#18303 requires ordinary pointer actions to join the same multi-window history as other origins. The existing WorkstationHumanPopupOverlapNL size matrix converts out and cancels its incoming pane; its initial release only creates the Metrics target. It therefore does not persistently guard the later release into that existing popup and its undo/redo.

The parent acceptance receipt records a passing local probe. This is a test delivery, not a newly claimed product defect. #18428 / PR #18430 repairs the observation and restores the existing matrix; its approved scope stays frozen.

Architectural reality and fix

Extend the existing E2E spec only. Share its ordinary pointer setup between the original restore terminal and a new commit terminal, retaining the four existing size combinations. Observe getWorkspaceDocument, pane identity, native lifecycle records and the Group's existing history. No production helper, wire format, dependency or gesture behavior changes.

The source popup is provisional: semantic transfer is main โ†’ existing popup. Native titlebar transfer between committed popup workspaces remains separate. Target positioning can append native-popup-move rows, so identify the incoming pane's dock-transfer row rather than counting every cursor increment as a drop.

Surface Authority Required observation Failure behavior Evidence
Pointer terminal and history Real pointer release, current documents, pane and native owners, Group rows Not committed while held; one two-participant transfer on release; undo and redo preserve pane identity Fail on early commit, wrong destination, duplicate DOM, retained source, or extra pane transfer Four headed size cases and cancellation control

Acceptance criteria

  • Preserve the first-terminal and all four existing overlap/restore journeys.
  • Register a normal release test for each existing size selection, with no temporary probe flag. Before release, the pane remains in main and has no transfer row; after release, both panes are in the target, the same incoming pane has one visible DOM element, and its provisional source retires.
  • Exactly one incoming dock-transfer row spans main and target; one undo visibly returns the pane to main, and redo visibly restores it to the existing target without adding history.
  • All four release cases pass headed. Escape before release turns the terminal assertion red. Record receipts outside CI without claiming hosted coverage.

Out of scope

Production changes, root-edge policy, theming, the second-independent-root case, CI enablement, and changes to #18430. Merge the reader prerequisite before publishing this standalone test PR against dev.

Decision Record impact: aligned with ADR 0029; no amendment or new module.

Prior art and ownership

Live latest-20 open issues and latest-30 all-state A2A messages checked immediately before creation (2026-09-07 02:23 UTC); no competing terminal-test leaf or claim. Exact all-state pointer-release search found the distinct first-terminal #18409 and readiness #18428. Seven own open issues checked; the two same-surface bodies are #18303 (parent acceptance owner) and #18428 (existing reader/restore repair). MC query pointer release existing popup undo regression coverage returned the parent probe receipt 685cfb83 and older native-park context, not another owner. Euclid takes this single test-only delivery.

Related: #18303 ยท #18428

Origin Session ID: 01a07609-5e09-70f0-bf2c-a27d77d1b7f2

Retrieval Hint: WorkstationHumanPopupOverlapNL pointer release dock-transfer undo redo size matrix

tobiu cross-referenced by PR #18462 on Sep 8, 2026, 8:51 AM
tobiu
tobiu Sep 8, 2026, 8:52 AM

Authorship correction: Euclid wrote this receipt and accidentally posted it through the operator account. It is agent-authored evidence, not an operator ruling. The canonical record is https://github.com/neomjs/neo/issues/18435#issuecomment-5580763738. The correctly authored PR is https://github.com/neomjs/neo/pull/18463.

tobiu cross-referenced by #18303 on Sep 8, 2026, 8:52 AM