@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.
Files changed (566) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +4 -0
  3. package/catalog/component-catalog-coverage.js +2 -0
  4. package/catalog/epic13-package-export-lock.js +11 -1
  5. package/catalog/epic13-rmt-production-readiness.js +0 -1
  6. package/catalog/epic18-rmt-action-effect-runtime.d.ts +36 -0
  7. package/catalog/epic18-rmt-action-effect-runtime.js +249 -0
  8. package/catalog/epic18-rmt-app-platform-authoring.d.ts +39 -0
  9. package/catalog/epic18-rmt-app-platform-authoring.js +319 -0
  10. package/catalog/epic18-rmt-app-platform-fixture.d.ts +33 -0
  11. package/catalog/epic18-rmt-app-platform-fixture.js +221 -0
  12. package/catalog/epic18-rmt-app-platform-release-handoff.d.ts +30 -0
  13. package/catalog/epic18-rmt-app-platform-release-handoff.js +231 -0
  14. package/catalog/epic18-rmt-app-platform-tooling.d.ts +38 -0
  15. package/catalog/epic18-rmt-app-platform-tooling.js +242 -0
  16. package/catalog/epic18-rmt-component-template-primitives.d.ts +33 -0
  17. package/catalog/epic18-rmt-component-template-primitives.js +240 -0
  18. package/catalog/epic18-rmt-dom-descriptor-renderer.d.ts +35 -0
  19. package/catalog/epic18-rmt-dom-descriptor-renderer.js +232 -0
  20. package/catalog/epic18-rmt-event-routing-runtime.d.ts +35 -0
  21. package/catalog/epic18-rmt-event-routing-runtime.js +234 -0
  22. package/catalog/epic18-rmt-state-selector-runtime.d.ts +34 -0
  23. package/catalog/epic18-rmt-state-selector-runtime.js +216 -0
  24. package/catalog/epic18-rmt-surface-resource-graph-runtime.d.ts +36 -0
  25. package/catalog/epic18-rmt-surface-resource-graph-runtime.js +256 -0
  26. package/catalog/surface-manager-controller.js +5 -1
  27. package/catalog/surface-manager-materialization.js +7 -1
  28. package/catalog/surface-manager-overlay-bridge.js +41 -6
  29. package/catalog/surface-manager-workbench-fixture.js +1 -1
  30. package/catalog/surface-type-capability-matrix.d.ts +61 -0
  31. package/catalog/surface-type-capability-matrix.js +183 -0
  32. package/catalog/type-exports-rmt.js +37 -1
  33. package/catalog/type-exports.js +3 -3
  34. package/components/icon-packs/lucide.js +4 -0
  35. package/components/manifest.json +2 -0
  36. package/components/prism-rmt.d.ts +34 -0
  37. package/components/prism-rmt.js +130 -0
  38. package/components/xcards.js +15 -0
  39. package/components/xcode.d.ts +36 -1
  40. package/components/xcode.js +215 -20
  41. package/components/xfooter.js +17 -0
  42. package/components/xheader.js +14 -0
  43. package/components/xhero.js +16 -1
  44. package/components/xlink.js +97 -14
  45. package/components/xmasonry.js +15 -0
  46. package/components/xplayer.d.ts +44 -2
  47. package/components/xplayer.js +242 -15
  48. package/components/xrouter.js +27 -2
  49. package/components/xsection.js +15 -0
  50. package/components/xsidepanel.js +10 -2
  51. package/components/xsurfacemanager-controller.d.ts +2 -1
  52. package/components/xsurfacemanager-controller.js +27 -3
  53. package/components/xsurfacemanager.d.ts +2 -0
  54. package/components/xsurfacemanager.js +20 -8
  55. package/components/xsurfaceoverlay-bridge.d.ts +20 -5
  56. package/components/xsurfaceoverlay-bridge.js +114 -18
  57. package/components/xsurfaceportal.d.ts +29 -0
  58. package/components/xsurfaceportal.js +122 -0
  59. package/components/xsurfaceregion.d.ts +50 -0
  60. package/components/xsurfaceregion.js +285 -0
  61. package/components/xsurfacewindow.js +2 -1
  62. package/components/xtooltip.js +89 -23
  63. package/docs/README.md +222 -298
  64. package/docs/changelog.md +107 -0
  65. package/docs/component-catalog-coverage.md +9 -9
  66. package/docs/component-platform.md +19 -1
  67. package/docs/component-ux-app-authoring.md +56 -63
  68. package/docs/components/xcode.md +83 -53
  69. package/docs/components/xsurfaceportal.md +32 -0
  70. package/docs/components/xsurfaceregion.md +37 -0
  71. package/docs/components.md +105 -69
  72. package/docs/de/README.md +264 -0
  73. package/docs/de/XTend-ADR.md +221 -0
  74. package/docs/de/a11y-keyboard-smokes.md +62 -0
  75. package/docs/de/about.md +18 -0
  76. package/docs/de/api.md +157 -0
  77. package/docs/de/best-practices.md +76 -0
  78. package/docs/de/changelog.md +107 -0
  79. package/docs/de/component-catalog-coverage.md +58 -0
  80. package/docs/de/component-lab.md +103 -0
  81. package/docs/de/component-long-tail-migration.md +41 -0
  82. package/docs/de/component-platform.md +177 -0
  83. package/docs/de/component-ux-app-authoring.md +123 -0
  84. package/docs/de/component-ux-authoring.md +96 -0
  85. package/docs/de/component-ux-gates.md +45 -0
  86. package/docs/de/components/x-rmt-lifecycle-demo-build.md +60 -0
  87. package/docs/de/components/xalert.md +81 -0
  88. package/docs/de/components/xbutton.md +103 -0
  89. package/docs/de/components/xcalendar.md +82 -0
  90. package/docs/de/components/xcards.md +128 -0
  91. package/docs/de/components/xcheckbox.md +102 -0
  92. package/docs/de/components/xcode.md +156 -0
  93. package/docs/de/components/xdialog.md +92 -0
  94. package/docs/de/components/xdrawer.md +84 -0
  95. package/docs/de/components/xfooter.md +126 -0
  96. package/docs/de/components/xform.md +128 -0
  97. package/docs/de/components/xheader.md +308 -0
  98. package/docs/de/components/xhero.md +142 -0
  99. package/docs/de/components/xicon.md +125 -0
  100. package/docs/de/components/xinput.md +129 -0
  101. package/docs/de/components/xlightbox.md +98 -0
  102. package/docs/de/components/xlink.md +109 -0
  103. package/docs/de/components/xmasonry.md +124 -0
  104. package/docs/de/components/xmenu.md +158 -0
  105. package/docs/de/components/xmodal.md +82 -0
  106. package/docs/de/components/xplayer.md +104 -0
  107. package/docs/de/components/xpopover.md +67 -0
  108. package/docs/de/components/xprogress.md +56 -0
  109. package/docs/de/components/xradio.md +103 -0
  110. package/docs/de/components/xrouter.md +260 -0
  111. package/docs/de/components/xsection.md +125 -0
  112. package/docs/de/components/xselect.md +105 -0
  113. package/docs/de/components/xsidepanel.md +30 -0
  114. package/docs/de/components/xspinner.md +102 -0
  115. package/docs/de/components/xstate.md +148 -0
  116. package/docs/de/components/xstatus.md +55 -0
  117. package/docs/de/components/xsummary.md +78 -0
  118. package/docs/de/components/xsurfacemanager.md +27 -0
  119. package/docs/de/components/xsurfacewindow.md +21 -0
  120. package/docs/de/components/xtabs.md +160 -0
  121. package/docs/de/components/xtextarea.md +98 -0
  122. package/docs/de/components/xtheme.md +167 -0
  123. package/docs/de/components/xtoast.md +62 -0
  124. package/docs/de/components/xtooltip.md +66 -0
  125. package/docs/de/components/xtype.md +82 -0
  126. package/docs/de/components/xutils.md +144 -0
  127. package/docs/de/components/xwriter.md +94 -0
  128. package/docs/de/components.md +153 -0
  129. package/docs/de/conditional-network-evidence-ci.md +38 -0
  130. package/docs/de/conditional-network-evidence.md +50 -0
  131. package/docs/de/core-migration-guide.md +110 -0
  132. package/docs/de/design-tokens.md +116 -0
  133. package/docs/de/docs-rmt-production-hardening.md +31 -0
  134. package/docs/de/enterprise-adoption.md +413 -0
  135. package/docs/de/enterprise-component-flex-release-handoff.md +129 -0
  136. package/docs/de/epic10-platform-gates.md +62 -0
  137. package/docs/de/epic10-release-handoff.md +81 -0
  138. package/docs/de/epic11-enterprise-ux-handoff.md +70 -0
  139. package/docs/de/epic12-rc0-handoff.md +61 -0
  140. package/docs/de/epic18-media-manager-vendor-upstream.md +318 -0
  141. package/docs/de/epic18-rmt-app-platform-release-handoff.md +67 -0
  142. package/docs/de/epic18-vendor-bugfixes.md +34 -0
  143. package/docs/de/existing-component-metadata.md +67 -0
  144. package/docs/de/hydration-performance-closure.md +34 -0
  145. package/docs/de/hydration-policies.md +71 -0
  146. package/docs/de/known-residual-triage.md +22 -0
  147. package/docs/de/manifest-import-policy.md +79 -0
  148. package/docs/de/manifest.md +112 -0
  149. package/docs/de/motion-contrast.md +67 -0
  150. package/docs/de/package-export-lock.md +44 -0
  151. package/docs/de/performance-measurements.md +106 -0
  152. package/docs/de/performance-regression.md +89 -0
  153. package/docs/de/performance.md +94 -0
  154. package/docs/de/previews/README.md +17 -0
  155. package/docs/de/prod-browser-csp-smokes.md +40 -0
  156. package/docs/de/public-component-types.md +79 -0
  157. package/docs/de/quick-start-guide.md +220 -0
  158. package/docs/de/rc0-adoption-guide.md +102 -0
  159. package/docs/de/rc0-gate-matrix.md +58 -0
  160. package/docs/de/rc1-gate-matrix-ci-handoff.md +56 -0
  161. package/docs/de/rc1-migration-notes.md +69 -0
  162. package/docs/de/rc1-readiness.md +46 -0
  163. package/docs/de/release-owner-acceptance.md +56 -0
  164. package/docs/de/release-report-pack-dry-run-evidence.md +39 -0
  165. package/docs/de/rmt-action-effect-runtime.md +81 -0
  166. package/docs/de/rmt-app-platform-authoring.md +54 -0
  167. package/docs/de/rmt-app-platform-fixture.md +46 -0
  168. package/docs/de/rmt-app-platform-migration-guide.md +88 -0
  169. package/docs/de/rmt-app-platform-tooling.md +79 -0
  170. package/docs/de/rmt-component-template-primitives.md +57 -0
  171. package/docs/de/rmt-dom-descriptor-renderer.md +64 -0
  172. package/docs/de/rmt-dsl-authoring-polish.md +145 -0
  173. package/docs/de/rmt-event-routing-runtime.md +81 -0
  174. package/docs/de/rmt-first-demo-app.md +77 -0
  175. package/docs/de/rmt-first-xtend-apps.md +129 -0
  176. package/docs/de/rmt-kernel-panic-recovery-incident-handoff.md +61 -0
  177. package/docs/de/rmt-kernel-security-hardening-migration.md +50 -0
  178. package/docs/de/rmt-kernel-trusted-output-authoring.md +69 -0
  179. package/docs/de/rmt-language-server.md +234 -0
  180. package/docs/de/rmt-lifecycle-demo.md +24 -0
  181. package/docs/de/rmt-linter.md +140 -0
  182. package/docs/de/rmt-node-ssr-adapter.md +100 -0
  183. package/docs/de/rmt-php-ssr-adapter.md +120 -0
  184. package/docs/de/rmt-production-readiness.md +63 -0
  185. package/docs/de/rmt-state-selector-runtime.md +47 -0
  186. package/docs/de/rmt-surface-resource-graph-runtime.md +92 -0
  187. package/docs/de/rmt-tooling-release-gates.md +77 -0
  188. package/docs/de/rmt-vnext-authoring.md +170 -0
  189. package/docs/de/rmt-vnext-component-primitives.md +188 -0
  190. package/docs/de/rmt-vnext-cross-surface-events.md +68 -0
  191. package/docs/de/rmt-vnext-enterprise-mfe-handoff.md +70 -0
  192. package/docs/de/rmt-vnext-fabric-bridge-evidence.md +81 -0
  193. package/docs/de/rmt-vnext-migration-notes.md +62 -0
  194. package/docs/de/rmt-vnext-primitive-authoring-tooling.md +247 -0
  195. package/docs/de/rmt-vnext-primitive-grammar-design.md +289 -0
  196. package/docs/de/rmt-vnext-primitive-lowering.md +108 -0
  197. package/docs/de/rmt-vnext-primitive-migration.md +119 -0
  198. package/docs/de/rmt-vnext-primitive-parser-ast.md +76 -0
  199. package/docs/de/rmt-vnext-primitive-semantic-graph.md +118 -0
  200. package/docs/de/rmt-vnext-primitives-compiler-backlog.md +739 -0
  201. package/docs/de/rmt-vnext-release-handoff.md +83 -0
  202. package/docs/de/rmt-vnext-remote-surfaces.md +90 -0
  203. package/docs/de/rmt-vnext-source-to-sea-gate.md +612 -0
  204. package/docs/de/rmt-vnext-surface-registry-enterprise.md +76 -0
  205. package/docs/de/screenreader-signals.md +56 -0
  206. package/docs/de/supply-chain-gates.md +100 -0
  207. package/docs/de/surface-manager-authoring-guide.md +94 -0
  208. package/docs/de/surface-manager-browser-lab.md +45 -0
  209. package/docs/de/surface-manager-component-lab.md +43 -0
  210. package/docs/de/surface-manager-controller.md +66 -0
  211. package/docs/de/surface-manager-layout-engines.md +32 -0
  212. package/docs/de/surface-manager-lazy-hydration.md +63 -0
  213. package/docs/de/surface-manager-migration-guide.md +122 -0
  214. package/docs/de/surface-manager-native-rmt-surfaces.md +38 -0
  215. package/docs/de/surface-manager-overlay-bridge.md +53 -0
  216. package/docs/de/surface-manager-persistence.md +30 -0
  217. package/docs/de/surface-manager-quality-gates.md +51 -0
  218. package/docs/de/surface-manager-release-handoff.md +68 -0
  219. package/docs/de/surface-manager-remote-policy.md +54 -0
  220. package/docs/de/surface-manager-rmt-authoring.md +102 -0
  221. package/docs/de/surface-manager-route-lifecycle.md +59 -0
  222. package/docs/de/surface-manager-runtime-release-handoff.md +69 -0
  223. package/docs/de/surface-manager-side-panel-runtime.md +36 -0
  224. package/docs/de/surface-manager-stack-policy.md +39 -0
  225. package/docs/de/surface-manager-window-runtime.md +47 -0
  226. package/docs/de/surface-manager-workbench-fixture.md +43 -0
  227. package/docs/de/third-party-design-authoring.md +406 -0
  228. package/docs/de/trusted-dom-boundary-browser-proof.md +32 -0
  229. package/docs/de/trusted-dom-sanitizing.md +110 -0
  230. package/docs/de/type-exports.md +61 -0
  231. package/docs/de/typescript-components.md +63 -0
  232. package/docs/de/visual-browser-regression.md +83 -0
  233. package/docs/de/visual-owner-artifacts.md +46 -0
  234. package/docs/de/visual-snapshot-automation.md +87 -0
  235. package/docs/de/xtend-api-types.md +55 -0
  236. package/docs/de/xtend-builder-types.md +55 -0
  237. package/docs/de/xtend-catalog-types.md +44 -0
  238. package/docs/de/xtend-fabric-rmt-lane-mapping.md +143 -0
  239. package/docs/de/xtend-fabric.md +474 -0
  240. package/docs/de/xtend-loader-types.md +58 -0
  241. package/docs/de/xtend-loader.md +265 -0
  242. package/docs/de/xtend-policy-types.md +38 -0
  243. package/docs/de/xtend-rmt-types.md +40 -0
  244. package/docs/de/xtend-vendor-types.md +36 -0
  245. package/docs/de/xtendrmt-app-dsl.md +334 -0
  246. package/docs/de/xtendrmt-migration-guide.md +266 -0
  247. package/docs/de/xtendrmt-native-authoring.md +333 -0
  248. package/docs/de/xtendrmt-overview.md +109 -0
  249. package/docs/de/xtendrmt-parsedown-scheduling.md +301 -0
  250. package/docs/de/xtendrmt-runtime-bridge.md +155 -0
  251. package/docs/en/README.md +163 -0
  252. package/docs/en/XTend-ADR.md +221 -0
  253. package/docs/en/a11y-keyboard-smokes.md +68 -0
  254. package/docs/en/about.md +25 -0
  255. package/docs/en/api.md +171 -0
  256. package/docs/en/best-practices.md +125 -0
  257. package/docs/en/changelog.md +104 -0
  258. package/docs/en/component-catalog-coverage.md +104 -0
  259. package/docs/en/component-lab.md +103 -0
  260. package/docs/en/component-long-tail-migration.md +41 -0
  261. package/docs/en/component-platform.md +243 -0
  262. package/docs/en/component-ux-app-authoring.md +118 -0
  263. package/docs/en/component-ux-authoring.md +96 -0
  264. package/docs/en/component-ux-gates.md +45 -0
  265. package/docs/en/components/x-rmt-lifecycle-demo-build.md +75 -0
  266. package/docs/en/components/xalert.md +94 -0
  267. package/docs/en/components/xbutton.md +118 -0
  268. package/docs/en/components/xcalendar.md +95 -0
  269. package/docs/en/components/xcards.md +139 -0
  270. package/docs/en/components/xcheckbox.md +118 -0
  271. package/docs/en/components/xcode.md +153 -0
  272. package/docs/en/components/xdialog.md +108 -0
  273. package/docs/en/components/xdrawer.md +110 -0
  274. package/docs/en/components/xfooter.md +138 -0
  275. package/docs/en/components/xform.md +147 -0
  276. package/docs/en/components/xheader.md +308 -0
  277. package/docs/en/components/xhero.md +157 -0
  278. package/docs/en/components/xicon.md +149 -0
  279. package/docs/en/components/xinput.md +147 -0
  280. package/docs/en/components/xlightbox.md +113 -0
  281. package/docs/en/components/xlink.md +130 -0
  282. package/docs/en/components/xmasonry.md +136 -0
  283. package/docs/en/components/xmenu.md +185 -0
  284. package/docs/en/components/xmodal.md +102 -0
  285. package/docs/en/components/xplayer.md +114 -0
  286. package/docs/en/components/xpopover.md +87 -0
  287. package/docs/en/components/xprogress.md +73 -0
  288. package/docs/en/components/xradio.md +119 -0
  289. package/docs/en/components/xrouter.md +260 -0
  290. package/docs/en/components/xsection.md +136 -0
  291. package/docs/en/components/xselect.md +122 -0
  292. package/docs/en/components/xsidepanel.md +48 -0
  293. package/docs/en/components/xspinner.md +118 -0
  294. package/docs/en/components/xstate.md +163 -0
  295. package/docs/en/components/xstatus.md +71 -0
  296. package/docs/en/components/xsummary.md +90 -0
  297. package/docs/en/components/xsurfacemanager.md +42 -0
  298. package/docs/en/components/xsurfacewindow.md +31 -0
  299. package/docs/en/components/xtabs.md +187 -0
  300. package/docs/en/components/xtextarea.md +115 -0
  301. package/docs/en/components/xtheme.md +203 -0
  302. package/docs/en/components/xtoast.md +78 -0
  303. package/docs/en/components/xtooltip.md +85 -0
  304. package/docs/en/components/xtype.md +91 -0
  305. package/docs/en/components/xutils.md +161 -0
  306. package/docs/en/components/xwriter.md +106 -0
  307. package/docs/en/components.md +151 -0
  308. package/docs/en/conditional-network-evidence-ci.md +38 -0
  309. package/docs/en/conditional-network-evidence.md +50 -0
  310. package/docs/en/core-migration-guide.md +110 -0
  311. package/docs/en/design-tokens.md +137 -0
  312. package/docs/en/docs-rmt-production-hardening.md +31 -0
  313. package/docs/en/enterprise-adoption.md +413 -0
  314. package/docs/en/enterprise-component-flex-release-handoff.md +129 -0
  315. package/docs/en/epic10-platform-gates.md +62 -0
  316. package/docs/en/epic10-release-handoff.md +81 -0
  317. package/docs/en/epic11-enterprise-ux-handoff.md +70 -0
  318. package/docs/en/epic12-rc0-handoff.md +61 -0
  319. package/docs/en/epic18-media-manager-vendor-upstream.md +232 -0
  320. package/docs/en/epic18-rmt-app-platform-release-handoff.md +60 -0
  321. package/docs/en/epic18-vendor-bugfixes.md +29 -0
  322. package/docs/en/existing-component-metadata.md +67 -0
  323. package/docs/en/hydration-performance-closure.md +34 -0
  324. package/docs/en/hydration-policies.md +75 -0
  325. package/docs/en/known-residual-triage.md +22 -0
  326. package/docs/en/manifest-import-policy.md +81 -0
  327. package/docs/en/manifest.md +135 -0
  328. package/docs/en/motion-contrast.md +67 -0
  329. package/docs/en/package-export-lock.md +44 -0
  330. package/docs/en/performance-measurements.md +106 -0
  331. package/docs/en/performance-regression.md +89 -0
  332. package/docs/en/performance.md +132 -0
  333. package/docs/en/previews/README.md +17 -0
  334. package/docs/en/prod-browser-csp-smokes.md +40 -0
  335. package/docs/en/public-component-types.md +79 -0
  336. package/docs/en/quick-start-guide.md +189 -0
  337. package/docs/en/rc0-adoption-guide.md +102 -0
  338. package/docs/en/rc0-gate-matrix.md +58 -0
  339. package/docs/en/rc1-gate-matrix-ci-handoff.md +56 -0
  340. package/docs/en/rc1-migration-notes.md +69 -0
  341. package/docs/en/rc1-readiness.md +46 -0
  342. package/docs/en/release-owner-acceptance.md +56 -0
  343. package/docs/en/release-report-pack-dry-run-evidence.md +39 -0
  344. package/docs/en/rmt-action-effect-runtime.md +101 -0
  345. package/docs/en/rmt-app-platform-authoring.md +47 -0
  346. package/docs/en/rmt-app-platform-fixture.md +35 -0
  347. package/docs/en/rmt-app-platform-migration-guide.md +75 -0
  348. package/docs/en/rmt-app-platform-tooling.md +58 -0
  349. package/docs/en/rmt-component-template-primitives.md +49 -0
  350. package/docs/en/rmt-dom-descriptor-renderer.md +54 -0
  351. package/docs/en/rmt-dsl-authoring-polish.md +143 -0
  352. package/docs/en/rmt-event-routing-runtime.md +98 -0
  353. package/docs/en/rmt-first-demo-app.md +87 -0
  354. package/docs/en/rmt-first-xtend-apps.md +127 -0
  355. package/docs/en/rmt-kernel-panic-recovery-incident-handoff.md +60 -0
  356. package/docs/en/rmt-kernel-security-hardening-migration.md +49 -0
  357. package/docs/en/rmt-kernel-trusted-output-authoring.md +68 -0
  358. package/docs/en/rmt-language-server.md +243 -0
  359. package/docs/en/rmt-lifecycle-demo.md +23 -0
  360. package/docs/en/rmt-linter.md +146 -0
  361. package/docs/en/rmt-node-ssr-adapter.md +99 -0
  362. package/docs/en/rmt-php-ssr-adapter.md +118 -0
  363. package/docs/en/rmt-production-readiness.md +63 -0
  364. package/docs/en/rmt-state-selector-runtime.md +34 -0
  365. package/docs/en/rmt-surface-resource-graph-runtime.md +68 -0
  366. package/docs/en/rmt-tooling-release-gates.md +77 -0
  367. package/docs/en/rmt-vnext-authoring.md +102 -0
  368. package/docs/en/rmt-vnext-component-primitives.md +185 -0
  369. package/docs/en/rmt-vnext-cross-surface-events.md +59 -0
  370. package/docs/en/rmt-vnext-enterprise-mfe-handoff.md +62 -0
  371. package/docs/en/rmt-vnext-fabric-bridge-evidence.md +64 -0
  372. package/docs/en/rmt-vnext-migration-notes.md +62 -0
  373. package/docs/en/rmt-vnext-primitive-authoring-tooling.md +174 -0
  374. package/docs/en/rmt-vnext-primitive-grammar-design.md +268 -0
  375. package/docs/en/rmt-vnext-primitive-lowering.md +91 -0
  376. package/docs/en/rmt-vnext-primitive-migration.md +93 -0
  377. package/docs/en/rmt-vnext-primitive-parser-ast.md +59 -0
  378. package/docs/en/rmt-vnext-primitive-semantic-graph.md +103 -0
  379. package/docs/en/rmt-vnext-primitives-compiler-backlog.md +327 -0
  380. package/docs/en/rmt-vnext-release-handoff.md +83 -0
  381. package/docs/en/rmt-vnext-remote-surfaces.md +81 -0
  382. package/docs/en/rmt-vnext-source-to-sea-gate.md +482 -0
  383. package/docs/en/rmt-vnext-surface-registry-enterprise.md +68 -0
  384. package/docs/en/screenreader-signals.md +56 -0
  385. package/docs/en/supply-chain-gates.md +106 -0
  386. package/docs/en/surface-manager-authoring-guide.md +94 -0
  387. package/docs/en/surface-manager-browser-lab.md +45 -0
  388. package/docs/en/surface-manager-component-lab.md +43 -0
  389. package/docs/en/surface-manager-controller.md +66 -0
  390. package/docs/en/surface-manager-layout-engines.md +32 -0
  391. package/docs/en/surface-manager-lazy-hydration.md +63 -0
  392. package/docs/en/surface-manager-migration-guide.md +113 -0
  393. package/docs/en/surface-manager-native-rmt-surfaces.md +38 -0
  394. package/docs/en/surface-manager-overlay-bridge.md +53 -0
  395. package/docs/en/surface-manager-persistence.md +30 -0
  396. package/docs/en/surface-manager-quality-gates.md +51 -0
  397. package/docs/en/surface-manager-release-handoff.md +68 -0
  398. package/docs/en/surface-manager-remote-policy.md +54 -0
  399. package/docs/en/surface-manager-rmt-authoring.md +89 -0
  400. package/docs/en/surface-manager-route-lifecycle.md +59 -0
  401. package/docs/en/surface-manager-runtime-release-handoff.md +69 -0
  402. package/docs/en/surface-manager-side-panel-runtime.md +36 -0
  403. package/docs/en/surface-manager-stack-policy.md +39 -0
  404. package/docs/en/surface-manager-window-runtime.md +47 -0
  405. package/docs/en/surface-manager-workbench-fixture.md +43 -0
  406. package/docs/en/third-party-design-authoring.md +406 -0
  407. package/docs/en/trusted-dom-boundary-browser-proof.md +32 -0
  408. package/docs/en/trusted-dom-sanitizing.md +124 -0
  409. package/docs/en/type-exports.md +61 -0
  410. package/docs/en/typescript-components.md +63 -0
  411. package/docs/en/visual-browser-regression.md +83 -0
  412. package/docs/en/visual-owner-artifacts.md +46 -0
  413. package/docs/en/visual-snapshot-automation.md +87 -0
  414. package/docs/en/xtend-api-types.md +55 -0
  415. package/docs/en/xtend-builder-types.md +55 -0
  416. package/docs/en/xtend-catalog-types.md +44 -0
  417. package/docs/en/xtend-fabric-rmt-lane-mapping.md +143 -0
  418. package/docs/en/xtend-fabric.md +474 -0
  419. package/docs/en/xtend-loader-types.md +58 -0
  420. package/docs/en/xtend-loader.md +265 -0
  421. package/docs/en/xtend-policy-types.md +38 -0
  422. package/docs/en/xtend-rmt-types.md +40 -0
  423. package/docs/en/xtend-vendor-types.md +36 -0
  424. package/docs/en/xtendrmt-app-dsl.md +331 -0
  425. package/docs/en/xtendrmt-migration-guide.md +256 -0
  426. package/docs/en/xtendrmt-native-authoring.md +336 -0
  427. package/docs/en/xtendrmt-overview.md +63 -0
  428. package/docs/en/xtendrmt-parsedown-scheduling.md +301 -0
  429. package/docs/en/xtendrmt-runtime-bridge.md +155 -0
  430. package/docs/enterprise-adoption.md +4 -2
  431. package/docs/epic18-media-manager-vendor-upstream.md +318 -0
  432. package/docs/epic18-rmt-app-platform-release-handoff.md +67 -0
  433. package/docs/epic18-vendor-bugfixes.md +34 -0
  434. package/docs/index.php +1056 -109
  435. package/docs/manifest.md +8 -2
  436. package/docs/menu.json +986 -133
  437. package/docs/package-export-lock.md +2 -2
  438. package/docs/public-component-types.md +2 -2
  439. package/docs/quick-start-guide.md +126 -58
  440. package/docs/rmt-action-effect-runtime.md +101 -0
  441. package/docs/rmt-app-platform-authoring.md +54 -0
  442. package/docs/rmt-app-platform-fixture.md +46 -0
  443. package/docs/rmt-app-platform-migration-guide.md +88 -0
  444. package/docs/rmt-app-platform-tooling.md +79 -0
  445. package/docs/rmt-component-template-primitives.md +57 -0
  446. package/docs/rmt-dom-descriptor-renderer.md +64 -0
  447. package/docs/rmt-dsl-authoring-polish.md +67 -44
  448. package/docs/rmt-event-routing-runtime.md +98 -0
  449. package/docs/rmt-first-demo-app.md +2 -2
  450. package/docs/rmt-first-xtend-apps.md +70 -46
  451. package/docs/rmt-language-server.md +61 -4
  452. package/docs/rmt-lifecycle-demo.md +1 -2
  453. package/docs/rmt-node-ssr-adapter.md +144 -0
  454. package/docs/rmt-php-ssr-adapter.md +158 -0
  455. package/docs/rmt-state-selector-runtime.md +47 -0
  456. package/docs/rmt-surface-resource-graph-runtime.md +92 -0
  457. package/docs/rmt-vnext-authoring.md +128 -18
  458. package/docs/rmt-vnext-component-primitives.md +188 -0
  459. package/docs/rmt-vnext-fabric-bridge-evidence.md +81 -0
  460. package/docs/rmt-vnext-primitive-authoring-tooling.md +247 -0
  461. package/docs/rmt-vnext-primitive-grammar-design.md +289 -0
  462. package/docs/rmt-vnext-primitive-lowering.md +108 -0
  463. package/docs/rmt-vnext-primitive-migration.md +119 -0
  464. package/docs/rmt-vnext-primitive-parser-ast.md +76 -0
  465. package/docs/rmt-vnext-primitive-semantic-graph.md +118 -0
  466. package/docs/rmt-vnext-primitives-compiler-backlog.md +742 -0
  467. package/docs/rmt-vnext-release-handoff.md +14 -0
  468. package/docs/rmt-vnext-source-to-sea-gate.md +629 -0
  469. package/docs/surface-manager-migration-guide.md +34 -6
  470. package/docs/surface-manager-overlay-bridge.md +9 -4
  471. package/docs/surface-manager-rmt-authoring.md +50 -34
  472. package/docs/surface-manager-workbench-fixture.md +1 -2
  473. package/docs/third-party-design-authoring.md +1 -1
  474. package/docs/type-exports.md +3 -3
  475. package/docs/utils/pageloader.js +811 -62
  476. package/docs/visual-browser-regression.md +1 -1
  477. package/docs/xtend-rmt-types.md +3 -2
  478. package/docs/xtendrmt-app-dsl.md +187 -122
  479. package/docs/xtendrmt-docs-shell-vnext.rmt +165 -0
  480. package/docs/xtendrmt-migration-guide.md +48 -17
  481. package/docs/xtendrmt-native-authoring.md +213 -217
  482. package/docs/xtendrmt-overview.md +81 -61
  483. package/docs/xtendrmt-parsedown-scheduling.md +23 -8
  484. package/fabric/package.json +1 -1
  485. package/package.json +684 -21
  486. package/tools/package.json +5 -1
  487. package/tools/rmt-editor/vscode/README.md +72 -5
  488. package/tools/rmt-editor/vscode/XTend-Logo.png +0 -0
  489. package/tools/rmt-editor/vscode/extension.d.ts +33 -0
  490. package/tools/rmt-editor/vscode/extension.js +1816 -7
  491. package/tools/rmt-editor/vscode/language-configuration.json +2 -1
  492. package/tools/rmt-editor/vscode/package.json +193 -2
  493. package/tools/rmt-editor/vscode/snippets/rmt.code-snippets +41 -0
  494. package/tools/rmt-editor/vscode/syntaxes/rmt.tmLanguage.json +103 -1
  495. package/tools/rmt-editor/vscode/templates/launch.json +70 -0
  496. package/tools/rmt-editor/vscode/templates/tasks.json +172 -0
  497. package/tools/rmt-editor/vscode/xtend-rmt-language-0.0.0-enterprise-readiness.vsix +0 -0
  498. package/tools/rmt-language/app-platform-tooling.d.ts +128 -0
  499. package/tools/rmt-language/app-platform-tooling.js +677 -0
  500. package/tools/rmt-language/completions.d.ts +5 -0
  501. package/tools/rmt-language/completions.js +185 -3
  502. package/tools/rmt-language/diagnostics.js +54 -0
  503. package/tools/rmt-language/hover.js +36 -0
  504. package/tools/rmt-language/rmt-tooling-public-types.d.ts +7 -0
  505. package/tools/rmt-language/rules/app-platform-policy.js +39 -0
  506. package/tools/rmt-language/rules/index.js +5 -1
  507. package/tools/rmt-language/semantic-graph.d.ts +6 -0
  508. package/tools/rmt-language/semantic-graph.js +928 -0
  509. package/tools/rmt-language/snippets/index.js +44 -0
  510. package/tools/rmt-language/snippets/rmt.code-snippets +41 -0
  511. package/tools/rmt-language/vnext-compatibility.d.ts +10 -0
  512. package/tools/rmt-language/vnext-compatibility.js +642 -0
  513. package/tools/rmt-language/vnext-compiler.d.ts +5 -0
  514. package/tools/rmt-language/vnext-compiler.js +863 -17
  515. package/tools/rmt-language/vnext-parser.js +725 -9
  516. package/tools/rmt-language/vnext-release.d.ts +1 -0
  517. package/tools/rmt-language/vnext-release.js +20 -0
  518. package/tools/rmt-language/vnext-source-to-sea.d.ts +33 -0
  519. package/tools/rmt-language/vnext-source-to-sea.js +2227 -0
  520. package/tools/rmt-language/vnext-surfaces.js +111 -52
  521. package/tools/rmt-language/vnext-tooling.d.ts +19 -1
  522. package/tools/rmt-language/vnext-tooling.js +1247 -5
  523. package/tools/rmt-language-server/protocol.js +3 -0
  524. package/tools/rmt-language-server/server.d.ts +2 -0
  525. package/tools/rmt-language-server/server.js +176 -22
  526. package/tools/rmt-linter/cli.d.ts +2 -0
  527. package/tools/rmt-linter/cli.js +62 -0
  528. package/xtend-builder/generators/registry.js +11 -0
  529. package/xtend-builder/generators/rmt-app-platform.js +239 -0
  530. package/xtend-builder/generators/rmt-lifecycle-demo.js +3 -11
  531. package/xtend-builder/lib/cli.js +38 -0
  532. package/xtend-builder/package.json +3 -3
  533. package/xtend-builder/scaffold.config.js +29 -2
  534. package/xtend.css +49 -2
  535. package/xtendrmt/package.json +49 -1
  536. package/xtendrmt/rmt-action-effect-runtime.d.ts +126 -0
  537. package/xtendrmt/rmt-action-effect-runtime.js +494 -0
  538. package/xtendrmt/rmt-component-capability-registry.d.ts +180 -0
  539. package/xtendrmt/rmt-component-capability-registry.js +636 -0
  540. package/xtendrmt/rmt-core.d.ts +6 -0
  541. package/xtendrmt/rmt-core.esm.js +32 -6
  542. package/xtendrmt/rmt-dom-descriptor-renderer.d.ts +107 -0
  543. package/xtendrmt/rmt-dom-descriptor-renderer.js +1066 -0
  544. package/xtendrmt/rmt-event-routing-runtime.d.ts +144 -0
  545. package/xtendrmt/rmt-event-routing-runtime.js +666 -0
  546. package/xtendrmt/rmt-lifecycle-demo.app.js +2 -2
  547. package/xtendrmt/rmt-lifecycle-demo.core.json +4 -0
  548. package/xtendrmt/rmt-lifecycle-demo.rmt-build.app.js +1 -1
  549. package/xtendrmt/rmt-lifecycle-demo.rmt-build.scaffold.json +2 -2
  550. package/xtendrmt/rmt-lifecycle-demo.scaffold.json +4 -4
  551. package/xtendrmt/rmt-native-shell-runtime.d.ts +77 -0
  552. package/xtendrmt/rmt-native-shell-runtime.js +309 -0
  553. package/xtendrmt/rmt-node-ssr-adapter.d.ts +197 -0
  554. package/xtendrmt/rmt-node-ssr-adapter.js +1006 -0
  555. package/xtendrmt/rmt-php-ssr-adapter.php +976 -0
  556. package/xtendrmt/rmt-runtime.browser.js +32 -6
  557. package/xtendrmt/rmt-runtime.esm.js +32 -6
  558. package/xtendrmt/rmt-state-selector-runtime.d.ts +166 -0
  559. package/xtendrmt/rmt-state-selector-runtime.js +866 -0
  560. package/xtendrmt/rmt-surface-resource-graph-runtime.d.ts +224 -0
  561. package/xtendrmt/rmt-surface-resource-graph-runtime.js +932 -0
  562. package/xtendrmt/rmt-vnext-enterprise-mfe-demo.core.json +3 -0
  563. package/xtendrmt/rmt-vnext-reference-demo.core.json +3 -0
  564. package/xtendrmt/xtendrmt-bestcase-demo.core.json +3420 -372
  565. package/xtendrmt/xtendrmt-bestcase-demo.js +424 -8
  566. package/xtendrmt/xtendrmt-bestcase-demo.rmt +214 -6
