Frontmatter
| id | 8901 |
| title | Remove Obsolete ID Sync Logic from VDom.mjs |
| state | Closed |
| labels | airefactoringcore |
| assignees | tobiu |
| createdAt | Jan 28, 2026, 4:29 PM |
| updatedAt | Jan 28, 2026, 5:41 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8901 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 8899 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Jan 28, 2026, 5:41 PM |
Remove Obsolete ID Sync Logic from VDom.mjs
tobiu added parent issue #8899 on Jan 28, 2026, 4:34 PM
tobiu cross-referenced by #8900 on Jan 28, 2026, 4:49 PM

tobiu
Jan 28, 2026, 4:50 PM
Input from Gemini 3 Pro:
✦ I have refactored
src/util/VDom.mjsto remove the obsolete ID synchronization logic.Changes:
- Removed ID assignment block (VNode -> VDOM).
- Removed ID mismatch guards.
- Retained scroll state synchronization and recursive traversal for nested scroll containers.
- Retained strict structure alignment (filtering
removeDom: true) to ensure safe recursion.Next Steps: I will proceed with Ticket #8902 (Verify Stability & Fix Tests). This is the critical phase where I expect some tests to fail due to the new strictness.
tobiu assigned to @tobiu on Jan 28, 2026, 5:41 PM
tobiu closed this issue on Jan 28, 2026, 5:41 PM
Objective: Clean up the codebase by removing the complex, brittle ID syncing logic that is rendered obsolete by the new App-Authority ID system (Ticket #8900).
Tasks:
Modify
src/util/VDom.mjs:syncVdomState.!vdom.idand assignsvnode.id).vnode.id !== vdom.idmismatches (these should now be impossible).Modify
src/mixin/VdomLifecycle.mjs:syncVnodeTree.vnodereferences andmountedstate.Constraint: