@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,137 @@
|
|
|
1
|
+
# Design Tokens
|
|
2
|
+
|
|
3
|
+
Starting with `WP-E12-12`, XTend uses the contract
|
|
4
|
+
`xtend.design-tokens.product-contract.v1`. Central theme, density, motion,
|
|
5
|
+
focus, and status values are therefore a stable product API, not just internal
|
|
6
|
+
CSS helper values.
|
|
7
|
+
|
|
8
|
+
Local gate:
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
node scripts/run_xtend_tests.js design-tokens --json
|
|
12
|
+
npm run test:design-tokens
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Runtime Provider
|
|
16
|
+
|
|
17
|
+
`x-theme` is the runtime provider. Apps can register tokens through theme
|
|
18
|
+
packs:
|
|
19
|
+
|
|
20
|
+
```js
|
|
21
|
+
window.XTend.theme.registerTheme('enterprise-light', {
|
|
22
|
+
'--xtend-color-primary': '#2563eb',
|
|
23
|
+
'--xtend-surface': '#ffffff',
|
|
24
|
+
'--xtend-text': '#111827',
|
|
25
|
+
'--xtend-density-spacing': '0.75rem'
|
|
26
|
+
});
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
The complete example base lives in
|
|
30
|
+
`design-tokens/themes/enterprise-light.json`.
|
|
31
|
+
|
|
32
|
+
## Product Tokens
|
|
33
|
+
|
|
34
|
+
Important custom properties:
|
|
35
|
+
|
|
36
|
+
| Token | Purpose |
|
|
37
|
+
|-------|---------|
|
|
38
|
+
| `--xtend-color-primary` | interactive primary color |
|
|
39
|
+
| `--xtend-color-primary-dark` | hover/active variant |
|
|
40
|
+
| `--xtend-color-accent` | accent or inverse foreground color |
|
|
41
|
+
| `--xtend-surface` | default surface |
|
|
42
|
+
| `--xtend-surface-muted` | secondary surface |
|
|
43
|
+
| `--xtend-text` | default text |
|
|
44
|
+
| `--xtend-overlay-bg` | overlay background |
|
|
45
|
+
| `--xtend-border-color` | semantic border color |
|
|
46
|
+
| `--xtend-focus-outline` | keyboard focus |
|
|
47
|
+
| `--xtend-focus-outline-offset` | focus offset |
|
|
48
|
+
| `--xtend-info-bg` / `--xtend-info-fg` | info status |
|
|
49
|
+
| `--xtend-success-bg` / `--xtend-success-fg` | success status |
|
|
50
|
+
| `--xtend-warning-bg` / `--xtend-warning-fg` | warning status |
|
|
51
|
+
| `--xtend-error-bg` / `--xtend-error-fg` | error status |
|
|
52
|
+
| `--xtend-shadow` | elevation |
|
|
53
|
+
| `--xtend-radius` | default radius |
|
|
54
|
+
| `--xtend-font-family` | font family |
|
|
55
|
+
| `--xtend-motion-duration-fast` | fast transition |
|
|
56
|
+
| `--xtend-motion-duration-base` | base transition |
|
|
57
|
+
| `--xtend-motion-scale` | motion scaling |
|
|
58
|
+
| `--xtend-density-spacing` | density spacing |
|
|
59
|
+
| `--xtend-control-height` | density control height |
|
|
60
|
+
| `--xtend-font-scale` | density font scaling |
|
|
61
|
+
|
|
62
|
+
## Theme Packs
|
|
63
|
+
|
|
64
|
+
Required packs:
|
|
65
|
+
|
|
66
|
+
- `light`
|
|
67
|
+
- `dark`
|
|
68
|
+
- `high-contrast`
|
|
69
|
+
- `forced-colors`
|
|
70
|
+
|
|
71
|
+
`high-contrast` and `forced-colors` are part of the product contract.
|
|
72
|
+
`forced-colors` uses system colors such as `Canvas`, `CanvasText`,
|
|
73
|
+
`Highlight`, and `HighlightText`.
|
|
74
|
+
|
|
75
|
+
## Density Packs
|
|
76
|
+
|
|
77
|
+
Required packs:
|
|
78
|
+
|
|
79
|
+
- `comfortable`
|
|
80
|
+
- `compact`
|
|
81
|
+
- `dense`
|
|
82
|
+
|
|
83
|
+
`x-theme.setDensity('dense')` sets `--xtend-density-spacing`,
|
|
84
|
+
`--xtend-density-scale`, `--xtend-control-height`, and `--xtend-font-scale`.
|
|
85
|
+
`spacious` is no longer part of the enterprise token line.
|
|
86
|
+
|
|
87
|
+
## CSS Parts
|
|
88
|
+
|
|
89
|
+
The token layer complements the component styling contract. Components continue
|
|
90
|
+
to document their own `::part(...)` surfaces. Shared public parts are:
|
|
91
|
+
|
|
92
|
+
- `root`
|
|
93
|
+
- `control`
|
|
94
|
+
- `label`
|
|
95
|
+
- `content`
|
|
96
|
+
- `helper`
|
|
97
|
+
- `error`
|
|
98
|
+
- `icon`
|
|
99
|
+
- `panel`
|
|
100
|
+
- `overlay`
|
|
101
|
+
- `backdrop`
|
|
102
|
+
- `listbox`
|
|
103
|
+
- `option`
|
|
104
|
+
- `track`
|
|
105
|
+
- `thumb`
|
|
106
|
+
- `media`
|
|
107
|
+
|
|
108
|
+
## RMT Authoring
|
|
109
|
+
|
|
110
|
+
RMT can schedule or declare theme packs, density packs, and style data. The
|
|
111
|
+
kernel imports no XTend types; the boundary remains
|
|
112
|
+
`no-rmt-kernel-import-of-xtend-types`.
|
|
113
|
+
|
|
114
|
+
The Component Shell Theme Matrix and Visual Snapshot Fixture use the same
|
|
115
|
+
`--xtend-*` tokens as `x-theme`. XTend apps can therefore later be templated
|
|
116
|
+
fully RMT-first without carrying a second token vocabulary.
|
|
117
|
+
|
|
118
|
+
## RC0 Adoption Update
|
|
119
|
+
|
|
120
|
+
Since `WP-E12-15`, the [RC0 Adoption Guide](./rc0-adoption-guide.md) points to
|
|
121
|
+
Design Tokens as the required styling baseline for new components and RMT
|
|
122
|
+
shells. Token or CSS part changes count as public API changes and need
|
|
123
|
+
migration notes in the RC0 handoff.
|
|
124
|
+
|
|
125
|
+
## ECH-WP-11 Third-Party Design Authoring Update
|
|
126
|
+
|
|
127
|
+
The guide [Third-Party Design Authoring](./third-party-design-authoring.md)
|
|
128
|
+
translates the token layer into a corporate-design path for host apps. It
|
|
129
|
+
describes XTend.css override patterns, XTheme token bridge, CSS parts, icon
|
|
130
|
+
pack registration, layout modes, a11y dos and don'ts, P0 token/part
|
|
131
|
+
references, and migration from legacy token names.
|
|
132
|
+
|
|
133
|
+
Local gate:
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
node scripts/run_xtend_tests.js enterprise-third-party-authoring-guide --json
|
|
137
|
+
```
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Docs RMT Production Hardening
|
|
2
|
+
|
|
3
|
+
`WP-E13-10` raises the existing Docs app Parsedown/RMT pilot to an RC1 shape that is closer to production.
|
|
4
|
+
|
|
5
|
+
- Contract: `xtend.epic13.docs-rmt-production-hardening.v1`
|
|
6
|
+
- RMT document: `docs/xtendrmt-parsedown-docs.rmt`
|
|
7
|
+
- Host: `docs/index.php`
|
|
8
|
+
- Page loader: `docs/utils/pageloader.js`
|
|
9
|
+
- Gate: `node scripts/run_xtend_tests.js epic13-docs-rmt-production-hardening --json`
|
|
10
|
+
- Trusted DOM proof: `xtend.epic13.trusted-dom-boundary.v1`
|
|
11
|
+
|
|
12
|
+
## Purpose
|
|
13
|
+
|
|
14
|
+
The Docs app remains an XTend app with PHP/Parsedown as parser host. RMT renders the app shell shell-first, marks stable slots and schedules extensions. Parsedown, PHP execution and sanitizing remain outside the RMT kernel.
|
|
15
|
+
|
|
16
|
+
## Extension Slots
|
|
17
|
+
|
|
18
|
+
| Slot | Content kind | Schedule | Boundary |
|
|
19
|
+
|------|--------------|----------|----------|
|
|
20
|
+
| `docs.slot.content` | `parsedownHtml` | `docs.markdown.parse` | `xtend.security.sanitizing-boundary.v1` |
|
|
21
|
+
| `docs.slot.rich-content` | `richHtml` | `docs.rich-content.prepare` | `xtend.security.sanitizing-boundary.v1` |
|
|
22
|
+
| `docs.slot.media` | `xplayerTutorial` | `docs.media.lazy` | component-managed |
|
|
23
|
+
| `docs.slot.diagnostics` | `diagnostics` | `docs.diagnostics.snapshot` | structured-diagnostics |
|
|
24
|
+
|
|
25
|
+
## Runtime Metadata
|
|
26
|
+
|
|
27
|
+
`docs/index.php` exposes `window.xtendDocsRmtProductionHardening`. `docs/utils/pageloader.js` mirrors `window.xtendDocsRmtProductionLastRender` per route with shell-first status, extension slots, schedules, diagnostics slot and kernel boundary.
|
|
28
|
+
|
|
29
|
+
## Handoff
|
|
30
|
+
|
|
31
|
+
`WP-E13-10` is complete. `WP-E13-11` verified Trusted DOM, Parsedown and RMT HTML boundary close to the browser in [Trusted DOM Boundary Browser Proof](./trusted-dom-boundary-browser-proof.md). `WP-E13-12` completed [RC1 Migration Notes](./rc1-migration-notes.md) and `xtend.epic13.rc1-migration-notes-semver.v1`. `WP-E13-13` completed [RC1 Gate Matrix and CI Handoff](./rc1-gate-matrix-ci-handoff.md) and `xtend.epic13.rc1-gate-matrix-ci-handoff.v1`.
|
|
@@ -0,0 +1,413 @@
|
|
|
1
|
+
# XTend Enterprise Adoption Guide
|
|
2
|
+
|
|
3
|
+
- Status: Active since `ER-WP-39`, extended in `WP-E12-16`
|
|
4
|
+
- Docs Contract: `xtend.docs.enterprise-adoption.v1`
|
|
5
|
+
- Epic 12 Adoption Contract: `xtend.epic12.docs-adoption.v1`
|
|
6
|
+
- Workpackage: `ER-WP-39`, `WP-E12-15`, `WP-E12-16`
|
|
7
|
+
- Package Metadata: `xtend.enterpriseAdoption`, `xtend.epic12DocsAdoption`
|
|
8
|
+
- Scope: Loader, Dev Server, XTend-Fabric, XTendRMT, Security, A11y, Performance, CI Gates, RC0 Gate Matrix and Release Readiness
|
|
9
|
+
|
|
10
|
+
## Goal
|
|
11
|
+
|
|
12
|
+
This guide is the official starting path for teams that want to use XTend in enterprise web apps. It connects the previously separate product building blocks into an operative flow:
|
|
13
|
+
|
|
14
|
+
- XTend UI remains the Web Component and UI Builder product.
|
|
15
|
+
- XTendRMT remains scheduler, runtime bridge and templating kernel.
|
|
16
|
+
- XTend-Fabric is the local safety, diagnostics, telemetry and reporter layer.
|
|
17
|
+
- Local development remains CDN-free and uses the canonical ESM loader `xtend-loader.js`.
|
|
18
|
+
|
|
19
|
+
The guide does not start a publish process. `package.json` carries `private: false` for RC1 publish prep after release checklist and release owner have explicitly approved the publish boundary.
|
|
20
|
+
|
|
21
|
+
## Adoption Stages
|
|
22
|
+
|
|
23
|
+
| Stage | Result | Primary Artifacts |
|
|
24
|
+
|-------|--------|-------------------|
|
|
25
|
+
| 1. Local Baseline | XTend runs locally and CDN-free | `xtend-loader.js`, `components/manifest.json`, `npm run dev:local` |
|
|
26
|
+
| 2. UI Baseline | components are loaded from the manifest | `docs/components.md`, `docs/public-component-types.md` |
|
|
27
|
+
| 3. Fabric Baseline | errors, diagnostics and telemetry are locally visible | `fabric/xtend-fabric.js`, `docs/xtend-fabric.md` |
|
|
28
|
+
| 4. RMT Baseline | scheduling, routes and components run through native RMT domains | `docs/xtendrmt-app-dsl.md`, `docs/xtendrmt-runtime-bridge.md` |
|
|
29
|
+
| 5. Security Baseline | loader, import, DOM and supply-chain boundaries are understood | `docs/manifest-import-policy.md`, `docs/trusted-dom-sanitizing.md`, `docs/supply-chain-gates.md` |
|
|
30
|
+
| 6. Quality Baseline | performance, a11y and component coverage are gateable | `docs/performance.md`, `docs/screenreader-signals.md`, `docs/component-catalog-coverage.md` |
|
|
31
|
+
| 7. Release Baseline | PR, full-release and release-candidate gates are traceable | `development/XTend-CI-Gate-Matrix.md`, `development/XTend-Release-Checklist-und-SemVer-Policy.md` |
|
|
32
|
+
| 8. Epic 10 Baseline | TypeScript-first Component Platform and RMT-first apps are gateable | `docs/component-platform.md`, `docs/rmt-first-xtend-apps.md`, `docs/epic10-release-handoff.md` |
|
|
33
|
+
| 9. Epic 12 RC0 Baseline | long-tail closure, snapshot gate, design tokens, RMT DSL polish, RC0 matrix and owner handoff are documented for adoption | `docs/rc0-adoption-guide.md`, `docs/rc0-gate-matrix.md`, `docs/epic12-rc0-handoff.md` |
|
|
34
|
+
| 10. Epic 13 RC1 Readiness | RC0-to-RC1 gate reconciliation, release-owner acceptance, network evidence, package dry-run export lock, known residual triage, hydration performance closure, PROD-near CSP smokes, visual owner artifacts, RMT production readiness and Docs RMT production hardening are scoped | `docs/rc1-readiness.md`, `docs/hydration-performance-closure.md`, `docs/prod-browser-csp-smokes.md`, `docs/rmt-production-readiness.md`, `docs/docs-rmt-production-hardening.md`, `development/RC0-RC1-transfer-EPIC13.md` |
|
|
35
|
+
|
|
36
|
+
## 1. Local Baseline
|
|
37
|
+
|
|
38
|
+
Use the local dev/test server and the canonical loader:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
npm run dev:local
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
The loader is:
|
|
45
|
+
|
|
46
|
+
```text
|
|
47
|
+
xtend-loader.js
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
The legacy stub `xtend-dev.js` remains only a compatibility surface. New apps reference `xtend-loader.js` directly and configure the manifest locally:
|
|
51
|
+
|
|
52
|
+
```html
|
|
53
|
+
<script
|
|
54
|
+
type="module"
|
|
55
|
+
src="/xtend-loader.js"
|
|
56
|
+
data-manifest="/components/manifest.json">
|
|
57
|
+
</script>
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Required rules:
|
|
61
|
+
|
|
62
|
+
- No CDN in the default path.
|
|
63
|
+
- No external manifest or module URLs.
|
|
64
|
+
- Use `window.__XTendLoaderBootPromise` when app code has to wait for loaded components.
|
|
65
|
+
- Browser-near demos and fixtures run through the local server.
|
|
66
|
+
|
|
67
|
+
Further reading: [XTend Loader](./xtend-loader.md), [Manifest Import Policy](./manifest-import-policy.md).
|
|
68
|
+
|
|
69
|
+
For PROD-near CSP smokes, the contract `xtend.epic13.prod-browser-csp-smoke.v1` is additionally available starting with `WP-E13-07`:
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
npm run test:epic13-prod-browser-csp-smoke
|
|
73
|
+
npm run dev:local:csp
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Further reading: [PROD Browser CSP Smokes](./prod-browser-csp-smokes.md).
|
|
77
|
+
|
|
78
|
+
## 2. UI Baseline
|
|
79
|
+
|
|
80
|
+
XTend components are loaded as Custom Elements through the manifest. Enterprise teams should start with the prioritized, type-gated components:
|
|
81
|
+
|
|
82
|
+
- Routing: `x-router`, `x-link`
|
|
83
|
+
- Overlays: `x-dialog`, `x-modal`, `x-lightbox`
|
|
84
|
+
- Forms: `x-input`, `x-form`, `x-calendar`, `x-writer`
|
|
85
|
+
- Feedback: `x-alert`, `x-toast`, `x-spinner`
|
|
86
|
+
- Interaction: `x-button`, `x-tabs`, `x-menu`, `x-summary`
|
|
87
|
+
|
|
88
|
+
Public types are available as `.d.ts` files for the prioritized surfaces. Events, attributes and detail payloads are documented in [Public Component Types](./public-component-types.md).
|
|
89
|
+
|
|
90
|
+
Required rules:
|
|
91
|
+
|
|
92
|
+
- New components need source, docs, fixture, component suite, types, a11y profile and performance profile.
|
|
93
|
+
- Event names remain stable and are reflected in docs and types.
|
|
94
|
+
- State-driven components mirror canonical `xstate` keys.
|
|
95
|
+
|
|
96
|
+
Further reading: [Component Development](./components.md), [Component Catalog Coverage](./component-catalog-coverage.md), [Visual Browser Regression](./visual-browser-regression.md).
|
|
97
|
+
|
|
98
|
+
Since `ECH-WP-11`, corporate-design teams have their own guide: [Third-Party Design Authoring](./third-party-design-authoring.md). It belongs to the UI baseline and documents the contract `xtend.enterprise.third-party-authoring-guide.v1`, XTend.css override patterns, XTheme token bridge, CSS parts, icon pack registration, layout modes, a11y dos and donts, P0 token/part references and legacy-token migration.
|
|
99
|
+
|
|
100
|
+
Local gate:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
node scripts/run_xtend_tests.js enterprise-third-party-authoring-guide --json
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Since `ECH-WP-12`, the Enterprise Component flexibility wave is cut as a release handoff: [Enterprise Component Flex Release Handoff](./enterprise-component-flex-release-handoff.md). The contract `xtend.enterprise.component-flex-release-handoff.v1` documents SemVer assessment, deprecated aliases, migration notes, release checklist, adoption risks and the publish boundary `private-until-release-owner-acceptance`.
|
|
107
|
+
|
|
108
|
+
Local gate:
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
node scripts/run_xtend_tests.js enterprise-component-flex-release-handoff --json
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## 3. Fabric Baseline
|
|
115
|
+
|
|
116
|
+
XTend-Fabric is the safety and telemetry layer for UI work:
|
|
117
|
+
|
|
118
|
+
```js
|
|
119
|
+
const fabric = window.XTendFabric.createXtendFabric();
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
Important APIs:
|
|
123
|
+
|
|
124
|
+
| API | Use |
|
|
125
|
+
|-----|-----|
|
|
126
|
+
| `createComponentLifecycleBoundary` | contain lifecycle errors from components |
|
|
127
|
+
| `runFiber` | execute UI work with lane, kind and diagnostics |
|
|
128
|
+
| `createTelemetrySnapshot` | create local runtime snapshots |
|
|
129
|
+
| `createBackpressureSignal` | make scheduler and host pressure visible |
|
|
130
|
+
| `createReporterAdapter` | prepare enterprise reporters safely |
|
|
131
|
+
| `createRuntimeDiagnosticsBridge` | connect Fabric, `xstate`, API and RMT diagnostics |
|
|
132
|
+
|
|
133
|
+
Reporters are opt-in. Without a registered reporter, no diagnostic leaves the runtime. Enterprise reporters must accept redacted payloads and must not serialize DOM nodes, tokens, cookies or credentials.
|
|
134
|
+
|
|
135
|
+
Further reading: [XTend-Fabric Runtime](./xtend-fabric.md), [Fabric RMT Lane Mapping](./xtend-fabric-rmt-lane-mapping.md).
|
|
136
|
+
|
|
137
|
+
## 4. RMT Baseline
|
|
138
|
+
|
|
139
|
+
XTendRMT is framework-agnostic. RMT does not know XTend as a kernel dependency, but can schedule XTend work through neutral records and adapters.
|
|
140
|
+
|
|
141
|
+
Native domains:
|
|
142
|
+
|
|
143
|
+
| Domain | Purpose |
|
|
144
|
+
|--------|---------|
|
|
145
|
+
| `adapters` | host adapters for XTend, XRouter, Vanilla or custom hosts |
|
|
146
|
+
| `components` | component records, props, slots, events and schedule refs |
|
|
147
|
+
| `routes` | native route records with XRouter-compatible adapter output |
|
|
148
|
+
| `schedules` | visible, idle, diagnostics and user-blocking policies |
|
|
149
|
+
| `templates` | structured templating paths without framework embedding |
|
|
150
|
+
|
|
151
|
+
Enterprise rule: XTend UI and XTendRMT are operated together, but not embedded into each other. XTend-Fabric may consume RMT adapter and bridge signals; the RMT kernel remains host-neutral.
|
|
152
|
+
|
|
153
|
+
Further reading: [XTendRMT App DSL](./xtendrmt-app-dsl.md), [XTendRMT Runtime Bridge](./xtendrmt-runtime-bridge.md), [Native RMT Authoring](./xtendrmt-native-authoring.md).
|
|
154
|
+
|
|
155
|
+
## 5. Security Baseline
|
|
156
|
+
|
|
157
|
+
Enterprise adoption starts with clear trust boundaries:
|
|
158
|
+
|
|
159
|
+
| Area | Operating Rule |
|
|
160
|
+
|------|----------------|
|
|
161
|
+
| Loader | only local, same-origin or loopback manifest/module paths |
|
|
162
|
+
| Manifest | no URL dependencies, no invalid tags, no external defaults |
|
|
163
|
+
| Dynamic Imports | `.js` and `.mjs`, no `javascript:`, `data:`, `blob:` or CDN URLs |
|
|
164
|
+
| Trusted DOM | `html_fragment` and Parsedown HTML remain DOM-untrusted |
|
|
165
|
+
| Events | no credentials in event details or diagnostics |
|
|
166
|
+
| Supply Chain | private package, explicit license and vulnerability policy |
|
|
167
|
+
|
|
168
|
+
Local gates:
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
npm run test:manifest-policy
|
|
172
|
+
npm run test:supply-chain
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
Further reading: [Manifest Import Policy](./manifest-import-policy.md), [Trusted DOM and Sanitizing](./trusted-dom-sanitizing.md), [Supply-Chain Gates](./supply-chain-gates.md).
|
|
176
|
+
|
|
177
|
+
## 6. Performance Baseline
|
|
178
|
+
|
|
179
|
+
XTend follows performance by design. Components receive profiles, budgets, hydration policies and measurement points.
|
|
180
|
+
|
|
181
|
+
Required points:
|
|
182
|
+
|
|
183
|
+
- Use `visible`, `idle` and `lazy` hydration deliberately.
|
|
184
|
+
- Use `user-blocking` only for real user interaction and a11y-critical work.
|
|
185
|
+
- Separate DOM reads and DOM writes.
|
|
186
|
+
- Throttle or coalesce high-frequency events.
|
|
187
|
+
- Evaluate performance regression locally and triage warnings.
|
|
188
|
+
|
|
189
|
+
Local gates:
|
|
190
|
+
|
|
191
|
+
```bash
|
|
192
|
+
npm run test:fabric-performance
|
|
193
|
+
npm run test:performance
|
|
194
|
+
npm run test:hydration-policy
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
Further reading: [Performance for Component Authors](./performance.md), [Performance Measurements](./performance-measurements.md), [Performance Regression](./performance-regression.md), [Hydration Policies](./hydration-policies.md).
|
|
198
|
+
|
|
199
|
+
Since `WP-E13-06`, the RC1 watchpoint `xtend.component.hydrate` is closed through `xtend.epic13.hydration-performance-closure.v1`. The local baseline is `31ms / 32ms`, reports `warnCount === 0` and remains traceable through [Hydration Performance Closure](./hydration-performance-closure.md).
|
|
200
|
+
|
|
201
|
+
## 7. A11y Baseline
|
|
202
|
+
|
|
203
|
+
XTend treats accessibility as a design requirement.
|
|
204
|
+
|
|
205
|
+
Required points:
|
|
206
|
+
|
|
207
|
+
- Document focus, keyboard and screen-reader signals for interactive components.
|
|
208
|
+
- Model `aria-live`, status regions, error regions and announcements through `xtend.a11y.screenreader-signals.v1`.
|
|
209
|
+
- Respect `prefers-reduced-motion` and `forced-colors`.
|
|
210
|
+
- Do not use only color as status signal.
|
|
211
|
+
- A11y work may be mapped through Fabric lane `a11y` and RMT `user-blocking`.
|
|
212
|
+
|
|
213
|
+
Local gates:
|
|
214
|
+
|
|
215
|
+
```bash
|
|
216
|
+
npm run test:screenreader-signals
|
|
217
|
+
npm run test:motion-contrast
|
|
218
|
+
npm run test:a11y
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
Further reading: [A11y Keyboard Smokes](./a11y-keyboard-smokes.md), [Screenreader Signals](./screenreader-signals.md), [Motion and Contrast](./motion-contrast.md).
|
|
222
|
+
|
|
223
|
+
## 8. CI and Release Readiness
|
|
224
|
+
|
|
225
|
+
The CI matrix separates fast PR checks from release-near full gates:
|
|
226
|
+
|
|
227
|
+
| Gate | Command | Purpose |
|
|
228
|
+
|------|---------|---------|
|
|
229
|
+
| PR Fast | `npm run test:pr:report` | fast feedback for pull requests |
|
|
230
|
+
| Full Release | `npm run test:release:full:report` | complete local runner suite with JSON report |
|
|
231
|
+
| Nightly Build | `.github/workflows/xtend-nightly-build.yml` | recurring Node 26 artifact run with release, RMT primitive and package evidence |
|
|
232
|
+
|
|
233
|
+
Release candidates additionally need:
|
|
234
|
+
|
|
235
|
+
```bash
|
|
236
|
+
npm run test:manifest-policy
|
|
237
|
+
npm run test:supply-chain
|
|
238
|
+
npm run test:docs-rmt-pilot
|
|
239
|
+
npm run test:rmt-artifact-parity
|
|
240
|
+
npm run release:report
|
|
241
|
+
npm run pack:dry-run
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
Conditional network gates:
|
|
245
|
+
|
|
246
|
+
Nightly Build evidence is uploaded as `xtend-nightly-build-node-26` and includes `.xtend-test-results/xtend-nightly-build-manifest.json`. Browser-heavy Source-to-Sea evidence and audit/SBOM network evidence intentionally remain manual jobs in this workflow through `run_source_to_sea=true` and `run_conditional_network=true`.
|
|
247
|
+
|
|
248
|
+
```bash
|
|
249
|
+
npm audit --audit-level=moderate
|
|
250
|
+
npm sbom --sbom-format=cyclonedx --json
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
When network gates do not run, the candidate remains a local dry run. For RC1 publish prep, release owner, license decision, changelog, migration notes and gate artifacts are accepted; `npm publish` remains a separate manual step.
|
|
254
|
+
|
|
255
|
+
Further reading: [Release Checklist and SemVer Policy](../development/XTend-Release-Checklist-und-SemVer-Policy.md), [CI Gate Matrix](../development/XTend-CI-Gate-Matrix.md).
|
|
256
|
+
|
|
257
|
+
## 9. Epic 10 Release Handoff
|
|
258
|
+
|
|
259
|
+
Epic 10 has been complete since `WP-E10-16`. The handoff `xtend.epic10.release-handoff.v1` documents:
|
|
260
|
+
|
|
261
|
+
- TypeScript-first Component Platform
|
|
262
|
+
- RMT-first XTend Apps
|
|
263
|
+
- Existing Component Metadata Overlays
|
|
264
|
+
- Component Lab and RMT Inspector
|
|
265
|
+
- browser, a11y, performance and visual gates
|
|
266
|
+
- migration notes and next-wave handoff
|
|
267
|
+
|
|
268
|
+
The canonical Component-Fabric boundary is `adapter-injection-via-xtend-component-resolveFabricContext`.
|
|
269
|
+
|
|
270
|
+
Local gate:
|
|
271
|
+
|
|
272
|
+
```bash
|
|
273
|
+
npm run test:epic10-release-handoff
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
Further reading: [Epic 10 Release Handoff](./epic10-release-handoff.md), [RMT-first XTend Apps](./rmt-first-xtend-apps.md).
|
|
277
|
+
|
|
278
|
+
## 10. Epic 11 Enterprise UX Handoff
|
|
279
|
+
|
|
280
|
+
Epic 11 has been complete in mode `completed-with-accepted-long-tail-handoff` since `WP-E11-18`. The handoff `xtend.epic11.enterprise-ux-handoff.v1` documents:
|
|
281
|
+
|
|
282
|
+
- Component Shell, styling, runtime a11y, performance and component network
|
|
283
|
+
- RMT Shell Authoring for Component UX
|
|
284
|
+
- Component Lab UX Inspector
|
|
285
|
+
- browser-near UX smokes and Component Shell Theme Matrix
|
|
286
|
+
- authoring guides for component and app authors
|
|
287
|
+
- historical accepted residuals for `xstate` and `x-utils`; `x-tabs`, `x-theme`, `x-button` and `x-menu` are closed in Epic 12, `xstate` has suite, fixture and types since `WP-E12-08`, `x-utils` has utility contract, import policy, fixture and types since `WP-E12-09`. Since `WP-E13-05`, `xstate` and `x-utils` are closed as boundary contracts.
|
|
288
|
+
- next-wave handoff for long-tail runtime, visual snapshot automation and release-owner acceptance
|
|
289
|
+
|
|
290
|
+
Local gate:
|
|
291
|
+
|
|
292
|
+
```bash
|
|
293
|
+
npm run test:epic11-enterprise-ux-handoff
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
Further reading: [Epic 11 Enterprise UX Handoff](./epic11-enterprise-ux-handoff.md), [Component UX Gates](./component-ux-gates.md).
|
|
297
|
+
|
|
298
|
+
## 11. Epic 12 RC0 Adoption
|
|
299
|
+
|
|
300
|
+
Epic 12 carries the long-tail and release-candidate strand to a locally reviewable `RC0`. The official adoption surface is in the [RC0 Adoption Guide](./rc0-adoption-guide.md) and carries the contract `xtend.epic12.docs-adoption.v1`.
|
|
301
|
+
|
|
302
|
+
The RC0 state includes:
|
|
303
|
+
|
|
304
|
+
- `x-tabs`, `x-theme`, `x-button` and `x-menu` are closed as visible long-tail components
|
|
305
|
+
- `xstate` and `x-utils` remain visible as accepted boundary probes
|
|
306
|
+
- DOM-first visual snapshots and design tokens form the local visual baseline
|
|
307
|
+
- RMT DSL Authoring Polish makes shells, routes, links, slots, commands, hydration and lanes easier to author
|
|
308
|
+
- RC0 Gate Matrix connects PR Fast, Full Release, Snapshot, RMT Authoring, Conditional Network, Package Dry Run and Known Residual Policy
|
|
309
|
+
|
|
310
|
+
Local gates:
|
|
311
|
+
|
|
312
|
+
```bash
|
|
313
|
+
npm run test:epic12-docs-adoption
|
|
314
|
+
npm run test:rc0-gate-matrix
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
RC0 remains blocked by `private-until-release-owner-approval`. `WP-E12-16` built the final owner handoff from it.
|
|
318
|
+
|
|
319
|
+
Further reading: [RC0 Adoption Guide](./rc0-adoption-guide.md), [RC0 Gate Matrix](./rc0-gate-matrix.md).
|
|
320
|
+
|
|
321
|
+
## 12. Epic 12 RC0 Handoff
|
|
322
|
+
|
|
323
|
+
Epic 12 has been complete since `WP-E12-16`. The handoff `xtend.epic12.rc0-handoff.v1` documents:
|
|
324
|
+
|
|
325
|
+
- KPI acceptance and long-tail status
|
|
326
|
+
- DOM-first Visual Snapshot Gate and Design Token Productization
|
|
327
|
+
- RMT DSL Authoring Polish
|
|
328
|
+
- RC0 Gate Matrix and Docs Adoption
|
|
329
|
+
- Known Residual Policy for `xstate`, `x-utils` and `xtend.component.hydrate`
|
|
330
|
+
- Conditional Network Gates as owner-review-required
|
|
331
|
+
- publish boundary `private-until-release-owner-approval`
|
|
332
|
+
|
|
333
|
+
Local gate:
|
|
334
|
+
|
|
335
|
+
```bash
|
|
336
|
+
npm run test:epic12-rc0-handoff
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
The status is `ready-for-release-owner-review-not-publish`. The next decision is `release-owner-acceptance`.
|
|
340
|
+
|
|
341
|
+
Further reading: [Epic 12 RC0 Handoff](./epic12-rc0-handoff.md).
|
|
342
|
+
|
|
343
|
+
## 13. Epic 13 RC1 Readiness
|
|
344
|
+
|
|
345
|
+
Epic 13 has been startable since `WP-E13-01`. The contract `xtend.epic13.rc1-production-readiness.v1` describes the transfer from RC0 to RC1:
|
|
346
|
+
|
|
347
|
+
- existing RC0 gates are carried forward as baseline
|
|
348
|
+
- release-owner acceptance is formalized since `WP-E13-02` through `xtend.epic13.release-owner-acceptance.v1`
|
|
349
|
+
- conditional network gates are prepared as evidence/deferral since `WP-E13-03` through `xtend.epic13.conditional-network-evidence.v1`
|
|
350
|
+
- package dry run and export surface are machine-verifiable since `WP-E13-04` through `xtend.epic13.package-export-lock.v1` and `pack:dry-run:report`
|
|
351
|
+
- known residuals are re-evaluated since `WP-E13-05` through `xtend.epic13.known-residual-triage.v1` and [Known Residual Triage](./known-residual-triage.md): `xstate` and `x-utils` are closed
|
|
352
|
+
- `xtend.component.hydrate` is owner-free closed since `WP-E13-06` through [Hydration Performance Closure](./hydration-performance-closure.md)
|
|
353
|
+
- PROD-near browser/CSP, visual, RMT and Trusted DOM paths are being prepared
|
|
354
|
+
- visual owner artifacts are normalized since `WP-E13-08` through `xtend.epic13.visual-owner-artifact.v1`, [Visual Owner Artifacts](./visual-owner-artifacts.md) and `optional-browser-driver-or-ci-artifact`
|
|
355
|
+
- RMT-first App Readiness is covered since `WP-E13-09` through `xtend.epic13.rmt-production-readiness.v1`, [RMT Production Readiness](./rmt-production-readiness.md) and the static gate bundle of shell-first app shell, routing, components, Fabric/lanes, lifecycle telemetry, diagnostics and artifact parity
|
|
356
|
+
- Docs App RMT Production Hardening is covered since `WP-E13-10` through `xtend.epic13.docs-rmt-production-hardening.v1`, [Docs RMT Production Hardening](./docs-rmt-production-hardening.md), extension slots, Parsedown host boundary, rich HTML/XPlayer schedules and diagnostics
|
|
357
|
+
- `automatic-publish-approval` remains `blocked` until a later owner handoff decides
|
|
358
|
+
|
|
359
|
+
Local gate:
|
|
360
|
+
|
|
361
|
+
```bash
|
|
362
|
+
npm run test:epic13-rc1-readiness
|
|
363
|
+
npm run test:epic13-release-owner-acceptance
|
|
364
|
+
npm run test:epic13-conditional-network-evidence
|
|
365
|
+
npm run test:epic13-hydration-performance-closure
|
|
366
|
+
npm run test:epic13-visual-owner-artifact
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
Local network evidence uses `network-restricted-local-default` by default until `npm audit --audit-level=moderate` and `npm sbom --sbom-format=cyclonedx --json` are run in a network/CI environment or accepted as deferred by the owner.
|
|
370
|
+
|
|
371
|
+
Further reading: [RC1 Readiness](./rc1-readiness.md), [Release Owner Acceptance](./release-owner-acceptance.md), [Conditional Network Evidence](./conditional-network-evidence.md), [Package Export Lock](./package-export-lock.md), [Known Residual Triage](./known-residual-triage.md), [Visual Owner Artifacts](./visual-owner-artifacts.md), [RMT Production Readiness](./rmt-production-readiness.md) and [Docs RMT Production Hardening](./docs-rmt-production-hardening.md).
|
|
372
|
+
|
|
373
|
+
## Enterprise Adoption Checklist
|
|
374
|
+
|
|
375
|
+
| Check | Status |
|
|
376
|
+
|-------|--------|
|
|
377
|
+
| `xtend-loader.js` used instead of `xtend-dev.js` | required |
|
|
378
|
+
| local dev server used for development and tests | required |
|
|
379
|
+
| no CDN defaults in manifest, demos or fixtures | required |
|
|
380
|
+
| prioritized components with types and events used | required |
|
|
381
|
+
| Fabric boundary and reporter strategy decided | required |
|
|
382
|
+
| RMT adapter for XTend/XRouter or custom host documented | required when using RMT |
|
|
383
|
+
| Manifest Import Policy and Trusted DOM Boundary understood | required |
|
|
384
|
+
| Performance, hydration and regression gates run | required for release candidates |
|
|
385
|
+
| A11y, screen-reader and motion/contrast gates run | required for new UI |
|
|
386
|
+
| Supply-chain and release-checklist points decided | required for release candidates |
|
|
387
|
+
| RC0 Adoption Guide and RC0 Gate Matrix reviewed | required for RC0 |
|
|
388
|
+
| Epic 12 RC0 Handoff reviewed | required for release-owner review |
|
|
389
|
+
|
|
390
|
+
## Known Maturity Boundaries
|
|
391
|
+
|
|
392
|
+
After `ER-WP-40`, `WP-E10-16` and `WP-E11-18`, XTend is prepared for enterprise adoption, but it is not yet a final `1.0.0` release:
|
|
393
|
+
|
|
394
|
+
- `private: false` is active for RC1 publish prep.
|
|
395
|
+
- Component Catalog Coverage is at 44/44 source and docs, 44/44 component suites, fixtures and types, 43/44 a11y and 42 explicit runtime/UI performance profiles after `RC1TB-WP-03`. `x-input`, `x-select`, `x-checkbox`, `x-radio`, `x-rmt-lifecycle-demo-build`, `x-textarea`, `x-form`, `x-calendar`, `x-writer`, `x-status`, `x-progress`, `x-tooltip`, `x-popover`, `x-drawer`, `x-surface-manager`, `x-surface-portal`, `x-surface-region`, `x-surface-window`, `x-side-panel`, `x-modal`, `x-dialog`, `x-alert`, `x-toast`, `x-spinner`, `x-router`, `x-link`, `x-tabs`, `x-theme`, `x-button`, `x-icon`, `x-menu`, `x-footer`, `x-lightbox`, `x-masonry`, `x-code`, `x-header`, `x-hero`, `x-type`, `x-summary`, `x-section`, `x-cards` and `x-player` are `enterprise-ready`; `xstate` is closed as runtime boundary since `WP-E13-05`; `x-utils` is closed as utility boundary since `WP-E13-05`. `x-icon` provides the local, CDN-free iconography adapter with internal Core pack, local Lucide superset and RMT-compatible pack interface; `x-surface-manager`, `x-surface-portal`, `x-surface-region`, `x-surface-window` and `x-side-panel` form the native multi-window, portal, region and SidePanel surface layer.
|
|
396
|
+
- Performance profiles are prioritized and present for all visible runtime/UI components; infrastructure/utility paths are evaluated through boundary contracts.
|
|
397
|
+
- Network-based supply-chain gates are conditional gates.
|
|
398
|
+
- `WP-E12-15` updates the public adoption surface: long-tail closure, DOM-first Snapshot Gate, Design Token Productization, RMT DSL Authoring Polish, Known Residual Policy and RC0 Gate Matrix are combined in `docs/rc0-adoption-guide.md`.
|
|
399
|
+
- The Docs App continues to use Parsedown as parser host; `ER-WP-40` describes and uses the RMT shell-first shell `docs.app.shell`, `docs.header.search`, scheduling, routes, templates, rich-content slots and diagnostics in `docs/xtendrmt-parsedown-docs.rmt`.
|
|
400
|
+
|
|
401
|
+
## Handoff
|
|
402
|
+
|
|
403
|
+
`ER-WP-39` is complete: this guide, `docs/menu.json`, `docs/README.md`, `README.md`, `CHANGELOG.md`, `package.json`, the roadmap and the reference gate describe the same enterprise-adoption contract.
|
|
404
|
+
|
|
405
|
+
`ER-WP-40` is also complete: `xtend.docs.parsedown-rmt-pilot.v1`, `docs.app.shell`, `docs.header.search`, `docs.media.lazy`, `xtend.docsRmtPilot` and `npm run test:docs-rmt-pilot` finalize the shell-first Docs App RMT Parsedown Scheduling Pilot. The next sensible step is a product-maturity checkpoint for release, catalog or XTendRMT upstream decisions.
|
|
406
|
+
|
|
407
|
+
`WP-E10-16` is complete: `xtend.epic10.release-handoff.v1`, `docs/epic10-release-handoff.md`, `docs/rmt-first-xtend-apps.md`, `catalog/epic10-release-handoff.js` and `npm run test:epic10-release-handoff` finalize Epic 10 without publish approval.
|
|
408
|
+
|
|
409
|
+
`WP-E11-18` is complete: `xtend.epic11.enterprise-ux-handoff.v1`, `docs/epic11-enterprise-ux-handoff.md`, `catalog/epic11-enterprise-ux-handoff.js` and `npm run test:epic11-enterprise-ux-handoff` finalize Epic 11 with explicit long-tail handoff.
|
|
410
|
+
|
|
411
|
+
`WP-E12-15` is complete: `xtend.epic12.docs-adoption.v1`, `docs/rc0-adoption-guide.md`, `development/XTend-Epic12-Docs-Migration-und-Adoption-Guide.md`, `catalog/epic12-docs-adoption.js` and `npm run test:epic12-docs-adoption` finalize docs, migration notes and enterprise adoption for the RC0 cut.
|
|
412
|
+
|
|
413
|
+
`WP-E12-16` is complete: `xtend.epic12.rc0-handoff.v1`, `docs/epic12-rc0-handoff.md`, `development/XTend-Epic12-Abschluss-und-RC0-Handoff.md`, `catalog/epic12-rc0-handoff.js` and `npm run test:epic12-rc0-handoff` finalize Epic 12 as `ready-for-release-owner-review-not-publish`.
|