@@ -0,0 +1,83 @@
1
+ # Visual Browser Regression
2
+
3
+ - Contract: `xtend.docs.visual-browser-regression.v1`
4
+ - Plan Contract: `xtend.catalog.component-regression-priority-plan.v1`
5
+ - Gate Contract: `xtend.catalog.component-regression-priority-gate.v1`
6
+ - Snapshot Contract: `xtend.epic12.visual-snapshot-automation-contract.v1`
7
+ - Workpackage: `ER-WP-35`
8
+
9
+ Diese Seite beschreibt den aktuellen XTend-Plan fuer visuelle und browsernahe Regression. ER-WP-35 fuehrt noch keinen Screenshot-Runner ein. Stattdessen erzeugt XTend einen stabilen Prioritaetsplan, der pro Manifest-Komponente festlegt, welche Browser-Smokes, Viewports, Theme-Varianten, visuellen Zustaende und Performance-Profile zuerst automatisiert werden muessen.
10
+
11
+ ## Lokal pruefen
12
+
13
+ ```bash
14
+ node scripts/run_xtend_tests.js regression-priority
15
+ node scripts/run_xtend_tests.js regression-priority --json
16
+ npm run test:regression-priority
17
+ ```
18
+
19
+ Der Gate ist Teil des lokalen Test-Runners und nutzt die Component Catalog Coverage Matrix als Quelle. Er bleibt CDN-frei und braucht keine externe Browser-Automation.
20
+
21
+ ## Mindestabdeckung
22
+
23
+ Jede Komponente im Plan erhaelt:
24
+
25
+ - Viewports: `desktop-1280`, `mobile-390`
26
+ - Theme-/Preference-Varianten: `light`, `dark`, `forced-colors`, `reduced-motion`
27
+ - Performance-Profil: `xtend.performance.component-profile.v1`
28
+ - Handoff-Gates: `browser`, `performance-regression`, `catalog-coverage`, `references`
29
+
30
+ P0-Komponenten wie `x-router`, `x-link`, `x-modal`, `x-input`, `x-select`, `x-checkbox`, `x-radio`, `x-textarea`, `x-tooltip`, `x-popover`, `x-drawer`, `x-form`, `x-calendar`, `x-writer`, `x-dialog` und `x-lightbox` werden als `p0-browser-critical` eingeordnet. P1-Komponenten wie `x-status` und `x-progress` bilden die visuelle und Performance-Baseline. P2-Komponenten bleiben als Long-Tail sichtbar.
31
+
32
+ ## Profil-Regeln
33
+
34
+ | Profil | Browser-Smokes | Visuelle Zustaende |
35
+ |--------|----------------|--------------------|
36
+ | `routing` | Route-Wechsel, Keyboard Navigation, History State, RMT Route Adapter | Initial Route, Active Route, RMT Scheduled Route |
37
+ | `form` | Input Sync, Validation Feedback, Keyboard Entry, Form Submit | Default, Focus, Invalid, Disabled |
38
+ | `overlay` | Focus Trap, Escape Close, Scroll Lock, Focus Restore | Closed, Open, Focus Trapped, Reduced Motion Open |
39
+ | `feedback` | Live Region, Dismiss Timer, Reduced Motion | Info, Warning, Error, Dismissed |
40
+ | `interactive` | Keyboard Activation, Focus Visible, Mobile Tap | Default, Hover, Focus Visible, Active, Disabled |
41
+ | `media` | Media Controls, Poster Load, Fullscreen Toggle | Poster, Playing, Controls Focus |
42
+ | `theme` | Theme Switch, Token Contrast, Forced Colors | Light Theme, Dark Theme, Forced Colors |
43
+ | `display` | Layout Stability, Responsive Overflow | Default Layout, Narrow Layout |
44
+ | `iconography` | Layout Stability, Theme Token Color | Default Layout, High Contrast CurrentColor |
45
+ | `utility` | Utility Integration Probe | Helper Ready |
46
+
47
+ ## Boundary-Abschluss
48
+
49
+ Der Plan haelt die frueheren Boundary-Luecken nachvollziehbar, aber nicht mehr als offene RC1-Restpunkte:
50
+
51
+ - 0 Manifest-Eintraege brauchen noch Suite-, Fixture- oder Type-Nacharbeit.
52
+ - `xstate` ist seit `WP-E13-05` als Runtime-Boundary geschlossen.
53
+ - `x-utils` ist seit `WP-E13-05` als Utility-Boundary geschlossen.
54
+ - Die 42 sichtbaren Runtime-/UI-Komponenten behalten explizite Performance-Profile; `xstate` und `x-utils` werden nicht kuenstlich zu visuellen Profiltraegern umgedeutet.
55
+
56
+ Damit ist klar, dass `ER-WP-35` priorisiert, aber die eigentliche Screenshot-/Pixel-Regression an CI und Release Readiness uebergibt.
57
+
58
+ ## Snapshot Automation Contract
59
+
60
+ Seit `WP-E12-10` ist der naechste Schritt ueber `xtend.epic12.visual-snapshot-automation-contract.v1` festgelegt:
61
+
62
+ ```bash
63
+ node scripts/run_xtend_tests.js visual-snapshot-automation --json
64
+ npm run test:visual-snapshot-automation
65
+ node scripts/run_xtend_tests.js visual-snapshots --json
66
+ npm run test:visual-snapshots
67
+ node scripts/run_xtend_tests.js design-tokens --json
68
+ npm run test:design-tokens
69
+ ```
70
+
71
+ Der Snapshot-Contract uebernimmt die 360 Kombinationen aus der Component Shell Theme Matrix und beschreibt `shell-structure`, `visual-state`, `theme-token-state`, `motion-density-state`, `viewport-layout`, `focus-a11y-state` und `rmt-shell-descriptor` als Snapshot Scopes. Die Diff-Strategie ist `dom-first-pixel-ready`: DOM-Struktur und CSS Token werden mit Toleranz `0` behandelt. Seit `WP-E12-11` vergleicht `xtend.epic12.visual-snapshot-runner.v1` die lokale Fixture gegen eine textuelle JSON DOM-Baseline. Pixel-Diff ist als `optional-local-pixel-diff` vorbereitet und bleibt ausserhalb des Node-Contract-Gates. Seit `WP-E12-12` werden diese CSS Token als `xtend.design-tokens.product-contract.v1` produktisiert und ueber dieselben `--xtend-*` Namen in `x-theme`, Theme Matrix und Snapshot Baseline geprueft.
72
+
73
+ ## Handoff
74
+
75
+ - `WP-E12-10`: Visual Snapshot Automation Contract ist abgeschlossen.
76
+ - `WP-E12-11`: lokales Snapshot Fixture und DOM-first Runner ist abgeschlossen.
77
+ - `WP-E12-12`: Enterprise Design System Token Productization ist abgeschlossen.
78
+ - `ER-WP-36`: CI Workflow fuer Default Gates und Regression Priority Gate produktisieren.
79
+ - `ER-WP-38`: Release Checklist um Browser-/Visual-Regression, Artefakte und SemVer-Risiken erweitern.
80
+ - `ER-WP-39`: Enterprise Adoption Guide mit QS-Empfehlungen und Baseline-Strategie ist abgeschlossen.
81
+ - `ER-WP-40`: Docs-App mit RMT Parsedown Scheduling Pilot ist abgeschlossen.
82
+
83
+ Die maschinenlesbare Umsetzung liegt in `catalog/component-regression-priority.js`. Die Architekturentscheidung liegt in `development/XTend-Visuelle-und-Browsernahe-Regression-Prioritaetsplan.md`.
@@ -0,0 +1,46 @@
1
+ # Visual Owner Artifacts
2
+
3
+ - Contract: `xtend.epic13.visual-owner-artifact.v1`
4
+ - Manifest Contract: `xtend.epic13.visual-owner-artifact-manifest.v1`
5
+ - Report: `xtend.epic13.visual-owner-artifact-report.v1`
6
+ - Workpackage: `WP-E13-08`
7
+ - Lokaler Gate: `node scripts/run_xtend_tests.js epic13-visual-owner-artifact --json`
8
+ - Package Script: `npm run test:epic13-visual-owner-artifact`
9
+ - Manifest: `tests/browser/visual-baselines/rc1-visual-owner-artifact.manifest.json`
10
+ - Publish Boundary: `private-until-release-owner-acceptance`
11
+
12
+ ## Zweck
13
+
14
+ Visual Owner Artifacts verbinden die bestehende DOM-first Visual Snapshot Automation mit einem reproduzierbaren Screenshot-/Pixel-Artefaktpfad fuer RC1. Der lokale Gate validiert Contract, Manifest und DOM-Snapshot-Zustand. Die eigentliche Screenshot-Erzeugung bleibt optional und gehoert in stabile Browser- oder CI-Umgebungen.
15
+
16
+ ## Pfadkonvention
17
+
18
+ ```text
19
+ .xtend-test-results/visual-snapshots/rc1/{family}/{viewport}/{theme}/{density}/{motion}.png
20
+ ```
21
+
22
+ Der Report liegt unter:
23
+
24
+ ```text
25
+ .xtend-test-results/visual-snapshots/rc1/visual-owner-artifact-report.json
26
+ ```
27
+
28
+ Die Fixture bleibt `tests/browser/fixtures/visual-snapshots-fixture.html`, die DOM-Baseline bleibt `tests/browser/visual-baselines/visual-snapshots.dom-baseline.json`.
29
+
30
+ ## Lokale Nutzung
31
+
32
+ ```bash
33
+ npm run test:epic13-visual-owner-artifact
34
+ ```
35
+
36
+ Der lokale Modus ist `static-artifact-manifest-plus-dom-snapshot-gate`. `pixelDiffRequiredInLocalGate`, `screenshotRequiredInLocalGate` und `binaryBaselineCommitted` sind `false`.
37
+
38
+ ## Beziehung zu vorhandenen Gates
39
+
40
+ - Die DOM-Struktur kommt aus [Visual Snapshot Automation](./visual-snapshot-automation.md).
41
+ - Die PROD-nahe Browser-/CSP-Vorbereitung kommt aus [PROD Browser CSP Smokes](./prod-browser-csp-smokes.md).
42
+ - Das Owner-Artefakt bleibt `optional-browser-driver-or-ci-artifact`, bis eine stabile Browser-Capture-Umgebung als verpflichtender Release-Gate entschieden wird.
43
+
44
+ ## Handoff
45
+
46
+ `WP-E13-08` ist abgeschlossen. `WP-E13-09` hat `xtend.epic13.rmt-production-readiness.v1` unter [RMT Production Readiness](./rmt-production-readiness.md) gebuendelt. `WP-E13-10` hat [Docs RMT Production Hardening](./docs-rmt-production-hardening.md) abgeschlossen. `WP-E13-11` hat [Trusted DOM Boundary Browser Proof](./trusted-dom-boundary-browser-proof.md) und `xtend.epic13.trusted-dom-boundary.v1` abgeschlossen. `WP-E13-12` hat [RC1 Migration Notes](./rc1-migration-notes.md) und `xtend.epic13.rc1-migration-notes-semver.v1` abgeschlossen. `WP-E13-13` hat [RC1 Gate Matrix und CI-Handoff](./rc1-gate-matrix-ci-handoff.md) und `xtend.epic13.rc1-gate-matrix-ci-handoff.v1` abgeschlossen.
@@ -0,0 +1,87 @@
1
+ # Visual Snapshot Automation
2
+
3
+ - Contract: `xtend.epic12.visual-snapshot-automation-contract.v1`
4
+ - Entry Contract: `xtend.epic12.visual-snapshot-automation-entry.v1`
5
+ - Automation Report Contract: `xtend.epic12.visual-snapshot-automation-report.v1`
6
+ - Runner Contract: `xtend.epic12.visual-snapshot-runner.v1`
7
+ - Fixture Contract: `xtend.epic12.visual-snapshot-fixture.v1`
8
+ - Runner Report Contract: `xtend.epic12.visual-snapshot-runner-report.v1`
9
+ - Design Token Contract: `xtend.design-tokens.product-contract.v1`
10
+ - Workpackages: `WP-E12-10`, `WP-E12-11`, `WP-E12-12`
11
+ - Contract Gate: `node scripts/run_xtend_tests.js visual-snapshot-automation --json`
12
+ - Snapshot Gate: `node scripts/run_xtend_tests.js visual-snapshots --json`
13
+
14
+ XTend Visual Snapshot Automation ist die Epic-12-Linie fuer lokale visuelle Regression. `WP-E12-10` definiert Scopes, Matrix, Toleranzen und Artefaktpolitik. `WP-E12-11` setzt darauf einen lokalen DOM-first Snapshot Runner mit JSON-Baseline auf.
15
+
16
+ ## Lokal pruefen
17
+
18
+ ```bash
19
+ node scripts/run_xtend_tests.js visual-snapshot-automation
20
+ node scripts/run_xtend_tests.js visual-snapshot-automation --json
21
+ npm run test:visual-snapshot-automation
22
+ node scripts/run_xtend_tests.js visual-snapshots --json
23
+ npm run test:visual-snapshots
24
+ node scripts/run_xtend_tests.js design-tokens --json
25
+ npm run test:design-tokens
26
+ ```
27
+
28
+ Der Gate ist local-only, CDN-frei und nutzt keine externen Browserdienste.
29
+
30
+ ## Matrix
31
+
32
+ Der Contract uebernimmt die 360 Kombinationen der Component Shell Theme Matrix:
33
+
34
+ - Themes: `light`, `dark`, `high-contrast`, `forced-colors`
35
+ - Motion: `default-motion`, `reduced-motion`
36
+ - Density: `comfortable`, `compact`, `dense`
37
+ - Viewports: `desktop-1280`, `tablet-768`, `mobile-390`
38
+ - UX-Familien: `form-controls`, `feedback-status`, `navigation-routing`, `overlay-interaction`, `layout-display-media`
39
+
40
+ ## Snapshot Scopes
41
+
42
+ - `shell-structure`
43
+ - `visual-state`
44
+ - `theme-token-state`
45
+ - `motion-density-state`
46
+ - `viewport-layout`
47
+ - `focus-a11y-state`
48
+ - `rmt-shell-descriptor`
49
+
50
+ Die RMT-Grenze bleibt `no-rmt-kernel-import-of-xtend-types`: RMT beschreibt und scheduled Shells, importiert aber keine XTend-Typen in den Kernel.
51
+
52
+ Ab `WP-E12-12` nutzt die Snapshot-Fixture dieselben Produkt-Tokens wie `x-theme` und die Component Shell Theme Matrix. Die DOM-Baseline trackt `--xtend-surface`, `--xtend-text`, `--xtend-color-primary`, `--xtend-density-spacing` und `--xtend-radius`; lokale Fixture-Namen wie `--snapshot-*` sind entfernt.
53
+
54
+ ## Diff-Strategie
55
+
56
+ `WP-E12-10` legt `dom-first-pixel-ready` fest, `WP-E12-11` fuehrt den lokalen DOM-Diff aus:
57
+
58
+ - DOM-Struktur und CSS Token haben Toleranz `0`.
59
+ - Pixel-Diff ist vorbereitet als `optional-local-pixel-diff`, laeuft im Node-Contract-Gate aber nicht.
60
+ - Maximaler Pixel-Mismatch ist `0.01`.
61
+ - Layout Shift ist auf `1px` begrenzt.
62
+ - Vor Capture muss der Runner auf Custom Elements, Fonts, Loader-Abschluss und einen Animation Frame warten.
63
+
64
+ ## Artefakte
65
+
66
+ | Artefakt | Pfad |
67
+ |----------|------|
68
+ | Contract | `development/XTend-Visual-Snapshot-Automation-Contract.md` |
69
+ | Plan | `tests/browser/visual-snapshot-automation-plan.js` |
70
+ | Automation Suite | `tests/browser/visual_snapshot_automation_suite.js` |
71
+ | Runner | `tests/browser/visual-snapshots-runner.js` |
72
+ | Fixture | `tests/browser/fixtures/visual-snapshots-fixture.html` |
73
+ | DOM Baseline | `tests/browser/visual-baselines/visual-snapshots.dom-baseline.json` |
74
+ | Snapshot Suite | `tests/browser/visual_snapshots_suite.js` |
75
+ | Output Root | `.xtend-test-results/visual-snapshots` |
76
+ | Report Path | `.xtend-test-results/visual-snapshots/visual-snapshots-report.json` |
77
+ | RC1 Owner Manifest | `tests/browser/visual-baselines/rc1-visual-owner-artifact.manifest.json` |
78
+
79
+ Die Baseline ist in `WP-E12-11` textuell und reviewbar. Binary- oder Screenshot-Baselines bleiben einem optionalen lokalen Pixel-Diff-Modus vorbehalten.
80
+
81
+ ## RC1 Visual Owner Artifact
82
+
83
+ Ab `WP-E13-08` nutzt [Visual Owner Artifacts](./visual-owner-artifacts.md) diese DOM-first Linie als Quelle fuer `xtend.epic13.visual-owner-artifact.v1`. Der lokale Gate `node scripts/run_xtend_tests.js epic13-visual-owner-artifact --json` normalisiert Artifact Root, Report-Pfad, Screenshot-Template und Viewports. Die Screenshot-/Pixel-Erzeugung bleibt `optional-browser-driver-or-ci-artifact`.
84
+
85
+ ## RC0 Adoption Update
86
+
87
+ Seit `WP-E12-15` verweist der [RC0 Adoption Guide](./rc0-adoption-guide.md) auf diesen DOM-first Snapshot-Pfad als RC0-Baseline. Component Authors behandeln `visual-snapshots`, `design-tokens` und `component-shell-theme-matrix` gemeinsam als lokale Review-Kette; Pixel-Baselines bleiben optional und duerfen den lokalen RC0 Dry Run nicht blockieren.
@@ -0,0 +1,55 @@
1
+ # XTend API Types
2
+
3
+ - Contract: `xtend.type-exports.api-declarations.v1`
4
+ - Workpackage: `WP-TypeExports-03`
5
+ - Gate: `node scripts/run_xtend_tests.js type-exports-api --json`
6
+ - Report: `.xtend-test-results/xtend-type-exports-api-report.json`
7
+ - Declaration: `api.d.ts`
8
+
9
+ ## Zweck
10
+
11
+ `api.d.ts` beschreibt die oeffentliche Core-API aus `api.js`: `initXTendAPI(manifest)`, den globalen Namespace `window.XTend.*`, die Legacy-Aliase und das Event `xtend-api-ready`. Die Declaration ist types-only; `api.js` bleibt runtime-unveraendert.
12
+
13
+ ## Namespace
14
+
15
+ Der zentrale Namespace-Typ heisst `XTendNamespace`.
16
+
17
+ | API | Typ |
18
+ | --- | --- |
19
+ | `window.XTend.compliance` | `XTendComplianceApi` |
20
+ | `window.XTend.theme` | `XTendThemeApi` |
21
+ | `window.XTend.toast` | `XTendToastApi` |
22
+ | `window.XTend.alert` | `XTendAlertApi` |
23
+ | `window.XTend.dialog` | `XTendDialogApi` |
24
+ | `window.XTend.modal` | `XTendModalApi` |
25
+
26
+ ## Legacy-Aliase
27
+
28
+ `api.d.ts` typisiert weiterhin die bestehenden globalen Komfort-Aliase:
29
+
30
+ - `window.XTheme`
31
+ - `window.XToast`
32
+ - `window.XAlert`
33
+ - `window.XDialog`
34
+ - `window.XModal`
35
+ - `window.showToast`
36
+ - `window.showAlert`
37
+ - `window.showDialog`
38
+ - `window.showModal`
39
+
40
+ ## Event
41
+
42
+ `WindowEventMap` enthaelt `xtend-api-ready` mit `XTendApiReadyDetail`. Der Payload meldet, ob Toast, Alert, Dialog, Modal und Theme APIs initialisiert sind.
43
+
44
+ ## Package Export
45
+
46
+ Der Package-Export `./api` besitzt ab `WP-TypeExports-03` die `types`-Condition `./api.d.ts`. `browser` und `default` zeigen weiter auf `./api.js`.
47
+
48
+ ## Drift Gate
49
+
50
+ Der Gate `type-exports-api` prueft:
51
+
52
+ - `api.d.ts` existiert und ist im Package enthalten.
53
+ - `./api` zeigt per `types` auf `./api.d.ts`.
54
+ - `initXTendAPI`, `window.XTend.*`, Legacy-Aliase und `xtend-api-ready` sind in Runtime und Declaration sichtbar.
55
+ - `api.js` importiert keine Declaration-Datei.
@@ -0,0 +1,55 @@
1
+ # XTend Builder Types
2
+
3
+ Status: `completed`
4
+ Workpackage: `WP-TypeExports-06`
5
+ Schema: `xtend.type-exports.builder-declarations.v1`
6
+ Gate: `node scripts/run_xtend_tests.js type-exports-builder --json`
7
+
8
+ ## Scope
9
+
10
+ `WP-TypeExports-06` typisiert die Builder-, Scaffold- und Component-Lab-Programm-APIs, ohne die CLI oder die Generatoren nach TypeScript zu portieren.
11
+
12
+ Die gemeinsame Grundlage liegt in `./xtend-builder/builder-public-types.d.ts`:
13
+
14
+ - `XtendBuilderComponentInput`
15
+ - `XtendBuilderComponentPlan`
16
+ - `XtendBuilderComponentFilesResult`
17
+ - `XtendBuilderWorkflow`
18
+ - `XtendBuilderComponentLabPlan`
19
+
20
+ ## Declaration Pack
21
+
22
+ Die Root- und Workflow-APIs sind ueber diese Facades stabilisiert:
23
+
24
+ - `./xtend-builder/scaffold.d.ts`
25
+ - `./xtend-builder/lib/cli.d.ts`
26
+ - `./xtend-builder/blueprints/component-blueprint.contract.d.ts`
27
+ - `./xtend-builder/generators/component-plan.d.ts`
28
+ - `./xtend-builder/generators/component-files.d.ts`
29
+ - `./xtend-builder/generators/registry.d.ts`
30
+ - `./xtend-builder/workflows/developer-workflow.d.ts`
31
+
32
+ Component-Lab- und Preview-Consumer erhalten eigene Contracts:
33
+
34
+ - `./xtend-builder/preview/component-preview.d.ts`
35
+ - `./xtend-builder/preview/component-lab.d.ts`
36
+ - `./xtend-builder/preview/component-lab-ux-inspector.d.ts`
37
+
38
+ Die bereits exportierten Typing- und UX-Contract-Module sind als schmale Facades abgebildet, darunter `component-shell-contract`, `component-styling-contract`, `component-network-contract`, `rmt-shell-authoring-contract`, `rmt-dsl-authoring-polish`, die Form-/Feedback-/Navigation-/Overlay-/Layout-UX Contracts und `component-ux-performance-contract`.
39
+
40
+ ## Package Exports
41
+
42
+ Die Package-Exports `./builder`, `./builder/*` sowie die expliziten Builder-Subexports erhalten `types`-Conditions. Beispiel:
43
+
44
+ ```json
45
+ "./builder": {
46
+ "types": "./xtend-builder/scaffold.d.ts",
47
+ "default": "./xtend-builder/scaffold.js"
48
+ }
49
+ ```
50
+
51
+ `./builder/*` bleibt als generischer Anschluss fuer repo-lokale Builder-Module erhalten und zeigt auf `./xtend-builder/*.d.ts`.
52
+
53
+ ## Boundary
54
+
55
+ Die Declarations bleiben `types-only-no-runtime-imports`. Sie importieren keine Builder-Runtime, keine Komponenten, keinen RMT-Kernel und keine Loader-/API-Laufzeit. Der lokale Gate vergleicht Runtime-Exports, Package-`types`-Conditions, vorhandene Declaration-Dateien und die gemeinsame Builder-Type-Basis.
@@ -0,0 +1,44 @@
1
+ # XTend Catalog Types
2
+
3
+ - Contract: `xtend.type-exports.catalog-declarations.v1`
4
+ - Workpackage: `WP-TypeExports-07`
5
+ - Gate: `node scripts/run_xtend_tests.js type-exports-catalog --json`
6
+ - Report: `.xtend-test-results/xtend-type-exports-catalog-report.json`
7
+
8
+ ## Zweck
9
+
10
+ Catalog-Module beschreiben XTend-Gates, Handoffs, Release-Plaene und SurfaceManager-Runtime-Scopes als maschinenlesbare Plan-/Report-Strukturen. `WP-TypeExports-07` fuehrt dafuer ein gemeinsames Declaration-Pattern ein, damit neue Catalogs nicht pro Property neu typisiert werden muessen.
11
+
12
+ `./catalog/catalog-public-types.d.ts` definiert die gemeinsamen Basistypen `XtendCatalogPlan`, `XtendCatalogReport`, `XtendCatalogGate`, `XtendCatalogFactory`, `XtendCatalogValidator` und `XtendCatalogDiagnostic`. Die einzelnen Catalog-Facades exportieren die Runtime-Symbole des jeweiligen `.js`-Moduls und binden Funktionen wie `create*Plan`, `create*Report`, `create*Gate` und `validate*Plan` an diese Basistypen.
13
+
14
+ ## Package Surface
15
+
16
+ Alle oeffentlichen `./catalog/*` Package-Exports besitzen nun eine eigene `types`-Condition. Beispiele:
17
+
18
+ ```json
19
+ "./catalog/epic13-package-export-lock": {
20
+ "types": "./catalog/epic13-package-export-lock.d.ts",
21
+ "default": "./catalog/epic13-package-export-lock.js"
22
+ }
23
+ ```
24
+
25
+ Das Runtime-Ziel bleibt unveraendert. Die Declarations importieren keine Runtime-Dateien und sind als Consumer-Facades gedacht.
26
+
27
+ ## Catalog Familien
28
+
29
+ Der Gate klassifiziert drei fuer XTend wichtige Catalog-Familien:
30
+
31
+ - SurfaceManager-Catalogs bleiben interne XTend-UI-Unterstuetzung und dokumentieren App-Shell-, Surface-, Routing- und Runtime-Handoffs.
32
+ - Epic-Catalogs beschreiben Workpackage-, Gate- und Contract-Plaene ueber mehrere Epics hinweg.
33
+ - Release-Catalogs bündeln Handoff-, Readiness-, Export-Lock- und Migration-Entscheidungen.
34
+
35
+ Die SurfaceManager-Catalogs ersetzen keine Fabric-, RMT-Kernel- oder Runtime-Schicht. Sie bleiben deklarative Plaene und Reports, die UI-Surfaces unterstuetzen.
36
+
37
+ ## Drift Gate
38
+
39
+ ```bash
40
+ node scripts/run_xtend_tests.js type-exports-catalog --json
41
+ npm run test:type-exports-catalog
42
+ ```
43
+
44
+ Der Gate prueft, dass Package-Catalogs ihre `types`-Conditions besitzen, dass alle Catalog-Runtime-Exports in den `.d.ts`-Facades auftauchen, dass SurfaceManager-/Epic-/Release-Catalogs klassifiziert sind und dass keine Runtime-Dateien Declaration-Imports erhalten.
@@ -0,0 +1,143 @@
1
+ # XTend-Fabric RMT Lane Mapping
2
+
3
+ - Status: produktiver Mapping-Contract ab `ER-WP-13`
4
+ - Contract: `xtend.docs.xtend-fabric-rmt-lane-mapping.v1`
5
+ - Mapping Contract: `xtend.fabric.rmt-lane-mapping.v1`
6
+ - Runtime: `fabric/rmt-lane-mapping.js`
7
+ - Test: `tests/fabric/fabric_rmt_lane_mapping_suite.js`
8
+
9
+ ## Zweck
10
+
11
+ `fabric/rmt-lane-mapping.js` verbindet Fabric-Lanes mit RMT Schedule Policies, ohne XTend in den RMT Kernel einzubauen.
12
+
13
+ Fabric beschreibt UI-Arbeit semantisch: `user-blocking`, `a11y`, `visible`, `transition`, `idle`, `background`, `diagnostics`. RMT bleibt host-neutral und sieht weiterhin nur Schedule Records mit `endpointName`, `scope`, `lane`, `priority`, `deadlineMs`, `preferIdle`, `coalesceKey` und `budgetClass`.
14
+
15
+ Seit `WP-E13-09` referenziert [RMT Production Readiness](./rmt-production-readiness.md) dieses Mapping unter `xtend.epic13.rmt-production-readiness.v1`, damit RMT-first Apps Fabric/Lane-Signale produktionsnah ingestieren koennen, ohne die RMT-Kernel-Boundary zu verletzen.
16
+
17
+ ## Lane Mapping
18
+
19
+ | Fabric-Lane | RMT Schedule Lane | Grund |
20
+ |-------------|-------------------|-------|
21
+ | `user-blocking` | `user-blocking` | Eingabe, Navigation und Fokus sind kritisch |
22
+ | `a11y` | `user-blocking` | Screenreader- und Fokus-Signale sind user-facing; RMT hat noch keine eigene `a11y` Lane |
23
+ | `visible` | `visible` | sichtbare Component-Arbeit |
24
+ | `transition` | `transition` | Route- und UI-Uebergaenge |
25
+ | `idle` | `idle` | nicht sichtbare Hydration und Follow-up |
26
+ | `background` | `background` | best-effort Arbeit |
27
+ | `diagnostics` | `diagnostics` | Telemetry und Snapshots |
28
+
29
+ `a11y` bleibt also eine Fabric-Lane. Das erzeugte RMT Schedule Record traegt die RMT-Lane `user-blocking` und bewahrt `metadata.fabricLane = "a11y"`, damit Reporter und spaetere Adapter die urspruengliche Semantik sehen koennen.
30
+
31
+ ## API
32
+
33
+ ```js
34
+ const mapping = window.XTendFabricRmtLaneMapping.createFabricRmtLaneMapping();
35
+
36
+ const result = mapping.resolveFiber({
37
+ kind: 'component.hydrate',
38
+ lane: 'idle',
39
+ scope: 'x-alert#secondary',
40
+ componentRef: 'x-alert'
41
+ });
42
+ ```
43
+
44
+ Wichtige Funktionen:
45
+
46
+ | API | Zweck |
47
+ |-----|-------|
48
+ | `createFabricRmtLaneMapping(options)` | erzeugt ein Mapping-Objekt mit Lane-Map und Schedule Records |
49
+ | `createRmtScheduleRecords(options)` | erzeugt host-neutrale RMT Schedule Records fuer Fabric-Lanes |
50
+ | `resolveRmtScheduleForFiber(fiber, options)` | loest eine Fiber auf ein Schedule Record auf |
51
+ | `normalizeFabricLaneForRmt(lane)` | uebersetzt eine einzelne Fabric-Lane in eine RMT-Lane |
52
+
53
+ ## Beispiel Schedule Records
54
+
55
+ ```json
56
+ {
57
+ "schema": "xtend.fabric.rmt-lane-schedule.v1",
58
+ "id": "component.idle.hydrate",
59
+ "endpointName": "xtendrmt.component.hydrate",
60
+ "scope": "xtend.fabric.idle",
61
+ "lane": "idle",
62
+ "priority": 35,
63
+ "deadlineMs": 500,
64
+ "preferIdle": true,
65
+ "coalesceKey": "xtend.fabric.idle",
66
+ "budgetClass": "background",
67
+ "metadata": {
68
+ "contract": "xtend.fabric.rmt-lane-mapping.v1",
69
+ "fabricLane": "idle",
70
+ "rmtLane": "idle"
71
+ }
72
+ }
73
+ ```
74
+
75
+ Seit `ER-WP-20` gibt es zusaetzlich `component.lazy.hydrate` fuer unterhalb des Fold oder bei Backpressure verschobene Hydration. Die RMT-Lane bleibt `idle`; der Unterschied liegt in `scheduleRef`, Scope und Coalescing.
76
+
77
+ ```json
78
+ {
79
+ "schema": "xtend.fabric.rmt-lane-schedule.v1",
80
+ "id": "a11y.user-blocking.announce",
81
+ "endpointName": "xtendrmt.a11y.announce",
82
+ "scope": "xtend.fabric.a11y",
83
+ "lane": "user-blocking",
84
+ "priority": 95,
85
+ "deadlineMs": 80,
86
+ "preferIdle": false,
87
+ "coalesceKey": "xtend.fabric.a11y.announce",
88
+ "budgetClass": "critical",
89
+ "metadata": {
90
+ "contract": "xtend.fabric.rmt-lane-mapping.v1",
91
+ "fabricLane": "a11y",
92
+ "rmtLane": "user-blocking",
93
+ "reason": "RMT schedules-domain has no dedicated a11y lane in xtend.rmt.schedules-domain.v1."
94
+ }
95
+ }
96
+ ```
97
+
98
+ ## Kernel Boundary
99
+
100
+ Das Mapping importiert keinen XTendRMT Kernel und parst keine `.rmt` Dokumente. Es kann bereits normalisierte Schedule Records aus einem Host oder Test-Fixture entgegennehmen und `scheduleRef` oder `endpointNameHint` darauf aufloesen.
101
+
102
+ Erlaubt:
103
+
104
+ - Fabric-Fiber auf RMT Schedule Records mappen
105
+ - generierte Schedule Records als App-/Adapter-Hints verwenden
106
+ - bestehende `schedules[*]` Records aus normalisierten RMT-Dokumenten referenzieren
107
+ - `metadata.fabricLane` fuer Diagnostics und Reporter erhalten
108
+
109
+ Nicht erlaubt:
110
+
111
+ - RMT Runtime oder Kernel in Fabric importieren
112
+ - `a11y` als RMT-Kernel-Lane erzwingen
113
+ - XTend-Komponenten im RMT Kernel ausfuehren
114
+ - RMT Schema-Validierung in Fabric duplizieren
115
+
116
+ ## Adapter-Ingestion
117
+
118
+ Ab Epic 10 / `WP-E10-05` nutzt der produktive `xtend.component` Adapter dieselbe Semantik als Runtime-Context. Der Contract heisst `xtend.component.fabric-lane-ingestion.v2`.
119
+
120
+ Precedence im Adapter:
121
+
122
+ 1. `rmt.schedule-record`
123
+ 2. `rmt.component-metadata`
124
+ 3. `fabric.runtime-override`
125
+ 4. `component.static-contract`
126
+ 5. `scaffold.blueprint-default`
127
+
128
+ Der Adapter importiert Fabric nicht in den RMT Kernel. Er loest beim Mounting und bei Hydration nur den Fabric Context auf, setzt `result.metadata.fabric` und markiert DOM-Hosts mit `data-xtend-fabric-lane`, `data-xtend-rmt-lane`, `data-xtend-fabric-fiber`, `data-xtend-fabric-source` und `data-rmt-endpoint`.
129
+
130
+ ## Gates
131
+
132
+ ```bash
133
+ node scripts/run_xtend_tests.js fabric-lane-mapping --json
134
+ node scripts/run_xtend_tests.js rmt-component-fabric-ingestion --json
135
+ node scripts/run_xtend_tests.js hydration-policy --json
136
+ npm run test:fabric-lanes
137
+ npm run test:rmt-component-fabric-ingestion
138
+ npm run test:hydration-policy
139
+ node scripts/run_xtend_tests.js references --json
140
+ npm test
141
+ ```
142
+
143
+ `ER-WP-20` ist darauf aufgebaut und haertet Lazy/Idle/Visible Hydration Policies mit konkreten `scheduleRef`-Entscheidungen. Route Render und XRouter Navigation bleiben ueber `ER-WP-15` korrelierbar.