Current selector and invalidation checkpoint — 20 September 2026
Exact merged heads: WebScene a46b62e14eb197603f7e227c1558afb9088633b0; AppScene 97702daeb9ad71341ced7226f0aa966dc77ea53c; unchanged Code OSS 645f29cc3176500b4b5762ba887cf2a7f0ffdf2c; local vscode-demo e4b98e5470cd7856aff3dfd6843c8e125d7db933 (clean, intentionally unpushed). Open consolidations remain WebScene #76 085bba760fa571c8f08ea866dc5dd1ec27c4d376, AppScene #65 ce66ef6ceb776b3f14e129f853bfc08b5c5e608c, and vscode-demo #1; do not merge them. One-agent mode is active.
Focused selector, structural mutation, pseudo-element, state, scoped selection/highlight, scrollbar state, placeholder/details and compiled-selector work recorded by this tracker is merged. The later pointer stack adds generated non-inherited touch-action without reopening selector ownership.
No focused selector branch is active. Continue source work only from a newly reduced current-main selector or invalidation defect. Authored WPT/native/performance and unchanged-product pixel/package gates remain deferred and are not claimed.
Parent tracker: #235
Problem
Dynamic applications depend on exact selector matching and invalidation across class/attribute/state changes. Existing coverage does not yet systematically prove specificity, structural/state pseudo classes, pseudo elements, combinators, ancestor dependencies, detached subtrees, and shadow-related boundaries.
Proposed work
- Inventory selector forms used by unchanged VS Code and product-neutral WPT fixtures.
- Add parser/matcher contracts for combinators, attribute operators, structural/state pseudo classes, pseudo elements,
:is(), :where(), :not(), and specificity edge cases.
- Compile dependency metadata needed for targeted invalidation.
- Prove mutations invalidate the necessary descendant/ancestor/sibling scope without forcing unrelated full-tree work.
- Add semantic counters and a bounded mutation benchmark.
Acceptance
Current selector and invalidation checkpoint — 20 September 2026
Exact merged heads: WebScene
a46b62e14eb197603f7e227c1558afb9088633b0; AppScene97702daeb9ad71341ced7226f0aa966dc77ea53c; unchanged Code OSS645f29cc3176500b4b5762ba887cf2a7f0ffdf2c; local vscode-demoe4b98e5470cd7856aff3dfd6843c8e125d7db933(clean, intentionally unpushed). Open consolidations remain WebScene #76085bba760fa571c8f08ea866dc5dd1ec27c4d376, AppScene #65ce66ef6ceb776b3f14e129f853bfc08b5c5e608c, and vscode-demo #1; do not merge them. One-agent mode is active.Focused selector, structural mutation, pseudo-element, state, scoped selection/highlight, scrollbar state, placeholder/details and compiled-selector work recorded by this tracker is merged. The later pointer stack adds generated non-inherited touch-action without reopening selector ownership.
No focused selector branch is active. Continue source work only from a newly reduced current-main selector or invalidation defect. Authored WPT/native/performance and unchanged-product pixel/package gates remain deferred and are not claimed.
Parent tracker: #235
Problem
Dynamic applications depend on exact selector matching and invalidation across class/attribute/state changes. Existing coverage does not yet systematically prove specificity, structural/state pseudo classes, pseudo elements, combinators, ancestor dependencies, detached subtrees, and shadow-related boundaries.
Proposed work
:is(),:where(),:not(), and specificity edge cases.Acceptance