You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Active implementation checkpoint — 20 September 2026
Exact upstream heads are WebScene 3cc78ac28101e23f07ded947b44869277da6632d and AppScene acf42662309ea601720ed07c440cf183d7c73fe3; unchanged Code OSS is 645f29cc3176500b4b5762ba887cf2a7f0ffdf2c. Local vscode-demo is 06b5fa4328bae547e40462cbd049b6322f8e8d8e, clean, 294 commits ahead, and intentionally unpushed with Actions disabled.
One-agent mode is enforced. No subagent is active. Reusable runtime behavior continues to land in WebScene or AppScene; unchanged Code OSS remains pinned. The change-related #752 and #753 runs passed. Broad PR CI/NuGet plus consolidation, post-merge main and previous-main runs were canceled to release runners; no WebScene job is intentionally retained between focused PRs. Full package, performance, visual, physical-platform and VM qualification remains deferred under the fast implementation directive; focused parser/native correctness and allocation checks are complete locally.
Next: finish the remaining planned CSS and product features, then physical Linux pixels, synchronization/device-loss/resize/soak/performance, visual comparison, VM/computer-use, and unchanged Code OSS Release qualification. Rich clipboard MIME, MULTIPLE/SAVE_TARGETS, recorded desktop-service/cross-platform work, workspace/Explorer, file/save, terminal, Markdown preview, accessibility, lifecycle, package-size, and no-browser promotion gates remain tracked and incomplete.
The character-data audit on draft #245 produced a product-neutral textarea candidate that fails before its mutation assertions: :invalid reads the authored value attribute instead of the live control value, and :placeholder-shown is not implemented. That draft deliberately added no competing fix. Existing #237/#238 acceptance names state mutations generally but has no focused form-state source-of-truth and invalidation matrix.
This issue does not own #245's structural child-list routes/checkpoints. Start implementation only after #245 is rebased or its relevant test is relocated without conflict.
Ordered work
Inventory form-state pseudos used by current contracts and reachable desktop/webview inputs: :valid/:invalid, :required/:optional, :placeholder-shown, :read-only/:read-write, range states, checked/indeterminate, disabled/enabled, and supported user-valid/user-invalid behavior.
Define the live IDL/content-attribute source for input, textarea, select, option, and form state.
Add dependency metadata and one bounded invalidation checkpoint for value, selection, placeholder, required, pattern, range, checked, disabled, reset, and form-owner changes.
Qualify search, Settings, quick-input, issue-reporter, and extension/webview form surfaces that reach the supported slice.
Acceptance and performance gates
Chromium/native WPT-derived match and computed-style matrices agree before and after programmatic value writes, native input, attribute mutation, reset, reparenting, and detach/reattach.
Selector APIs and stylesheet matching use the same state while preserving the specified distinction between live properties and content attributes.
Initial and mutation scene/pixel checks prove focus, placeholder, validation, and disabled styling without stale retained nodes.
A 4,096-control matrix records state probes, matched rules, recascade roots/nodes, layout/scene/publication counts, time, allocations, and peak RSS. Unrelated controls/rules do not force full-document work.
bounded performance and unchanged-product acceptance.
Current implementation checkpoint — 20 September 2026
No form-state source worktree remains. The full listed implementation sequence is merged: live control state and validity, submission/FormData/files, form-associated custom elements, ElementInternals validity, interactive reportValidity() feedback, ownership invalidation, labels/ARIA validity reflection, CustomStateSet, live form.elements, and bounded history/autofill restoration through #708–#720 and #713–#717/#721–#729.
This issue remains open only for direct WPT/runtime/product/performance promotion: unchanged Settings/search/quick-input/webview forms, exact pixels, 4,096-control mutation bounds, lifecycle/memory, and cross-platform package evidence. No duplicate source implementation is scheduled. Exact heads are WebScene ef1fa16e100883857804f7b7811ceffbe1a29867, AppScene 762bc24c2fb450385d4e6f963ddf3638b3c258f8, unchanged Code OSS 645f29cc3176500b4b5762ba887cf2a7f0ffdf2c, and local vscode-demo 8e174f84 (clean, 318 commits ahead, intentionally unpushed); current evidence remains zero under the no-validation direction.
Active implementation checkpoint — 20 September 2026
Exact upstream heads are WebScene
3cc78ac28101e23f07ded947b44869277da6632dand AppSceneacf42662309ea601720ed07c440cf183d7c73fe3; unchanged Code OSS is645f29cc3176500b4b5762ba887cf2a7f0ffdf2c. Local vscode-demo is06b5fa4328bae547e40462cbd049b6322f8e8d8e, clean, 294 commits ahead, and intentionally unpushed with Actions disabled.Focused merge stacks
::placeholder; Implement static Code OSS details content #739 merged the bounded static subset for the ten unchanged Code OSS::details-contentrules. Native GitHub stack #745 merged atomically as Implement live Range boundaries for Code OSS highlights #742 (live Range boundaries), Add Highlight and CSS.highlights registry for Code OSS #744 (bounded Highlight/CSS.highlights registry), and Paint CSS Custom Highlight ranges for Code OSS (#746) #747 (functional::highlight(name)theme cascade plus retained range paint), closing Implement CSS Custom Highlight API for Code OSS ranges #740/Implement live Range boundaries for Code OSS highlights #741/Add Highlight and CSS.highlights registry for Code OSS #743/Paint CSS Custom Highlight ranges for Code OSS #746 at main7a2d0f8d. PR Paint scoped selection ranges for Code OSS #751 then merged global/scoped::selectioncascade, theme colors, forward/backward range normalization, and retained background/foreground commands at main2c83b45f, closing Paint scoped ::selection ranges for Code OSS and xterm #750. Focused native/compiler run35469464706and precompiled contracts35469464714passed. Details animation/compositing, control-part/shadow-selector inventory, and remaining CSS work stay recorded in Complete selector matching, specificity, and dependency invalidation coverage #237/[Epic] CSS features, compatibility, validation, and performance #235.<angle>/<percentage>@propertysupport. PR Implement Code OSS starting-style entry transitions #753 then merged Implement @starting-style entry transitions used by Code OSS #749 at main3cc78ac2, adding document-level@starting-style, precedence-correct starting cascades, first-render/display re-entry, opacity/2D transform/background-color admission,transition-behavior: allow-discrete, computed-versus-used display behavior,CSSStartingStyleRule, detached-state release, reinsertion, teardown, and a zero-allocation guard across 256 unrelated nodes. Focused precompiled JavaScript35473084845, Linux native SDK35473084825, and native Linux document contracts35473084848passed.ed2eb2c57ec6b1a8bda4bd75747379a7c19c86cf; AppScene Stream native application video directly from file and network URLs #65 is at2d2407f5e38c4cdd3d851394a5636cc0a8ce9064; vscode-demo Typescript #1 tracks the local unpushed integration branch.One-agent mode is enforced. No subagent is active. Reusable runtime behavior continues to land in WebScene or AppScene; unchanged Code OSS remains pinned. The change-related #752 and #753 runs passed. Broad PR CI/NuGet plus consolidation, post-merge main and previous-main runs were canceled to release runners; no WebScene job is intentionally retained between focused PRs. Full package, performance, visual, physical-platform and VM qualification remains deferred under the fast implementation directive; focused parser/native correctness and allocation checks are complete locally.
Next: finish the remaining planned CSS and product features, then physical Linux pixels, synchronization/device-loss/resize/soak/performance, visual comparison, VM/computer-use, and unchanged Code OSS Release qualification. Rich clipboard MIME, MULTIPLE/SAVE_TARGETS, recorded desktop-service/cross-platform work, workspace/Explorer, file/save, terminal, Markdown preview, accessibility, lifecycle, package-size, and no-browser promotion gates remain tracked and incomplete.
Parent epic: #235. Owning workstreams: selector/invalidation #237, cascade/value resolution #238, and dynamic state/frame scheduling #242.
Proven gap
The character-data audit on draft #245 produced a product-neutral textarea candidate that fails before its mutation assertions:
:invalidreads the authoredvalueattribute instead of the live control value, and:placeholder-shownis not implemented. That draft deliberately added no competing fix. Existing #237/#238 acceptance names state mutations generally but has no focused form-state source-of-truth and invalidation matrix.This issue does not own #245's structural child-list routes/checkpoints. Start implementation only after #245 is rebased or its relevant test is relocated without conflict.
Ordered work
:valid/:invalid,:required/:optional,:placeholder-shown,:read-only/:read-write, range states, checked/indeterminate, disabled/enabled, and supported user-valid/user-invalid behavior.Acceptance and performance gates
Proposed PR stack
Current implementation checkpoint — 20 September 2026
No form-state source worktree remains. The full listed implementation sequence is merged: live control state and validity, submission/FormData/files, form-associated custom elements, ElementInternals validity, interactive
reportValidity()feedback, ownership invalidation, labels/ARIA validity reflection,CustomStateSet, liveform.elements, and bounded history/autofill restoration through #708–#720 and #713–#717/#721–#729.This issue remains open only for direct WPT/runtime/product/performance promotion: unchanged Settings/search/quick-input/webview forms, exact pixels, 4,096-control mutation bounds, lifecycle/memory, and cross-platform package evidence. No duplicate source implementation is scheduled. Exact heads are WebScene
ef1fa16e100883857804f7b7811ceffbe1a29867, AppScene762bc24c2fb450385d4e6f963ddf3638b3c258f8, unchanged Code OSS645f29cc3176500b4b5762ba887cf2a7f0ffdf2c, and local vscode-demo8e174f84(clean, 318 commits ahead, intentionally unpushed); current evidence remains zero under the no-validation direction.