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
{{ message }}
Repository navigation
Bound form and fieldset structural validity invalidation #713
Active implementation checkpoint — 19 September 2026
Exact upstream heads are WebScene e3c1ba2fb2e41483a8a66166972d2a41e8f69a68 and AppScene acf42662309ea601720ed07c440cf183d7c73fe3; unchanged Code OSS is 645f29cc3176500b4b5762ba887cf2a7f0ffdf2c. Local vscode-demo is b70edc763905f3837e398689c401651f6613d857, clean and intentionally unpushed with Actions disabled.
One-agent mode is enforced. No other implementation agent is active. Reusable runtime behavior continues to land in WebScene or AppScene; unchanged Code OSS remains pinned. The latest retained WebScene current-main runs are CI 35458562334 and NuGet 35458562327 for e3c1ba2f. Focused PR, previous-main, and consolidation runs are cancellation-requested; full package, WPT, performance, visual, physical-platform and VM qualification remains deferred under the fast implementation directive.
After the active form stack: 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.
Moving controls between forms/fieldsets, toggling disabled fieldsets and legends, or changing form-owner ancestry can change validity and :valid/:invalid matches without changing the control itself. Complete bounded ancestor/owner invalidation without whole-document recascade.
Scope
Track form/fieldset/legend ownership dependencies and dirty only affected controls plus aggregate ancestors.
Handle insertion, removal, reparenting, form attribute/id changes, disabled fieldset/first-legend changes, and form-associated custom elements.
Coalesce one structural mutation batch into bounded style/layout/semantic publications.
Preserve radio-group and submission aggregation behavior already merged.
No polling, full-tree rescans per mutation, sustained frames, or Code OSS changes. Diff-check-only implementation is allowed under the current fast directive; browser/WPT/performance/package gates remain deferred.
Active implementation checkpoint — 19 September 2026
Exact upstream heads are WebScene
e3c1ba2fb2e41483a8a66166972d2a41e8f69a68and AppSceneacf42662309ea601720ed07c440cf183d7c73fe3; unchanged Code OSS is645f29cc3176500b4b5762ba887cf2a7f0ffdf2c. Local vscode-demo isb70edc763905f3837e398689c401651f6613d857, clean and intentionally unpushed with Actions disabled.Focused merge stacks
e3c1ba2f. Ordered successors are Implement CustomStateSet and :state() matching #715 CustomStateSet/:state(), Expose live form.elements collections and named access #716 liveform.elementsand named access, Persist bounded form history and autofill state #717 bounded form history/autofill, and Wire validation localization into the Flutter engine bridge #722 Flutter validation localization. These remain open.c7712d37019211b6ced379bd9f96629890a61d67; 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 other implementation agent is active. Reusable runtime behavior continues to land in WebScene or AppScene; unchanged Code OSS remains pinned. The latest retained WebScene current-main runs are CI
35458562334and NuGet35458562327fore3c1ba2f. Focused PR, previous-main, and consolidation runs are cancellation-requested; full package, WPT, performance, visual, physical-platform and VM qualification remains deferred under the fast implementation directive.After the active form stack: 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: #257
CSS epic: #235
Release epic: #227
Gap
Moving controls between forms/fieldsets, toggling disabled fieldsets and legends, or changing form-owner ancestry can change validity and
:valid/:invalidmatches without changing the control itself. Complete bounded ancestor/owner invalidation without whole-document recascade.Scope
No polling, full-tree rescans per mutation, sustained frames, or Code OSS changes. Diff-check-only implementation is allowed under the current fast directive; browser/WPT/performance/package gates remain deferred.