@ccslabs/xtend 0.1.0-rc.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/README.md +4 -0
- package/catalog/component-catalog-coverage.js +2 -0
- package/catalog/epic13-package-export-lock.js +11 -1
- package/catalog/epic13-rmt-production-readiness.js +0 -1
- package/catalog/epic18-rmt-action-effect-runtime.d.ts +36 -0
- package/catalog/epic18-rmt-action-effect-runtime.js +249 -0
- package/catalog/epic18-rmt-app-platform-authoring.d.ts +39 -0
- package/catalog/epic18-rmt-app-platform-authoring.js +319 -0
- package/catalog/epic18-rmt-app-platform-fixture.d.ts +33 -0
- package/catalog/epic18-rmt-app-platform-fixture.js +221 -0
- package/catalog/epic18-rmt-app-platform-release-handoff.d.ts +30 -0
- package/catalog/epic18-rmt-app-platform-release-handoff.js +231 -0
- package/catalog/epic18-rmt-app-platform-tooling.d.ts +38 -0
- package/catalog/epic18-rmt-app-platform-tooling.js +242 -0
- package/catalog/epic18-rmt-component-template-primitives.d.ts +33 -0
- package/catalog/epic18-rmt-component-template-primitives.js +240 -0
- package/catalog/epic18-rmt-dom-descriptor-renderer.d.ts +35 -0
- package/catalog/epic18-rmt-dom-descriptor-renderer.js +232 -0
- package/catalog/epic18-rmt-event-routing-runtime.d.ts +35 -0
- package/catalog/epic18-rmt-event-routing-runtime.js +234 -0
- package/catalog/epic18-rmt-state-selector-runtime.d.ts +34 -0
- package/catalog/epic18-rmt-state-selector-runtime.js +216 -0
- package/catalog/epic18-rmt-surface-resource-graph-runtime.d.ts +36 -0
- package/catalog/epic18-rmt-surface-resource-graph-runtime.js +256 -0
- package/catalog/surface-manager-controller.js +5 -1
- package/catalog/surface-manager-materialization.js +7 -1
- package/catalog/surface-manager-overlay-bridge.js +41 -6
- package/catalog/surface-manager-workbench-fixture.js +1 -1
- package/catalog/surface-type-capability-matrix.d.ts +61 -0
- package/catalog/surface-type-capability-matrix.js +183 -0
- package/catalog/type-exports-rmt.js +37 -1
- package/catalog/type-exports.js +3 -3
- package/components/icon-packs/lucide.js +4 -0
- package/components/manifest.json +2 -0
- package/components/prism-rmt.d.ts +34 -0
- package/components/prism-rmt.js +130 -0
- package/components/xcards.js +15 -0
- package/components/xcode.d.ts +36 -1
- package/components/xcode.js +215 -20
- package/components/xfooter.js +17 -0
- package/components/xheader.js +14 -0
- package/components/xhero.js +16 -1
- package/components/xlink.js +97 -14
- package/components/xmasonry.js +15 -0
- package/components/xplayer.d.ts +44 -2
- package/components/xplayer.js +242 -15
- package/components/xrouter.js +27 -2
- package/components/xsection.js +15 -0
- package/components/xsidepanel.js +10 -2
- package/components/xsurfacemanager-controller.d.ts +2 -1
- package/components/xsurfacemanager-controller.js +27 -3
- package/components/xsurfacemanager.d.ts +2 -0
- package/components/xsurfacemanager.js +20 -8
- package/components/xsurfaceoverlay-bridge.d.ts +20 -5
- package/components/xsurfaceoverlay-bridge.js +114 -18
- package/components/xsurfaceportal.d.ts +29 -0
- package/components/xsurfaceportal.js +122 -0
- package/components/xsurfaceregion.d.ts +50 -0
- package/components/xsurfaceregion.js +285 -0
- package/components/xsurfacewindow.js +2 -1
- package/components/xtooltip.js +89 -23
- package/docs/README.md +222 -298
- package/docs/changelog.md +107 -0
- package/docs/component-catalog-coverage.md +9 -9
- package/docs/component-platform.md +19 -1
- package/docs/component-ux-app-authoring.md +56 -63
- package/docs/components/xcode.md +83 -53
- package/docs/components/xsurfaceportal.md +32 -0
- package/docs/components/xsurfaceregion.md +37 -0
- package/docs/components.md +105 -69
- package/docs/de/README.md +264 -0
- package/docs/de/XTend-ADR.md +221 -0
- package/docs/de/a11y-keyboard-smokes.md +62 -0
- package/docs/de/about.md +18 -0
- package/docs/de/api.md +157 -0
- package/docs/de/best-practices.md +76 -0
- package/docs/de/changelog.md +107 -0
- package/docs/de/component-catalog-coverage.md +58 -0
- package/docs/de/component-lab.md +103 -0
- package/docs/de/component-long-tail-migration.md +41 -0
- package/docs/de/component-platform.md +177 -0
- package/docs/de/component-ux-app-authoring.md +123 -0
- package/docs/de/component-ux-authoring.md +96 -0
- package/docs/de/component-ux-gates.md +45 -0
- package/docs/de/components/x-rmt-lifecycle-demo-build.md +60 -0
- package/docs/de/components/xalert.md +81 -0
- package/docs/de/components/xbutton.md +103 -0
- package/docs/de/components/xcalendar.md +82 -0
- package/docs/de/components/xcards.md +128 -0
- package/docs/de/components/xcheckbox.md +102 -0
- package/docs/de/components/xcode.md +156 -0
- package/docs/de/components/xdialog.md +92 -0
- package/docs/de/components/xdrawer.md +84 -0
- package/docs/de/components/xfooter.md +126 -0
- package/docs/de/components/xform.md +128 -0
- package/docs/de/components/xheader.md +308 -0
- package/docs/de/components/xhero.md +142 -0
- package/docs/de/components/xicon.md +125 -0
- package/docs/de/components/xinput.md +129 -0
- package/docs/de/components/xlightbox.md +98 -0
- package/docs/de/components/xlink.md +109 -0
- package/docs/de/components/xmasonry.md +124 -0
- package/docs/de/components/xmenu.md +158 -0
- package/docs/de/components/xmodal.md +82 -0
- package/docs/de/components/xplayer.md +104 -0
- package/docs/de/components/xpopover.md +67 -0
- package/docs/de/components/xprogress.md +56 -0
- package/docs/de/components/xradio.md +103 -0
- package/docs/de/components/xrouter.md +260 -0
- package/docs/de/components/xsection.md +125 -0
- package/docs/de/components/xselect.md +105 -0
- package/docs/de/components/xsidepanel.md +30 -0
- package/docs/de/components/xspinner.md +102 -0
- package/docs/de/components/xstate.md +148 -0
- package/docs/de/components/xstatus.md +55 -0
- package/docs/de/components/xsummary.md +78 -0
- package/docs/de/components/xsurfacemanager.md +27 -0
- package/docs/de/components/xsurfacewindow.md +21 -0
- package/docs/de/components/xtabs.md +160 -0
- package/docs/de/components/xtextarea.md +98 -0
- package/docs/de/components/xtheme.md +167 -0
- package/docs/de/components/xtoast.md +62 -0
- package/docs/de/components/xtooltip.md +66 -0
- package/docs/de/components/xtype.md +82 -0
- package/docs/de/components/xutils.md +144 -0
- package/docs/de/components/xwriter.md +94 -0
- package/docs/de/components.md +153 -0
- package/docs/de/conditional-network-evidence-ci.md +38 -0
- package/docs/de/conditional-network-evidence.md +50 -0
- package/docs/de/core-migration-guide.md +110 -0
- package/docs/de/design-tokens.md +116 -0
- package/docs/de/docs-rmt-production-hardening.md +31 -0
- package/docs/de/enterprise-adoption.md +413 -0
- package/docs/de/enterprise-component-flex-release-handoff.md +129 -0
- package/docs/de/epic10-platform-gates.md +62 -0
- package/docs/de/epic10-release-handoff.md +81 -0
- package/docs/de/epic11-enterprise-ux-handoff.md +70 -0
- package/docs/de/epic12-rc0-handoff.md +61 -0
- package/docs/de/epic18-media-manager-vendor-upstream.md +318 -0
- package/docs/de/epic18-rmt-app-platform-release-handoff.md +67 -0
- package/docs/de/epic18-vendor-bugfixes.md +34 -0
- package/docs/de/existing-component-metadata.md +67 -0
- package/docs/de/hydration-performance-closure.md +34 -0
- package/docs/de/hydration-policies.md +71 -0
- package/docs/de/known-residual-triage.md +22 -0
- package/docs/de/manifest-import-policy.md +79 -0
- package/docs/de/manifest.md +112 -0
- package/docs/de/motion-contrast.md +67 -0
- package/docs/de/package-export-lock.md +44 -0
- package/docs/de/performance-measurements.md +106 -0
- package/docs/de/performance-regression.md +89 -0
- package/docs/de/performance.md +94 -0
- package/docs/de/previews/README.md +17 -0
- package/docs/de/prod-browser-csp-smokes.md +40 -0
- package/docs/de/public-component-types.md +79 -0
- package/docs/de/quick-start-guide.md +220 -0
- package/docs/de/rc0-adoption-guide.md +102 -0
- package/docs/de/rc0-gate-matrix.md +58 -0
- package/docs/de/rc1-gate-matrix-ci-handoff.md +56 -0
- package/docs/de/rc1-migration-notes.md +69 -0
- package/docs/de/rc1-readiness.md +46 -0
- package/docs/de/release-owner-acceptance.md +56 -0
- package/docs/de/release-report-pack-dry-run-evidence.md +39 -0
- package/docs/de/rmt-action-effect-runtime.md +81 -0
- package/docs/de/rmt-app-platform-authoring.md +54 -0
- package/docs/de/rmt-app-platform-fixture.md +46 -0
- package/docs/de/rmt-app-platform-migration-guide.md +88 -0
- package/docs/de/rmt-app-platform-tooling.md +79 -0
- package/docs/de/rmt-component-template-primitives.md +57 -0
- package/docs/de/rmt-dom-descriptor-renderer.md +64 -0
- package/docs/de/rmt-dsl-authoring-polish.md +145 -0
- package/docs/de/rmt-event-routing-runtime.md +81 -0
- package/docs/de/rmt-first-demo-app.md +77 -0
- package/docs/de/rmt-first-xtend-apps.md +129 -0
- package/docs/de/rmt-kernel-panic-recovery-incident-handoff.md +61 -0
- package/docs/de/rmt-kernel-security-hardening-migration.md +50 -0
- package/docs/de/rmt-kernel-trusted-output-authoring.md +69 -0
- package/docs/de/rmt-language-server.md +234 -0
- package/docs/de/rmt-lifecycle-demo.md +24 -0
- package/docs/de/rmt-linter.md +140 -0
- package/docs/de/rmt-node-ssr-adapter.md +100 -0
- package/docs/de/rmt-php-ssr-adapter.md +120 -0
- package/docs/de/rmt-production-readiness.md +63 -0
- package/docs/de/rmt-state-selector-runtime.md +47 -0
- package/docs/de/rmt-surface-resource-graph-runtime.md +92 -0
- package/docs/de/rmt-tooling-release-gates.md +77 -0
- package/docs/de/rmt-vnext-authoring.md +170 -0
- package/docs/de/rmt-vnext-component-primitives.md +188 -0
- package/docs/de/rmt-vnext-cross-surface-events.md +68 -0
- package/docs/de/rmt-vnext-enterprise-mfe-handoff.md +70 -0
- package/docs/de/rmt-vnext-fabric-bridge-evidence.md +81 -0
- package/docs/de/rmt-vnext-migration-notes.md +62 -0
- package/docs/de/rmt-vnext-primitive-authoring-tooling.md +247 -0
- package/docs/de/rmt-vnext-primitive-grammar-design.md +289 -0
- package/docs/de/rmt-vnext-primitive-lowering.md +108 -0
- package/docs/de/rmt-vnext-primitive-migration.md +119 -0
- package/docs/de/rmt-vnext-primitive-parser-ast.md +76 -0
- package/docs/de/rmt-vnext-primitive-semantic-graph.md +118 -0
- package/docs/de/rmt-vnext-primitives-compiler-backlog.md +739 -0
- package/docs/de/rmt-vnext-release-handoff.md +83 -0
- package/docs/de/rmt-vnext-remote-surfaces.md +90 -0
- package/docs/de/rmt-vnext-source-to-sea-gate.md +612 -0
- package/docs/de/rmt-vnext-surface-registry-enterprise.md +76 -0
- package/docs/de/screenreader-signals.md +56 -0
- package/docs/de/supply-chain-gates.md +100 -0
- package/docs/de/surface-manager-authoring-guide.md +94 -0
- package/docs/de/surface-manager-browser-lab.md +45 -0
- package/docs/de/surface-manager-component-lab.md +43 -0
- package/docs/de/surface-manager-controller.md +66 -0
- package/docs/de/surface-manager-layout-engines.md +32 -0
- package/docs/de/surface-manager-lazy-hydration.md +63 -0
- package/docs/de/surface-manager-migration-guide.md +122 -0
- package/docs/de/surface-manager-native-rmt-surfaces.md +38 -0
- package/docs/de/surface-manager-overlay-bridge.md +53 -0
- package/docs/de/surface-manager-persistence.md +30 -0
- package/docs/de/surface-manager-quality-gates.md +51 -0
- package/docs/de/surface-manager-release-handoff.md +68 -0
- package/docs/de/surface-manager-remote-policy.md +54 -0
- package/docs/de/surface-manager-rmt-authoring.md +102 -0
- package/docs/de/surface-manager-route-lifecycle.md +59 -0
- package/docs/de/surface-manager-runtime-release-handoff.md +69 -0
- package/docs/de/surface-manager-side-panel-runtime.md +36 -0
- package/docs/de/surface-manager-stack-policy.md +39 -0
- package/docs/de/surface-manager-window-runtime.md +47 -0
- package/docs/de/surface-manager-workbench-fixture.md +43 -0
- package/docs/de/third-party-design-authoring.md +406 -0
- package/docs/de/trusted-dom-boundary-browser-proof.md +32 -0
- package/docs/de/trusted-dom-sanitizing.md +110 -0
- package/docs/de/type-exports.md +61 -0
- package/docs/de/typescript-components.md +63 -0
- package/docs/de/visual-browser-regression.md +83 -0
- package/docs/de/visual-owner-artifacts.md +46 -0
- package/docs/de/visual-snapshot-automation.md +87 -0
- package/docs/de/xtend-api-types.md +55 -0
- package/docs/de/xtend-builder-types.md +55 -0
- package/docs/de/xtend-catalog-types.md +44 -0
- package/docs/de/xtend-fabric-rmt-lane-mapping.md +143 -0
- package/docs/de/xtend-fabric.md +474 -0
- package/docs/de/xtend-loader-types.md +58 -0
- package/docs/de/xtend-loader.md +265 -0
- package/docs/de/xtend-policy-types.md +38 -0
- package/docs/de/xtend-rmt-types.md +40 -0
- package/docs/de/xtend-vendor-types.md +36 -0
- package/docs/de/xtendrmt-app-dsl.md +334 -0
- package/docs/de/xtendrmt-migration-guide.md +266 -0
- package/docs/de/xtendrmt-native-authoring.md +333 -0
- package/docs/de/xtendrmt-overview.md +109 -0
- package/docs/de/xtendrmt-parsedown-scheduling.md +301 -0
- package/docs/de/xtendrmt-runtime-bridge.md +155 -0
- package/docs/en/README.md +163 -0
- package/docs/en/XTend-ADR.md +221 -0
- package/docs/en/a11y-keyboard-smokes.md +68 -0
- package/docs/en/about.md +25 -0
- package/docs/en/api.md +171 -0
- package/docs/en/best-practices.md +125 -0
- package/docs/en/changelog.md +104 -0
- package/docs/en/component-catalog-coverage.md +104 -0
- package/docs/en/component-lab.md +103 -0
- package/docs/en/component-long-tail-migration.md +41 -0
- package/docs/en/component-platform.md +243 -0
- package/docs/en/component-ux-app-authoring.md +118 -0
- package/docs/en/component-ux-authoring.md +96 -0
- package/docs/en/component-ux-gates.md +45 -0
- package/docs/en/components/x-rmt-lifecycle-demo-build.md +75 -0
- package/docs/en/components/xalert.md +94 -0
- package/docs/en/components/xbutton.md +118 -0
- package/docs/en/components/xcalendar.md +95 -0
- package/docs/en/components/xcards.md +139 -0
- package/docs/en/components/xcheckbox.md +118 -0
- package/docs/en/components/xcode.md +153 -0
- package/docs/en/components/xdialog.md +108 -0
- package/docs/en/components/xdrawer.md +110 -0
- package/docs/en/components/xfooter.md +138 -0
- package/docs/en/components/xform.md +147 -0
- package/docs/en/components/xheader.md +308 -0
- package/docs/en/components/xhero.md +157 -0
- package/docs/en/components/xicon.md +149 -0
- package/docs/en/components/xinput.md +147 -0
- package/docs/en/components/xlightbox.md +113 -0
- package/docs/en/components/xlink.md +130 -0
- package/docs/en/components/xmasonry.md +136 -0
- package/docs/en/components/xmenu.md +185 -0
- package/docs/en/components/xmodal.md +102 -0
- package/docs/en/components/xplayer.md +114 -0
- package/docs/en/components/xpopover.md +87 -0
- package/docs/en/components/xprogress.md +73 -0
- package/docs/en/components/xradio.md +119 -0
- package/docs/en/components/xrouter.md +260 -0
- package/docs/en/components/xsection.md +136 -0
- package/docs/en/components/xselect.md +122 -0
- package/docs/en/components/xsidepanel.md +48 -0
- package/docs/en/components/xspinner.md +118 -0
- package/docs/en/components/xstate.md +163 -0
- package/docs/en/components/xstatus.md +71 -0
- package/docs/en/components/xsummary.md +90 -0
- package/docs/en/components/xsurfacemanager.md +42 -0
- package/docs/en/components/xsurfacewindow.md +31 -0
- package/docs/en/components/xtabs.md +187 -0
- package/docs/en/components/xtextarea.md +115 -0
- package/docs/en/components/xtheme.md +203 -0
- package/docs/en/components/xtoast.md +78 -0
- package/docs/en/components/xtooltip.md +85 -0
- package/docs/en/components/xtype.md +91 -0
- package/docs/en/components/xutils.md +161 -0
- package/docs/en/components/xwriter.md +106 -0
- package/docs/en/components.md +151 -0
- package/docs/en/conditional-network-evidence-ci.md +38 -0
- package/docs/en/conditional-network-evidence.md +50 -0
- package/docs/en/core-migration-guide.md +110 -0
- package/docs/en/design-tokens.md +137 -0
- package/docs/en/docs-rmt-production-hardening.md +31 -0
- package/docs/en/enterprise-adoption.md +413 -0
- package/docs/en/enterprise-component-flex-release-handoff.md +129 -0
- package/docs/en/epic10-platform-gates.md +62 -0
- package/docs/en/epic10-release-handoff.md +81 -0
- package/docs/en/epic11-enterprise-ux-handoff.md +70 -0
- package/docs/en/epic12-rc0-handoff.md +61 -0
- package/docs/en/epic18-media-manager-vendor-upstream.md +232 -0
- package/docs/en/epic18-rmt-app-platform-release-handoff.md +60 -0
- package/docs/en/epic18-vendor-bugfixes.md +29 -0
- package/docs/en/existing-component-metadata.md +67 -0
- package/docs/en/hydration-performance-closure.md +34 -0
- package/docs/en/hydration-policies.md +75 -0
- package/docs/en/known-residual-triage.md +22 -0
- package/docs/en/manifest-import-policy.md +81 -0
- package/docs/en/manifest.md +135 -0
- package/docs/en/motion-contrast.md +67 -0
- package/docs/en/package-export-lock.md +44 -0
- package/docs/en/performance-measurements.md +106 -0
- package/docs/en/performance-regression.md +89 -0
- package/docs/en/performance.md +132 -0
- package/docs/en/previews/README.md +17 -0
- package/docs/en/prod-browser-csp-smokes.md +40 -0
- package/docs/en/public-component-types.md +79 -0
- package/docs/en/quick-start-guide.md +189 -0
- package/docs/en/rc0-adoption-guide.md +102 -0
- package/docs/en/rc0-gate-matrix.md +58 -0
- package/docs/en/rc1-gate-matrix-ci-handoff.md +56 -0
- package/docs/en/rc1-migration-notes.md +69 -0
- package/docs/en/rc1-readiness.md +46 -0
- package/docs/en/release-owner-acceptance.md +56 -0
- package/docs/en/release-report-pack-dry-run-evidence.md +39 -0
- package/docs/en/rmt-action-effect-runtime.md +101 -0
- package/docs/en/rmt-app-platform-authoring.md +47 -0
- package/docs/en/rmt-app-platform-fixture.md +35 -0
- package/docs/en/rmt-app-platform-migration-guide.md +75 -0
- package/docs/en/rmt-app-platform-tooling.md +58 -0
- package/docs/en/rmt-component-template-primitives.md +49 -0
- package/docs/en/rmt-dom-descriptor-renderer.md +54 -0
- package/docs/en/rmt-dsl-authoring-polish.md +143 -0
- package/docs/en/rmt-event-routing-runtime.md +98 -0
- package/docs/en/rmt-first-demo-app.md +87 -0
- package/docs/en/rmt-first-xtend-apps.md +127 -0
- package/docs/en/rmt-kernel-panic-recovery-incident-handoff.md +60 -0
- package/docs/en/rmt-kernel-security-hardening-migration.md +49 -0
- package/docs/en/rmt-kernel-trusted-output-authoring.md +68 -0
- package/docs/en/rmt-language-server.md +243 -0
- package/docs/en/rmt-lifecycle-demo.md +23 -0
- package/docs/en/rmt-linter.md +146 -0
- package/docs/en/rmt-node-ssr-adapter.md +99 -0
- package/docs/en/rmt-php-ssr-adapter.md +118 -0
- package/docs/en/rmt-production-readiness.md +63 -0
- package/docs/en/rmt-state-selector-runtime.md +34 -0
- package/docs/en/rmt-surface-resource-graph-runtime.md +68 -0
- package/docs/en/rmt-tooling-release-gates.md +77 -0
- package/docs/en/rmt-vnext-authoring.md +102 -0
- package/docs/en/rmt-vnext-component-primitives.md +185 -0
- package/docs/en/rmt-vnext-cross-surface-events.md +59 -0
- package/docs/en/rmt-vnext-enterprise-mfe-handoff.md +62 -0
- package/docs/en/rmt-vnext-fabric-bridge-evidence.md +64 -0
- package/docs/en/rmt-vnext-migration-notes.md +62 -0
- package/docs/en/rmt-vnext-primitive-authoring-tooling.md +174 -0
- package/docs/en/rmt-vnext-primitive-grammar-design.md +268 -0
- package/docs/en/rmt-vnext-primitive-lowering.md +91 -0
- package/docs/en/rmt-vnext-primitive-migration.md +93 -0
- package/docs/en/rmt-vnext-primitive-parser-ast.md +59 -0
- package/docs/en/rmt-vnext-primitive-semantic-graph.md +103 -0
- package/docs/en/rmt-vnext-primitives-compiler-backlog.md +327 -0
- package/docs/en/rmt-vnext-release-handoff.md +83 -0
- package/docs/en/rmt-vnext-remote-surfaces.md +81 -0
- package/docs/en/rmt-vnext-source-to-sea-gate.md +482 -0
- package/docs/en/rmt-vnext-surface-registry-enterprise.md +68 -0
- package/docs/en/screenreader-signals.md +56 -0
- package/docs/en/supply-chain-gates.md +106 -0
- package/docs/en/surface-manager-authoring-guide.md +94 -0
- package/docs/en/surface-manager-browser-lab.md +45 -0
- package/docs/en/surface-manager-component-lab.md +43 -0
- package/docs/en/surface-manager-controller.md +66 -0
- package/docs/en/surface-manager-layout-engines.md +32 -0
- package/docs/en/surface-manager-lazy-hydration.md +63 -0
- package/docs/en/surface-manager-migration-guide.md +113 -0
- package/docs/en/surface-manager-native-rmt-surfaces.md +38 -0
- package/docs/en/surface-manager-overlay-bridge.md +53 -0
- package/docs/en/surface-manager-persistence.md +30 -0
- package/docs/en/surface-manager-quality-gates.md +51 -0
- package/docs/en/surface-manager-release-handoff.md +68 -0
- package/docs/en/surface-manager-remote-policy.md +54 -0
- package/docs/en/surface-manager-rmt-authoring.md +89 -0
- package/docs/en/surface-manager-route-lifecycle.md +59 -0
- package/docs/en/surface-manager-runtime-release-handoff.md +69 -0
- package/docs/en/surface-manager-side-panel-runtime.md +36 -0
- package/docs/en/surface-manager-stack-policy.md +39 -0
- package/docs/en/surface-manager-window-runtime.md +47 -0
- package/docs/en/surface-manager-workbench-fixture.md +43 -0
- package/docs/en/third-party-design-authoring.md +406 -0
- package/docs/en/trusted-dom-boundary-browser-proof.md +32 -0
- package/docs/en/trusted-dom-sanitizing.md +124 -0
- package/docs/en/type-exports.md +61 -0
- package/docs/en/typescript-components.md +63 -0
- package/docs/en/visual-browser-regression.md +83 -0
- package/docs/en/visual-owner-artifacts.md +46 -0
- package/docs/en/visual-snapshot-automation.md +87 -0
- package/docs/en/xtend-api-types.md +55 -0
- package/docs/en/xtend-builder-types.md +55 -0
- package/docs/en/xtend-catalog-types.md +44 -0
- package/docs/en/xtend-fabric-rmt-lane-mapping.md +143 -0
- package/docs/en/xtend-fabric.md +474 -0
- package/docs/en/xtend-loader-types.md +58 -0
- package/docs/en/xtend-loader.md +265 -0
- package/docs/en/xtend-policy-types.md +38 -0
- package/docs/en/xtend-rmt-types.md +40 -0
- package/docs/en/xtend-vendor-types.md +36 -0
- package/docs/en/xtendrmt-app-dsl.md +331 -0
- package/docs/en/xtendrmt-migration-guide.md +256 -0
- package/docs/en/xtendrmt-native-authoring.md +336 -0
- package/docs/en/xtendrmt-overview.md +63 -0
- package/docs/en/xtendrmt-parsedown-scheduling.md +301 -0
- package/docs/en/xtendrmt-runtime-bridge.md +155 -0
- package/docs/enterprise-adoption.md +4 -2
- package/docs/epic18-media-manager-vendor-upstream.md +318 -0
- package/docs/epic18-rmt-app-platform-release-handoff.md +67 -0
- package/docs/epic18-vendor-bugfixes.md +34 -0
- package/docs/index.php +1056 -109
- package/docs/manifest.md +8 -2
- package/docs/menu.json +986 -133
- package/docs/package-export-lock.md +2 -2
- package/docs/public-component-types.md +2 -2
- package/docs/quick-start-guide.md +126 -58
- package/docs/rmt-action-effect-runtime.md +101 -0
- package/docs/rmt-app-platform-authoring.md +54 -0
- package/docs/rmt-app-platform-fixture.md +46 -0
- package/docs/rmt-app-platform-migration-guide.md +88 -0
- package/docs/rmt-app-platform-tooling.md +79 -0
- package/docs/rmt-component-template-primitives.md +57 -0
- package/docs/rmt-dom-descriptor-renderer.md +64 -0
- package/docs/rmt-dsl-authoring-polish.md +67 -44
- package/docs/rmt-event-routing-runtime.md +98 -0
- package/docs/rmt-first-demo-app.md +2 -2
- package/docs/rmt-first-xtend-apps.md +70 -46
- package/docs/rmt-language-server.md +61 -4
- package/docs/rmt-lifecycle-demo.md +1 -2
- package/docs/rmt-node-ssr-adapter.md +144 -0
- package/docs/rmt-php-ssr-adapter.md +158 -0
- package/docs/rmt-state-selector-runtime.md +47 -0
- package/docs/rmt-surface-resource-graph-runtime.md +92 -0
- package/docs/rmt-vnext-authoring.md +128 -18
- package/docs/rmt-vnext-component-primitives.md +188 -0
- package/docs/rmt-vnext-fabric-bridge-evidence.md +81 -0
- package/docs/rmt-vnext-primitive-authoring-tooling.md +247 -0
- package/docs/rmt-vnext-primitive-grammar-design.md +289 -0
- package/docs/rmt-vnext-primitive-lowering.md +108 -0
- package/docs/rmt-vnext-primitive-migration.md +119 -0
- package/docs/rmt-vnext-primitive-parser-ast.md +76 -0
- package/docs/rmt-vnext-primitive-semantic-graph.md +118 -0
- package/docs/rmt-vnext-primitives-compiler-backlog.md +742 -0
- package/docs/rmt-vnext-release-handoff.md +14 -0
- package/docs/rmt-vnext-source-to-sea-gate.md +629 -0
- package/docs/surface-manager-migration-guide.md +34 -6
- package/docs/surface-manager-overlay-bridge.md +9 -4
- package/docs/surface-manager-rmt-authoring.md +50 -34
- package/docs/surface-manager-workbench-fixture.md +1 -2
- package/docs/third-party-design-authoring.md +1 -1
- package/docs/type-exports.md +3 -3
- package/docs/utils/pageloader.js +811 -62
- package/docs/visual-browser-regression.md +1 -1
- package/docs/xtend-rmt-types.md +3 -2
- package/docs/xtendrmt-app-dsl.md +187 -122
- package/docs/xtendrmt-docs-shell-vnext.rmt +165 -0
- package/docs/xtendrmt-migration-guide.md +48 -17
- package/docs/xtendrmt-native-authoring.md +213 -217
- package/docs/xtendrmt-overview.md +81 -61
- package/docs/xtendrmt-parsedown-scheduling.md +23 -8
- package/fabric/package.json +1 -1
- package/package.json +684 -21
- package/tools/package.json +5 -1
- package/tools/rmt-editor/vscode/README.md +72 -5
- package/tools/rmt-editor/vscode/XTend-Logo.png +0 -0
- package/tools/rmt-editor/vscode/extension.d.ts +33 -0
- package/tools/rmt-editor/vscode/extension.js +1816 -7
- package/tools/rmt-editor/vscode/language-configuration.json +2 -1
- package/tools/rmt-editor/vscode/package.json +193 -2
- package/tools/rmt-editor/vscode/snippets/rmt.code-snippets +41 -0
- package/tools/rmt-editor/vscode/syntaxes/rmt.tmLanguage.json +103 -1
- package/tools/rmt-editor/vscode/templates/launch.json +70 -0
- package/tools/rmt-editor/vscode/templates/tasks.json +172 -0
- package/tools/rmt-editor/vscode/xtend-rmt-language-0.0.0-enterprise-readiness.vsix +0 -0
- package/tools/rmt-language/app-platform-tooling.d.ts +128 -0
- package/tools/rmt-language/app-platform-tooling.js +677 -0
- package/tools/rmt-language/completions.d.ts +5 -0
- package/tools/rmt-language/completions.js +185 -3
- package/tools/rmt-language/diagnostics.js +54 -0
- package/tools/rmt-language/hover.js +36 -0
- package/tools/rmt-language/rmt-tooling-public-types.d.ts +7 -0
- package/tools/rmt-language/rules/app-platform-policy.js +39 -0
- package/tools/rmt-language/rules/index.js +5 -1
- package/tools/rmt-language/semantic-graph.d.ts +6 -0
- package/tools/rmt-language/semantic-graph.js +928 -0
- package/tools/rmt-language/snippets/index.js +44 -0
- package/tools/rmt-language/snippets/rmt.code-snippets +41 -0
- package/tools/rmt-language/vnext-compatibility.d.ts +10 -0
- package/tools/rmt-language/vnext-compatibility.js +642 -0
- package/tools/rmt-language/vnext-compiler.d.ts +5 -0
- package/tools/rmt-language/vnext-compiler.js +863 -17
- package/tools/rmt-language/vnext-parser.js +725 -9
- package/tools/rmt-language/vnext-release.d.ts +1 -0
- package/tools/rmt-language/vnext-release.js +20 -0
- package/tools/rmt-language/vnext-source-to-sea.d.ts +33 -0
- package/tools/rmt-language/vnext-source-to-sea.js +2227 -0
- package/tools/rmt-language/vnext-surfaces.js +111 -52
- package/tools/rmt-language/vnext-tooling.d.ts +19 -1
- package/tools/rmt-language/vnext-tooling.js +1247 -5
- package/tools/rmt-language-server/protocol.js +3 -0
- package/tools/rmt-language-server/server.d.ts +2 -0
- package/tools/rmt-language-server/server.js +176 -22
- package/tools/rmt-linter/cli.d.ts +2 -0
- package/tools/rmt-linter/cli.js +62 -0
- package/xtend-builder/generators/registry.js +11 -0
- package/xtend-builder/generators/rmt-app-platform.js +239 -0
- package/xtend-builder/generators/rmt-lifecycle-demo.js +3 -11
- package/xtend-builder/lib/cli.js +38 -0
- package/xtend-builder/package.json +3 -3
- package/xtend-builder/scaffold.config.js +29 -2
- package/xtend.css +49 -2
- package/xtendrmt/package.json +49 -1
- package/xtendrmt/rmt-action-effect-runtime.d.ts +126 -0
- package/xtendrmt/rmt-action-effect-runtime.js +494 -0
- package/xtendrmt/rmt-component-capability-registry.d.ts +180 -0
- package/xtendrmt/rmt-component-capability-registry.js +636 -0
- package/xtendrmt/rmt-core.d.ts +6 -0
- package/xtendrmt/rmt-core.esm.js +32 -6
- package/xtendrmt/rmt-dom-descriptor-renderer.d.ts +107 -0
- package/xtendrmt/rmt-dom-descriptor-renderer.js +1066 -0
- package/xtendrmt/rmt-event-routing-runtime.d.ts +144 -0
- package/xtendrmt/rmt-event-routing-runtime.js +666 -0
- package/xtendrmt/rmt-lifecycle-demo.app.js +2 -2
- package/xtendrmt/rmt-lifecycle-demo.core.json +4 -0
- package/xtendrmt/rmt-lifecycle-demo.rmt-build.app.js +1 -1
- package/xtendrmt/rmt-lifecycle-demo.rmt-build.scaffold.json +2 -2
- package/xtendrmt/rmt-lifecycle-demo.scaffold.json +4 -4
- package/xtendrmt/rmt-native-shell-runtime.d.ts +77 -0
- package/xtendrmt/rmt-native-shell-runtime.js +309 -0
- package/xtendrmt/rmt-node-ssr-adapter.d.ts +197 -0
- package/xtendrmt/rmt-node-ssr-adapter.js +1006 -0
- package/xtendrmt/rmt-php-ssr-adapter.php +976 -0
- package/xtendrmt/rmt-runtime.browser.js +32 -6
- package/xtendrmt/rmt-runtime.esm.js +32 -6
- package/xtendrmt/rmt-state-selector-runtime.d.ts +166 -0
- package/xtendrmt/rmt-state-selector-runtime.js +866 -0
- package/xtendrmt/rmt-surface-resource-graph-runtime.d.ts +224 -0
- package/xtendrmt/rmt-surface-resource-graph-runtime.js +932 -0
- package/xtendrmt/rmt-vnext-enterprise-mfe-demo.core.json +3 -0
- package/xtendrmt/rmt-vnext-reference-demo.core.json +3 -0
- package/xtendrmt/xtendrmt-bestcase-demo.core.json +3420 -372
- package/xtendrmt/xtendrmt-bestcase-demo.js +424 -8
- package/xtendrmt/xtendrmt-bestcase-demo.rmt +214 -6
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# XTend Changelog
|
|
2
|
+
|
|
3
|
+
This article collects the historical Epic, workpackage, handoff, and gate
|
|
4
|
+
notes that previously lived in many individual developer articles. The normal
|
|
5
|
+
guides can therefore stay focused on product usage and developer experience;
|
|
6
|
+
this changelog is the canonical place for progress, release signals, and
|
|
7
|
+
technical history.
|
|
8
|
+
|
|
9
|
+
## RMT vNext and App Shell Authoring
|
|
10
|
+
|
|
11
|
+
- `RMT-VNEXT-PRIM-01` through `RMT-VNEXT-PRIM-04` built the grammar, parser,
|
|
12
|
+
semantic graph, and lowering path for RMT vNext primitives.
|
|
13
|
+
- `RMT-VNEXT-PRIM-05` added Fabric lane and fiber evidence for vNext-authored
|
|
14
|
+
lanes, route fibers, and component fibers.
|
|
15
|
+
- `RMT-VNEXT-PRIM-06` introduced the source-to-sea gate: vNext source, kernel
|
|
16
|
+
records, Fabric telemetry, UI markers, and browser evidence are correlated by
|
|
17
|
+
primitive IDs.
|
|
18
|
+
- `RMT-VNEXT-PRIM-07` completed the authoring DX: completions, hover, symbols,
|
|
19
|
+
code actions, Safe Fix-All, and the VS Code bridge work from real RMT vNext
|
|
20
|
+
sources.
|
|
21
|
+
- `RMT-VNEXT-PRIM-08` completed migration and legacy backgrounding:
|
|
22
|
+
App-Platform Primitive JSON remains a mirror/compiler target while vNext is
|
|
23
|
+
the authoring path.
|
|
24
|
+
- `WP-E15-18` bundled the vNext release handoff. The reference demo lives in
|
|
25
|
+
`xtendrmt/rmt-vnext-reference-demo.rmt`, and the stable core output lives in
|
|
26
|
+
`xtendrmt/rmt-vnext-reference-demo.core.json`.
|
|
27
|
+
|
|
28
|
+
## RMT Tooling, LSP, and Editor Integration
|
|
29
|
+
|
|
30
|
+
- `WP-E14-02` through `WP-E14-04` stabilized the source model,
|
|
31
|
+
parser/format adapter, and semantic graph for native `.rmt` documents.
|
|
32
|
+
- `WP-E14-05` through `WP-E14-10` added the linter, CLI, completion, hover,
|
|
33
|
+
document symbols, definition support, and safe code actions.
|
|
34
|
+
- `WP-E14-11` introduced AI-agent repair reports with `repairPlan`, `fixOrder`,
|
|
35
|
+
`confidence`, `impact`, and no-op explanations.
|
|
36
|
+
- `WP-E14-12` prepared snippets, editor packaging, and the VS Code bridge.
|
|
37
|
+
- `WP-E14-14` consolidated the Quick Start, linter, and Language Server docs.
|
|
38
|
+
The contract remains `xtend.rmt.tooling-docs.v1`; the local gate remains
|
|
39
|
+
`node scripts/run_xtend_tests.js rmt-tooling-docs --json`.
|
|
40
|
+
- `WP-E14-15` and `WP-E14-16` completed the RMT Tooling release gates and the
|
|
41
|
+
LSP handoff.
|
|
42
|
+
|
|
43
|
+
## XTendRMT Runtime, Kernel, and Fabric
|
|
44
|
+
|
|
45
|
+
- Epic 05 established XTendRMT as the productive scheduler, runtime, and
|
|
46
|
+
templating path: native `.rmt` domains, Runtime Registry, XRouter Adapter,
|
|
47
|
+
XTend Component Adapter, and State/Scheduler/Diagnostics Bridge.
|
|
48
|
+
- `ER-WP-08` through `ER-WP-21` built Fabric as the host core, including
|
|
49
|
+
Component Lifecycle Error Boundary, Reporter Adapter, Diagnostics Bridge,
|
|
50
|
+
component and route fibers, telemetry snapshots, performance measurements,
|
|
51
|
+
regression checks, and hydration policies.
|
|
52
|
+
- `ER-WP-13` mapped Fabric lanes to host-neutral RMT schedule records. The RMT
|
|
53
|
+
kernel boundary remains framework-neutral.
|
|
54
|
+
- `RKSH-WP-11` documented kernel migration, trusted output authoring, and the
|
|
55
|
+
panic/recovery incident handoff.
|
|
56
|
+
|
|
57
|
+
## Component Platform and App Surfaces
|
|
58
|
+
|
|
59
|
+
- Epic 10 built TypeScript-first components, Component Contract v2,
|
|
60
|
+
RMT-first apps, and platform gates.
|
|
61
|
+
- Epic 11 prepared Component UX, shell styling, accessibility, visual
|
|
62
|
+
regression, enterprise UX handoff, and long-tail migration.
|
|
63
|
+
- SurfaceManager packages `WP-SM-01` through `WP-SM-19` built RMT authoring,
|
|
64
|
+
controller, window runtime, side panel, workbench fixture, overlay bridge,
|
|
65
|
+
native RMT surfaces, route lifecycles, persistence, layout engines,
|
|
66
|
+
component lab, and runtime release handoff.
|
|
67
|
+
- Epic 18 moved App-Platform primitives, Media Manager lessons learned,
|
|
68
|
+
vendor bugfix backports, and generic RMT App-Platform fixtures into the
|
|
69
|
+
upstream state.
|
|
70
|
+
|
|
71
|
+
## Quality, Security, and Release
|
|
72
|
+
|
|
73
|
+
- Epic 12 bundled RC0 hardening, visual snapshot automation, design token
|
|
74
|
+
productization, RMT DSL authoring polish, and adoption guides.
|
|
75
|
+
- Epic 13 consolidated RC1 readiness, release owner acceptance, conditional
|
|
76
|
+
network evidence, package export lock, Trusted DOM, RMT production readiness,
|
|
77
|
+
visual owner artifacts, and CI handoff.
|
|
78
|
+
- `DPF-WP-02` and `DPF-WP-03` productized the release report, pack dry-run
|
|
79
|
+
evidence, and conditional network evidence CI.
|
|
80
|
+
- `WP-TypeExports-01` through `WP-TypeExports-09` secured package `types`
|
|
81
|
+
conditions, RMT/Loader/API/Policy/Builder/Catalog/Vendor facades, and drift
|
|
82
|
+
reports.
|
|
83
|
+
|
|
84
|
+
## What No Longer Belongs in Individual Articles?
|
|
85
|
+
|
|
86
|
+
Developer guides should not read like release logs. New or revised articles
|
|
87
|
+
should:
|
|
88
|
+
|
|
89
|
+
- explain productive usage, syntax, and architecture;
|
|
90
|
+
- mention local commands only where they are needed for the workflow;
|
|
91
|
+
- keep Epic, WP, status, and handoff history in this changelog;
|
|
92
|
+
- link to `development/` only when an internal detail truly needs to be traced.
|
|
93
|
+
|
|
94
|
+
## Related Release-Oriented Articles
|
|
95
|
+
|
|
96
|
+
- [RMT vNext Release Handoff](./rmt-vnext-release-handoff.md)
|
|
97
|
+
- [RMT vNext Source-to-Sea Gate](./rmt-vnext-source-to-sea-gate.md)
|
|
98
|
+
- [RMT vNext Fabric Bridge Evidence](./rmt-vnext-fabric-bridge-evidence.md)
|
|
99
|
+
- [RMT vNext Primitive Authoring Tooling](./rmt-vnext-primitive-authoring-tooling.md)
|
|
100
|
+
- [RMT vNext Primitive Migration](./rmt-vnext-primitive-migration.md)
|
|
101
|
+
- [RC1 Readiness](./rc1-readiness.md)
|
|
102
|
+
- [RC1 Gate Matrix and CI Handoff](./rc1-gate-matrix-ci-handoff.md)
|
|
103
|
+
- [Release Report and Pack Dry Run Evidence](./release-report-pack-dry-run-evidence.md)
|
|
104
|
+
- [TypeExports](./type-exports.md)
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Component Catalog Coverage
|
|
2
|
+
|
|
3
|
+
- Contract: `xtend.docs.component-catalog-coverage.v1`
|
|
4
|
+
- Matrix Contract: `xtend.catalog.component-coverage-matrix.v1`
|
|
5
|
+
- Gate Contract: `xtend.catalog.component-coverage-gate.v1`
|
|
6
|
+
- Workpackage: `ER-WP-31`, continued by `ER-WP-32`, `ER-WP-33`,
|
|
7
|
+
`ER-WP-34`, `ER-WP-35`, `WP-E11-12`, `WP-E11-17`, `WP-E12-02`,
|
|
8
|
+
`WP-E12-03`, `WP-E12-04`, `WP-E12-05`, `WP-E12-06`, `WP-E12-07`,
|
|
9
|
+
`WP-E12-08`, `WP-E12-09`, `WP-E13-12A`, `WP-SM-03`, `WP-SM-04`, and
|
|
10
|
+
`RC1TB-WP-03`
|
|
11
|
+
|
|
12
|
+
The Component Catalog Coverage Matrix shows how mature each component from
|
|
13
|
+
`components/manifest.json` currently is. It combines source, documentation,
|
|
14
|
+
component-level suite, fixture, types, accessibility, and performance into one
|
|
15
|
+
status model.
|
|
16
|
+
|
|
17
|
+
## Check Locally
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npm run test:catalog-coverage
|
|
21
|
+
node scripts/run_xtend_tests.js catalog-coverage --json
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
The gate is green when all manifest sources resolve locally and the matrix
|
|
25
|
+
report is structurally valid. Missing suites, fixtures, types, a11y profiles,
|
|
26
|
+
and performance profiles appear as warnings. This lets the catalog harden step
|
|
27
|
+
by step without hiding follow-up work.
|
|
28
|
+
|
|
29
|
+
## Status Model
|
|
30
|
+
|
|
31
|
+
| Status | Meaning |
|
|
32
|
+
|--------|---------|
|
|
33
|
+
| `enterprise-ready` | complete source, docs, suite, fixture, types, a11y, and performance coverage |
|
|
34
|
+
| `typed-contract-gated` | types and a11y exist, performance is still missing |
|
|
35
|
+
| `contract-gated` | source, docs, component suite, and fixture exist |
|
|
36
|
+
| `documented` | source and docs exist |
|
|
37
|
+
| `source-only` | source exists, docs or gates are missing |
|
|
38
|
+
| `missing-source` | manifest points to no local source; this state blocks |
|
|
39
|
+
|
|
40
|
+
## Current State
|
|
41
|
+
|
|
42
|
+
The snapshot after `RC1TB-WP-03` shows:
|
|
43
|
+
|
|
44
|
+
- 44 manifest components
|
|
45
|
+
- 44 local source files
|
|
46
|
+
- 44 component docs
|
|
47
|
+
- 44 component-level suites and fixtures
|
|
48
|
+
- 44 public type artifacts for prioritized components
|
|
49
|
+
- 43 components with a recognizable a11y surface
|
|
50
|
+
- 42 components with an explicit runtime/UI performance profile
|
|
51
|
+
|
|
52
|
+
`x-input`, `x-select`, `x-checkbox`, `x-radio`,
|
|
53
|
+
`x-rmt-lifecycle-demo-build`, `x-textarea`, `x-form`, `x-calendar`,
|
|
54
|
+
`x-writer`, `x-status`, `x-progress`, `x-tooltip`, `x-popover`, `x-drawer`,
|
|
55
|
+
`x-surface-manager`, `x-surface-portal`, `x-surface-region`,
|
|
56
|
+
`x-surface-window`, `x-side-panel`, `x-modal`,
|
|
57
|
+
`x-dialog`, `x-alert`, `x-toast`, `x-spinner`, `x-router`, `x-link`,
|
|
58
|
+
`x-tabs`, `x-theme`, `x-button`, `x-icon`, `x-menu`, `x-footer`,
|
|
59
|
+
`x-lightbox`, `x-masonry`, `x-code`, `x-header`, `x-hero`, `x-type`,
|
|
60
|
+
`x-summary`, `x-section`, `x-cards`, and `x-player` form the current
|
|
61
|
+
`enterprise-ready` line: source, docs, component suite, fixture, public types,
|
|
62
|
+
a11y, and performance profile are complete. Since
|
|
63
|
+
[Known Residual Triage](./known-residual-triage.md), `xstate` is closed as a
|
|
64
|
+
runtime boundary and `x-utils` is closed as a utility boundary. Both
|
|
65
|
+
intentionally remain outside the visual `enterprise-ready` component class.
|
|
66
|
+
|
|
67
|
+
Since `ER-WP-35`, the regression priority plan
|
|
68
|
+
`xtend.catalog.component-regression-priority-plan.v1` also exists. It
|
|
69
|
+
prioritizes all 44 manifest entries for `desktop-1280`, `mobile-390`, `light`,
|
|
70
|
+
`dark`, `forced-colors`, `reduced-motion`, browser smokes, and performance
|
|
71
|
+
profile derivation. The 42 visible runtime/UI components bring their
|
|
72
|
+
performance profiles; `xstate` and `x-utils` are evaluated through their
|
|
73
|
+
boundary contracts instead.
|
|
74
|
+
|
|
75
|
+
## Handoff
|
|
76
|
+
|
|
77
|
+
| Package | Responsibility |
|
|
78
|
+
|---------|----------------|
|
|
79
|
+
| `ER-WP-32` | completed: close docs and naming gaps |
|
|
80
|
+
| `ER-WP-33` | completed: add component-level suites and fixtures for prioritized components |
|
|
81
|
+
| `ER-WP-34` | completed: complete public types and event contracts for prioritized components |
|
|
82
|
+
| `ER-WP-35` | completed: prioritize long-tail suites, performance profiles, visual and browser-near regression |
|
|
83
|
+
| `WP-E11-12` | completed: bring layout, display, and media shell maturity into catalog, types, suites, and performance profiles |
|
|
84
|
+
|
|
85
|
+
`WP-E11-17` combines this matrix with the regression priority plan in
|
|
86
|
+
`xtend.epic11.legacy-long-tail-migration.v1`. After `WP-E12-09`, `x-tabs`,
|
|
87
|
+
`x-theme`, `x-button`, and `x-menu` are closed from this long tail. Since
|
|
88
|
+
`WP-E13-05`, `xstate` and `x-utils` are also closed as boundary contracts:
|
|
89
|
+
`xstate` as a runtime boundary with suite, fixture, types, lifecycle events,
|
|
90
|
+
Fabric diagnostics, and RMT state adapter; `x-utils` as a utility boundary with
|
|
91
|
+
utility contract, import policy, fixture, and public types. The gate
|
|
92
|
+
`node scripts/run_xtend_tests.js component-long-tail-migration --json`
|
|
93
|
+
continues to check this closed long-tail line against plan, package, scaffold,
|
|
94
|
+
references, and handoff.
|
|
95
|
+
|
|
96
|
+
The complete matrix lives in
|
|
97
|
+
`development/XTend-Component-Catalog-Coverage-Matrix.md`. The naming
|
|
98
|
+
convention lives in `development/XTend-Component-Catalog-Naming-Konvention.md`.
|
|
99
|
+
Public types are documented in `docs/public-component-types.md`.
|
|
100
|
+
Visual/browser regression is documented in `docs/visual-browser-regression.md`.
|
|
101
|
+
The machine-readable coverage module lives in
|
|
102
|
+
`catalog/component-catalog-coverage.js`; the regression priority plan lives in
|
|
103
|
+
`catalog/component-regression-priority.js`; the long-tail migration plan lives
|
|
104
|
+
in `catalog/component-long-tail-migration.js`.
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# XTend Component Lab
|
|
2
|
+
|
|
3
|
+
Contract: `xtend.docs.component-lab.v1`
|
|
4
|
+
|
|
5
|
+
Starting with `WP-E10-12`, the Component Lab is the local preview and inspection path for TypeScript-first XTend components. It brings together Component Contract v2, RMT metadata, Fabric/Lane context, lifecycle telemetry, accessibility profiles and performance profiles in a shell-first RMT pilot.
|
|
6
|
+
|
|
7
|
+
## Pilot Artifacts
|
|
8
|
+
|
|
9
|
+
- Plan module: `xtend-builder/preview/component-lab.js`
|
|
10
|
+
- RMT fixture: `tests/fixtures/rmt-component-lab-pilot.rmt`
|
|
11
|
+
- Contract: `development/XTend-Component-Lab-und-RMT-Inspector-Pilot.md`
|
|
12
|
+
- Gate: `node scripts/run_xtend_tests.js component-lab-rmt-inspector --json`
|
|
13
|
+
|
|
14
|
+
## Preview Targets
|
|
15
|
+
|
|
16
|
+
The lab starts with the nine `enterprise-ready` components from Epic 10:
|
|
17
|
+
|
|
18
|
+
- `x-select`
|
|
19
|
+
- `x-checkbox`
|
|
20
|
+
- `x-radio`
|
|
21
|
+
- `x-textarea`
|
|
22
|
+
- `x-status`
|
|
23
|
+
- `x-progress`
|
|
24
|
+
- `x-tooltip`
|
|
25
|
+
- `x-popover`
|
|
26
|
+
- `x-drawer`
|
|
27
|
+
|
|
28
|
+
Each target entry points to runtime, TypeScript source, RMT metadata, contract, accessibility, performance, fixture data, browser fixture, docs, public types and component suite.
|
|
29
|
+
|
|
30
|
+
## RMT Inspector
|
|
31
|
+
|
|
32
|
+
In the pilot, the RMT Inspector exposes these domains:
|
|
33
|
+
|
|
34
|
+
- `manifest`
|
|
35
|
+
- `adapters`
|
|
36
|
+
- `components`
|
|
37
|
+
- `routes`
|
|
38
|
+
- `schedules`
|
|
39
|
+
- `templates`
|
|
40
|
+
- `diagnostics`
|
|
41
|
+
|
|
42
|
+
RMT remains host-neutral. The kernel imports no XTend classes and no XTend types. Execution, DOM materialization, XRouter registration and the Fabric runtime remain adapter responsibilities.
|
|
43
|
+
|
|
44
|
+
## Panels
|
|
45
|
+
|
|
46
|
+
| Panel | Purpose |
|
|
47
|
+
|-------|---------|
|
|
48
|
+
| `component-preview` | Show preview target, fixture and component contract |
|
|
49
|
+
| `rmt-inspector` | Inspect the RMT document, routes, schedules and templates |
|
|
50
|
+
| `telemetry` | Make component lifecycle records and Fabric snapshots visible |
|
|
51
|
+
| `a11y` | Show roles, keyboard behavior, screen-reader signals and required assertions |
|
|
52
|
+
| `performance` | Show budget class, lane, hydration policy and measurement points |
|
|
53
|
+
| `source-links` | Link runtime, TS, RMT, docs, types and suite paths |
|
|
54
|
+
|
|
55
|
+
## Local Gate
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
node scripts/run_xtend_tests.js component-lab-rmt-inspector --json
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
The gate validates the plan, the RMT fixture, the nine preview targets, all panels, inspector domains, package metadata, runner registration and reference paths.
|
|
62
|
+
|
|
63
|
+
## Epic 11 UX Inspector
|
|
64
|
+
|
|
65
|
+
Starting with `WP-E11-13`, the UX Inspector `xtend.epic11.component-lab-ux-inspector.v1` is available as an additional layer.
|
|
66
|
+
|
|
67
|
+
Artifacts:
|
|
68
|
+
|
|
69
|
+
- Plan module: `xtend-builder/preview/component-lab-ux-inspector.js`
|
|
70
|
+
- RMT fixture: `tests/fixtures/rmt-component-lab-ux-inspector.rmt`
|
|
71
|
+
- Contract: `development/XTend-Component-Lab-UX-Inspector.md`
|
|
72
|
+
- Gate: `node scripts/run_xtend_tests.js component-lab-ux-inspector --json`
|
|
73
|
+
|
|
74
|
+
The UX Inspector covers 31 `enterprise-ready` components from the five Epic 11 families:
|
|
75
|
+
|
|
76
|
+
- Form Controls
|
|
77
|
+
- Feedback and Status
|
|
78
|
+
- Navigation and Routing
|
|
79
|
+
- Overlay and Interaction
|
|
80
|
+
- Layout, Display and Media
|
|
81
|
+
|
|
82
|
+
The panels extend the earlier pilot with `ux-family-matrix`, `state`, `styling` and `component-network`. The inspector domains are `shell`, `style`, `a11y`, `performance`, `state`, `componentNetwork`, `rmtAuthoring`, `fabricTelemetry`, `diagnostics` and `sourceLinks`.
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
node scripts/run_xtend_tests.js component-lab-ux-inspector --json
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
This layer is also shell-first, local and host-neutral. RMT describes shell, routes, templates and schedules; XTend components run through adapters outside the kernel.
|
|
89
|
+
|
|
90
|
+
## SurfaceManager Component Lab
|
|
91
|
+
|
|
92
|
+
Starting with `WP-SM-09`, there is a Surface-specific lab fixture:
|
|
93
|
+
|
|
94
|
+
- Docs: [SurfaceManager Component Lab](./surface-manager-component-lab.md)
|
|
95
|
+
- Fixture: `tests/fixtures/rmt-surface-manager-component-lab.rmt`
|
|
96
|
+
- Contract: `xtend.surface.component-lab-fixture.v1`
|
|
97
|
+
- Gate: `node scripts/run_xtend_tests.js surface-release-handoff --json`
|
|
98
|
+
|
|
99
|
+
The panels `surface-preview`, `native-rmt-inspector`, `migration-diff`, `quality-gates` and `source-links` present the SurfaceManager line as an app-shell lab: native `surfaces[*]`, compatible `components[*].metadata.surface` records, `x-surface-manager`, windows, side panels and the overlay bridge remain testable together without claiming a production `xtend.surface` runtime.
|
|
100
|
+
|
|
101
|
+
## Handoff
|
|
102
|
+
|
|
103
|
+
The lab is not a production browser lab server yet. It is the gateable pilot for `WP-E10-13`, where the RMT-first demo app is built without manual shell-specific logic.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Component Long-Tail Migration
|
|
2
|
+
|
|
3
|
+
- Contract: `xtend.docs.component-long-tail-migration.v1`
|
|
4
|
+
- Plan contract: `xtend.epic11.legacy-long-tail-migration.v1`
|
|
5
|
+
- Gate contract: `xtend.epic11.legacy-long-tail-migration-gate.v1`
|
|
6
|
+
- Workpackage: `WP-E11-17`
|
|
7
|
+
|
|
8
|
+
This page describes how XTend handles the last components that are not fully `enterprise-ready` after Epic 11. The plan is intentionally incremental: visible custom elements are hardened against shell, styling, a11y, performance, browser smokes and theme matrix; infrastructure and utility modules receive integration probes instead of artificial UI shells.
|
|
9
|
+
|
|
10
|
+
Update after `WP-E13-05`: `x-tabs` has an explicit performance profile and is no longer part of the open long-tail plan. `x-theme` has a11y, reduced-motion, forced-colors, performance, theme-propagation and density coverage. `x-button` has performance, interaction-budget, Fabric-measurement and RMT metadata. `x-menu` has performance, keyboard, routing, Fabric and RMT metadata. `xstate` has suite, fixture, public types, lifecycle events, Fabric diagnostics and RMT state adapter and is classified by [Known Residual Triage](./known-residual-triage.md) as `closed-as-runtime-boundary`. `x-utils` has utility contract, import policy, fixture and public types and is classified as `closed-as-utility-boundary`. No open long-tail or boundary-profile decisions remain from this plan.
|
|
11
|
+
|
|
12
|
+
## Check Locally
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
node scripts/run_xtend_tests.js component-long-tail-migration --json
|
|
16
|
+
npm run test:component-long-tail-migration
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Migration Waves
|
|
20
|
+
|
|
21
|
+
| Wave | Components | Goal |
|
|
22
|
+
|------|------------|------|
|
|
23
|
+
| `wave-1-p0-routing-interaction` | closed: `x-tabs` | performance profile, browser smoke and theme matrix are complete |
|
|
24
|
+
| `wave-2-p1-theme-and-interaction` | closed: `x-theme`, `x-button`, `x-menu` | performance, a11y, interaction and routing hardening are complete |
|
|
25
|
+
| `wave-3-infrastructure-and-utility-probes` | closed: `xstate`, `x-utils` | suite, fixture, type and boundary decisions are complete; both remain documented as non-visual runtime/utility boundaries |
|
|
26
|
+
|
|
27
|
+
## Rules for Component Authors
|
|
28
|
+
|
|
29
|
+
- No long-tail component is rewritten to TypeScript or new shells in a big bang.
|
|
30
|
+
- Custom elements must first close their missing profiles in `components/*`, docs, types and component suites.
|
|
31
|
+
- Non-custom elements such as `xstate` and `x-utils` are tested as infrastructure or utility boundaries.
|
|
32
|
+
- Browser smokes and theme matrix are required only when the surface is genuinely visual or interactive.
|
|
33
|
+
- RMT continues to describe adapter data; the kernel imports no XTend types.
|
|
34
|
+
|
|
35
|
+
## Source
|
|
36
|
+
|
|
37
|
+
The migration plan is generated from `catalog/component-catalog-coverage.js` and `catalog/component-regression-priority.js`. The accepted specification is in `development/XTend-Epic11-Legacy-Long-Tail-Migrationsplan.md`.
|
|
38
|
+
|
|
39
|
+
## RC0 Adoption Update
|
|
40
|
+
|
|
41
|
+
Since `WP-E12-15`, the [RC0 Adoption Guide](./rc0-adoption-guide.md) summarizes this long-tail status as a migration note for component authors and app authors. For RC0, `xstate` and `x-utils` counted as known, accepted residuals from the Known Residual Policy; they did not block local RC0 review and did not open a publish boundary. Since `WP-E13-05`, both scopes are closed for RC1: `xstate` as a runtime boundary, `x-utils` as a utility boundary.
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
# XTend Component Platform
|
|
2
|
+
|
|
3
|
+
Contract: `xtend.docs.component-platform.v1`
|
|
4
|
+
|
|
5
|
+
This page describes the current Epic 10 state for new XTend components. New
|
|
6
|
+
components are planned TypeScript-first, shipped locally as ESM artifacts, and
|
|
7
|
+
prepared as RMT-first authoring targets. RMT remains framework-agnostic: XTend
|
|
8
|
+
components are `xtend.component` records, but the RMT kernel imports no XTend
|
|
9
|
+
classes or types.
|
|
10
|
+
|
|
11
|
+
Since `WP-E10-16`, Epic 10 is complete. The release handoff is documented in
|
|
12
|
+
[Epic 10 Release Handoff](./epic10-release-handoff.md), and complete app
|
|
13
|
+
authoring rules live in [RMT-first XTend Apps](./rmt-first-xtend-apps.md).
|
|
14
|
+
Since `WP-E11-17`, the visible UX rules have been consolidated in
|
|
15
|
+
[Component UX Authoring](./component-ux-authoring.md),
|
|
16
|
+
[Component UX App Authoring](./component-ux-app-authoring.md),
|
|
17
|
+
[Component UX Gates](./component-ux-gates.md), and
|
|
18
|
+
[Component Long-Tail Migration](./component-long-tail-migration.md).
|
|
19
|
+
|
|
20
|
+
## Platform Layers
|
|
21
|
+
|
|
22
|
+
- TypeScript source lives under `src/components/<tag>/`
|
|
23
|
+
- Runtime artifacts remain local ESM files under `components/`
|
|
24
|
+
- Public types remain `.d.ts` artifacts under `components/`
|
|
25
|
+
- RMT metadata exists as a separate `ts-rmt` artifact
|
|
26
|
+
- Fabric, telemetry, lanes, a11y, and performance are required domains in
|
|
27
|
+
`xtend.component.contract.v2`
|
|
28
|
+
- The builder creates contract, source, RMT, a11y, performance, and fixture
|
|
29
|
+
artifacts as a dry run
|
|
30
|
+
|
|
31
|
+
## RMT vNext Component Capability Registry
|
|
32
|
+
|
|
33
|
+
The current RMT vNext line extends this platform with
|
|
34
|
+
`xtend.rmt.component-capability-registry.v1`. The registry is the generic RMT
|
|
35
|
+
interface for XTend UI: it reads `components/manifest.json`,
|
|
36
|
+
`xtend.component.contract.v2`, `xtendRmtMetadata`, `observedAttributes`,
|
|
37
|
+
events, slots, parts, form association, accessibility profiles, and performance
|
|
38
|
+
profiles.
|
|
39
|
+
|
|
40
|
+
The result is one matrix for all 44 public manifest entries and 40 renderable UI
|
|
41
|
+
components. RMT can build DOM descriptors from it, bind events and state
|
|
42
|
+
bridges, and lazy import components through manifest paths. The RMT kernel stays
|
|
43
|
+
framework-neutral and imports no XTend classes or types.
|
|
44
|
+
|
|
45
|
+
See [RMT vNext Component Primitives and XTend UI](./rmt-vnext-component-primitives.md).
|
|
46
|
+
|
|
47
|
+
## P0 Component Wave
|
|
48
|
+
|
|
49
|
+
WP-E10-08 defines the first P0 component wave as
|
|
50
|
+
`xtend.epic10.p0-component-wave.v1`.
|
|
51
|
+
|
|
52
|
+
| Component | Package | Focus |
|
|
53
|
+
|-----------|---------|-------|
|
|
54
|
+
| `x-select` | `WP-E10-09` | select control, option slots, value events |
|
|
55
|
+
| `x-checkbox` | `WP-E10-09` | binary input, checked/indeterminate state |
|
|
56
|
+
| `x-radio` | `WP-E10-09` | radio group coordination and keyboard navigation |
|
|
57
|
+
| `x-textarea` | `WP-E10-10` | long-form input, validation, counter |
|
|
58
|
+
| `x-status` | `WP-E10-10` | live region, validation feedback, scheduler status |
|
|
59
|
+
| `x-progress` | `WP-E10-10` | async progress, hydration/task feedback |
|
|
60
|
+
| `x-tooltip` | `WP-E10-11` | lightweight overlay help and describedby mapping |
|
|
61
|
+
| `x-popover` | `WP-E10-11` | interactive anchored overlay |
|
|
62
|
+
| `x-drawer` | `WP-E10-11` | app shell navigation and side panels |
|
|
63
|
+
|
|
64
|
+
`x-select`, `x-checkbox`, `x-radio`, `x-textarea`, `x-status`, `x-progress`,
|
|
65
|
+
`x-tooltip`, `x-popover`, and `x-drawer` are implemented as the TypeScript-first
|
|
66
|
+
reference line and form the first P0 wave with `enterprise-ready` catalog
|
|
67
|
+
status.
|
|
68
|
+
|
|
69
|
+
## Component Lab and RMT Inspector
|
|
70
|
+
|
|
71
|
+
`WP-E10-12` introduces the Component Lab as a shell-first RMT pilot. The lab
|
|
72
|
+
uses `tests/fixtures/rmt-component-lab-pilot.rmt` and the plan module
|
|
73
|
+
`xtend-builder/preview/component-lab.js` to make all nine `enterprise-ready`
|
|
74
|
+
components locally inspectable.
|
|
75
|
+
|
|
76
|
+
The pilot surface contains:
|
|
77
|
+
|
|
78
|
+
- component preview for fixture, docs, types, and contract paths
|
|
79
|
+
- RMT Inspector for `manifest`, `adapters`, `components`, `routes`,
|
|
80
|
+
`schedules`, `templates`, and `diagnostics`
|
|
81
|
+
- telemetry panel for `snapshot.componentTelemetry`
|
|
82
|
+
- a11y and performance notes from Component Contract v2
|
|
83
|
+
- source links to runtime, TS source, RMT metadata, fixture, docs, and suite
|
|
84
|
+
|
|
85
|
+
The local gate is:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
node scripts/run_xtend_tests.js component-lab-rmt-inspector --json
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## RMT-First Demo App
|
|
92
|
+
|
|
93
|
+
`WP-E10-13` provides the first productive RMT-first demo app without a manual
|
|
94
|
+
shell through `tests/browser/fixtures/rmt-first-demo-app-smoke.html` and
|
|
95
|
+
`xtendrmt/rmt-first-demo-app.rmt`. The host page provides only a
|
|
96
|
+
`data-rmt-host="rmt-first-demo"` root, the local XTend Loader, the local
|
|
97
|
+
manifest, and the RMT runtime.
|
|
98
|
+
|
|
99
|
+
The app shell, navigation, routes, page templates, component records,
|
|
100
|
+
schedules, Fabric lanes, and diagnostics are rendered from the RMT document.
|
|
101
|
+
The demo uses the full Epic 10 P0 wave: `x-select`, `x-checkbox`, `x-radio`,
|
|
102
|
+
`x-textarea`, `x-status`, `x-progress`, `x-tooltip`, `x-popover`, and
|
|
103
|
+
`x-drawer`.
|
|
104
|
+
|
|
105
|
+
The local gate is:
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
node scripts/run_xtend_tests.js rmt-first-demo-app --json
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Existing Component Metadata
|
|
112
|
+
|
|
113
|
+
`WP-E10-14` brings existing prioritized components into the RMT/Fabric line as
|
|
114
|
+
a `js-legacy` contract overlay. The machine-readable catalog lives in
|
|
115
|
+
`catalog/epic10-existing-component-metadata.js` and uses the migration strategy
|
|
116
|
+
`js-legacy-contract-overlay-no-runtime-rewrite`.
|
|
117
|
+
|
|
118
|
+
The target components are `x-router`, `x-link`, `x-input`, `x-form`, `x-modal`,
|
|
119
|
+
`x-dialog`, `x-tabs`, `x-toast`, and `x-alert`. Each component receives
|
|
120
|
+
Contract v2, RMT, Fabric, telemetry, lane, a11y, and performance metadata
|
|
121
|
+
without requiring this package to rewrite the runtime.
|
|
122
|
+
|
|
123
|
+
The local gate is:
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
node scripts/run_xtend_tests.js existing-component-metadata --json
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Epic 10 Platform Gates
|
|
130
|
+
|
|
131
|
+
`WP-E10-15` bundles the platform rules as `xtend.epic10.platform-gates.v1`.
|
|
132
|
+
The machine-readable plan lives in `catalog/epic10-platform-gates.js` and
|
|
133
|
+
connects Component Contract v2, Existing Component Metadata, the RMT-first demo
|
|
134
|
+
app, browser smokes, a11y, performance, and visual regression.
|
|
135
|
+
|
|
136
|
+
The fast PR path contains `component-contract-v2`, `epic10-p0-component-wave`,
|
|
137
|
+
`component-lab-rmt-inspector`, `rmt-first-demo-app`,
|
|
138
|
+
`existing-component-metadata`, `browser`, `a11y-hydration`,
|
|
139
|
+
`screenreader-signals`, `motion-contrast`, `regression-priority`, and
|
|
140
|
+
`references`. Release-only performance stays separate through
|
|
141
|
+
`fabric-performance-measurements`, `performance-regression`, and
|
|
142
|
+
`hydration-policy`.
|
|
143
|
+
|
|
144
|
+
The local gate is:
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
node scripts/run_xtend_tests.js epic10-platform-gates --json
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Epic 10 Release Handoff
|
|
151
|
+
|
|
152
|
+
`WP-E10-16` finalizes the canonical guide structure and the completion contract
|
|
153
|
+
`xtend.epic10.release-handoff.v1`. The machine-readable plan lives in
|
|
154
|
+
`catalog/epic10-release-handoff.js`.
|
|
155
|
+
|
|
156
|
+
The canonical Component/Fabric boundary is
|
|
157
|
+
`adapter-injection-via-xtend-component-resolveFabricContext`.
|
|
158
|
+
`window.XTendFabric` remains a host convenience and enterprise integration
|
|
159
|
+
surface, but components receive Fabric, lane, and fiber context through the
|
|
160
|
+
`xtend.component` adapter.
|
|
161
|
+
|
|
162
|
+
The local gate is:
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
node scripts/run_xtend_tests.js epic10-release-handoff --json
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
## Epic 11 Enterprise UX Handoff
|
|
169
|
+
|
|
170
|
+
`WP-E11-18` finalizes visible Component UX maturity as
|
|
171
|
+
`xtend.epic11.enterprise-ux-handoff.v1`. The machine-readable plan lives in
|
|
172
|
+
`catalog/epic11-enterprise-ux-handoff.js`.
|
|
173
|
+
|
|
174
|
+
The completion mode is `completed-with-accepted-long-tail-handoff`: shell,
|
|
175
|
+
styling, runtime a11y, performance, component network, RMT shell authoring,
|
|
176
|
+
component lab, browser smokes, theme matrix, and authoring guides are accepted
|
|
177
|
+
as a product line. After `WP-E12-09`, `x-tabs`, `x-theme`, `x-button`, and
|
|
178
|
+
`x-menu` are runtime-closed; `xstate` has suite, fixture, types, and adapter
|
|
179
|
+
boundary probe; `x-utils` has utility contract, import policy, fixture, and
|
|
180
|
+
types. Since `WP-E13-05`, `xstate` is closed as a runtime boundary and
|
|
181
|
+
`x-utils` as a utility boundary for RC1.
|
|
182
|
+
|
|
183
|
+
The local gate is:
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
node scripts/run_xtend_tests.js epic11-enterprise-ux-handoff --json
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## RMT First-Class Support
|
|
190
|
+
|
|
191
|
+
Every new component must be authorable as an RMT component record:
|
|
192
|
+
|
|
193
|
+
- Adapter: `xtend.component`
|
|
194
|
+
- Template mode: `dom_descriptor`
|
|
195
|
+
- Event binding: `dom-event-to-rmt-command`
|
|
196
|
+
- Required schedules: `component.visible.mount`, hydration schedule, and
|
|
197
|
+
`diagnostics.snapshot`
|
|
198
|
+
- Kernel boundary: `no-rmt-kernel-import-of-xtend-types`
|
|
199
|
+
|
|
200
|
+
RMT therefore describes the component, props, attributes, slots, events,
|
|
201
|
+
hydration, and schedule. XTend executes the Custom Elements locally.
|
|
202
|
+
|
|
203
|
+
## Fabric, Telemetry, and Lanes
|
|
204
|
+
|
|
205
|
+
New components must be able to receive Fabric context. This includes:
|
|
206
|
+
|
|
207
|
+
- `@xtend-fabric` boundary
|
|
208
|
+
- lifecycle operations `mount`, `hydrate`, `render`, `update`, `event`,
|
|
209
|
+
`error`, `unmount`
|
|
210
|
+
- telemetry snapshot `xtend.fabric.telemetry-snapshot.v1`
|
|
211
|
+
- backpressure-capable measurement points
|
|
212
|
+
- deterministic lane precedence from RMT, component metadata, Fabric override,
|
|
213
|
+
and blueprint default
|
|
214
|
+
|
|
215
|
+
## A11y and Performance
|
|
216
|
+
|
|
217
|
+
A11y is not a downstream test. Form controls need labels, error regions,
|
|
218
|
+
keyboard behavior, and screen reader signals. Feedback components need live
|
|
219
|
+
regions and non-color status signals. Overlays need Escape, focus return, and
|
|
220
|
+
reduced motion.
|
|
221
|
+
|
|
222
|
+
Performance is also part of the contract. Every component must declare budget
|
|
223
|
+
class, lane, hydration policy, and critical measurement points.
|
|
224
|
+
|
|
225
|
+
## Local Gates
|
|
226
|
+
|
|
227
|
+
```bash
|
|
228
|
+
node scripts/run_xtend_tests.js component-ux-authoring-docs --json
|
|
229
|
+
node scripts/run_xtend_tests.js rmt-vnext-component-primitives --json
|
|
230
|
+
node scripts/run_xtend_tests.js component-long-tail-migration --json
|
|
231
|
+
node scripts/run_xtend_tests.js epic11-enterprise-ux-handoff --json
|
|
232
|
+
node scripts/run_xtend_tests.js component-shell-theme-matrix --json
|
|
233
|
+
node scripts/run_xtend_tests.js component-ux-browser-smokes --json
|
|
234
|
+
node scripts/run_xtend_tests.js epic10-p0-component-wave --json
|
|
235
|
+
node scripts/run_xtend_tests.js component-lab-rmt-inspector --json
|
|
236
|
+
node scripts/run_xtend_tests.js rmt-first-demo-app --json
|
|
237
|
+
node scripts/run_xtend_tests.js existing-component-metadata --json
|
|
238
|
+
node scripts/run_xtend_tests.js epic10-platform-gates --json
|
|
239
|
+
node scripts/run_xtend_tests.js epic10-release-handoff --json
|
|
240
|
+
node scripts/run_xtend_tests.js builder-typescript-blueprint --json
|
|
241
|
+
node scripts/run_xtend_tests.js component-contract-v2 --json
|
|
242
|
+
node scripts/run_xtend_tests.js references --json
|
|
243
|
+
```
|