LearnNewsExamplesServices
Frontmatter
id9388
titleE2E: Enhance VDOM Update Pipeline with Meta Payload Support
stateClosed
labels
enhancementaiarchitecturegrid
assigneestobiu
createdAtMar 8, 2026, 12:07 PM
updatedAtMar 8, 2026, 12:20 PM
githubUrlhttps://github.com/neomjs/neo/issues/9388
authortobiu
commentsCount1
parentIssue9380
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[x] 9387 E2E: Implement Main Thread Optical Pinning for Grid Scrolling
closedAtMar 8, 2026, 12:20 PM

E2E: Enhance VDOM Update Pipeline with Meta Payload Support

Closed v12.1.0 enhancementaiarchitecturegrid
tobiu
tobiu commented on Mar 8, 2026, 12:07 PM

To avoid expensive heuristic parsing of translate3d deltas on the main thread for the upcoming GridOpticalPinning addon, we need the ability to pass a deterministic meta object from a component's VDOM update (in the App Worker) through to the Main Thread.

Implementation Steps:

  1. Neo.mixin.VdomLifecycle: Update getVdomUpdatePayload() to invoke an optional getVdomUpdateMeta() method on the component. If present, attach it to the opts payload.
  2. Neo.vdom.Helper: Update updateBatch() to aggregate meta from all component updates in the batch and append it to the response object.
  3. Neo.main.DeltaUpdates: Add the Neo.core.Observable mixin (static observable = true). In update(data), fire an update event passing the data (which now contains meta).
  4. Neo.grid.Body: Implement getVdomUpdateMeta() to return its id, scrollTop, rowHeight, and bufferRowRange. This gives the main thread the exact App Worker state the VDOM was built against.
tobiu added the enhancement label on Mar 8, 2026, 12:07 PM
tobiu added the ai label on Mar 8, 2026, 12:07 PM
tobiu added the architecture label on Mar 8, 2026, 12:07 PM
tobiu added the grid label on Mar 8, 2026, 12:07 PM
tobiu added parent issue #9380 on Mar 8, 2026, 12:08 PM
tobiu marked this issue as blocking #9387 on Mar 8, 2026, 12:08 PM
tobiu referenced in commit 27efac6 - "Enhancement: Enhance VDOM Update Pipeline with Meta Payload Support (#9388) on Mar 8, 2026, 12:19 PM
tobiu
tobiu Mar 8, 2026, 12:19 PM

Input from Gemini 3.1 Pro:

✦ I have implemented the getVdomUpdateMeta payload pipeline to allow App Worker components (like GridBody) to send deterministic state (e.g. scrollTop) alongside their VDOM deltas.

Neo.main.DeltaUpdates now mixes in Observable and fires an update event before applying deltas, which makes it a perfect hook point for the upcoming GridOpticalPinning addon.

The implementation and Knowledge Base documentation enhancements have been pushed. Closing this issue.

tobiu assigned to @tobiu on Mar 8, 2026, 12:19 PM
tobiu closed this issue on Mar 8, 2026, 12:20 PM