@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,474 @@
1
+ # XTend-Fabric Runtime
2
+
3
+ - Status: Runtime Skeleton ab `ER-WP-08`, Lifecycle Boundary ab `ER-WP-09`, Reporter Adapter ab `ER-WP-10`, Runtime Diagnostics Bridge ab `ER-WP-11`, Component Fiber Instrumentierung ab `ER-WP-14`, Route Fiber Instrumentierung ab `ER-WP-15`, Telemetry Snapshots ab `ER-WP-16`, Performance Measurements ab `ER-WP-18`, Performance Regression ab `ER-WP-19`, Hydration Policies ab `ER-WP-20`, Performance Authoring ab `ER-WP-21`
4
+ - Contract: `xtend.docs.xtend-fabric.v1`
5
+ - API Contract: `xtend.fabric.api.v1`
6
+ - Lifecycle Boundary Contract: `xtend.fabric.lifecycle-error-boundary.v1`
7
+ - Runtime Diagnostics Bridge Contract: `xtend.fabric.runtime-diagnostics-bridge.v1`
8
+ - Component Fiber Instrumentation Contract: `xtend.fabric.component-fiber-instrumentation.v1`
9
+ - Route Fiber Instrumentation Contract: `xtend.fabric.route-fiber-instrumentation.v1`
10
+ - Telemetry Snapshot Contract: `xtend.fabric.telemetry-snapshot.v1`
11
+ - Backpressure Signal Contract: `xtend.fabric.backpressure-signal.v1`
12
+ - Performance Measurement Contract: `xtend.performance.measurement.v1`
13
+ - Component Lifecycle Telemetry Contract: `xtend.component.lifecycle-telemetry.v1`
14
+ - Hydration Policy Contract: `xtend.fabric.hydration-policy.v1`
15
+ - Performance Authoring: [Performance fuer Komponentenautoren](./performance.md)
16
+ - Runtime: `fabric/xtend-fabric.js`
17
+ - Lane Mapping: `docs/xtend-fabric-rmt-lane-mapping.md`
18
+
19
+ ## Zweck
20
+
21
+ `XTend-Fabric` ist die lokale Host-Schicht fuer Safety, Diagnostics, Error Boundaries, Reporter und spaetere UI-Scheduler-Anbindung.
22
+
23
+ Fabric ersetzt weder XTend UI noch XTendRMT. Die Schicht sitzt zwischen Loader/API/Komponenten und App-spezifischem Code. XTendRMT bleibt framework-agnostischer Scheduler und Kernel; Fabric konsumiert nur Adapter-, Bridge- und Diagnostic-Signale.
24
+
25
+ ## Runtime Entry
26
+
27
+ Der erste produktive Runtime-Pfad ist:
28
+
29
+ ```html
30
+ <script src="/fabric/xtend-fabric.js"></script>
31
+ ```
32
+
33
+ Im Browser steht danach die Fassade `window.XTendFabric` bereit. In lokalen Node-Gates kann dasselbe Modul per CommonJS geladen werden.
34
+
35
+ ## API
36
+
37
+ ```js
38
+ const fabric = window.XTendFabric.createXtendFabric();
39
+ ```
40
+
41
+ Die Instanz stellt bereit:
42
+
43
+ | API | Zweck |
44
+ |-----|-------|
45
+ | `createBoundary(scope, options)` | wiederverwendbare Boundary fuer Loader-, Component-, Router-, API- oder RMT-nahe Arbeit |
46
+ | `createComponentLifecycleBoundary(componentRef, options)` | Component-spezifische Boundary fuer Lifecycle-, Hydration- und Event-Handler-Fehler |
47
+ | `wrapComponent(componentClassOrInstance, options)` | vorbereitetes Lifecycle-Wrapping fuer Component-Fehler |
48
+ | `runFiber(fiberInput, callback)` | fuehrt UI-Arbeit als Fiber aus und zeichnet Ergebnis/Fehler lokal auf |
49
+ | `emitDiagnostic(event)` | normalisiert, redigiert und speichert lokale Diagnostics |
50
+ | `registerReporter(reporter)` | registriert opt-in Reporter |
51
+ | `createReporterAdapter(options)` | generische Adapterflaeche fuer Custom- und Enterprise-Reporter |
52
+ | `createConsoleReporter(options)` | lokaler Console Reporter fuer Entwicklung |
53
+ | `createTestReporter(options)` | Memory Reporter fuer Tests und lokale Gates |
54
+ | `createRuntimeDiagnosticsBridge(options)` | verbindet Fabric mit `xstate`, XTend API Compliance und XTendRMT Diagnostics |
55
+ | `createComponentFiberInstrumentation(componentRef, options)` | Mount, Hydration und Preload als Component-Fibers instrumentieren |
56
+ | `createRouteFiberInstrumentation(routerRef, options)` | XRouter Navigation und Route Render als Route-Fibers instrumentieren |
57
+ | `createTelemetrySnapshot(options)` | aggregiert Fibers, Diagnostics, Performance Runtime, Runtime Bridge und Backpressure |
58
+ | `publishTelemetrySnapshot(snapshotOrOptions, options)` | exportiert einen Snapshot als redigierte Diagnostic an opt-in Reporter |
59
+ | `createBackpressureSignal(signal, defaults)` | erzeugt redigierte Backpressure-Hinweise fuer Scheduler-/Host-Schichten |
60
+ | `recordComponentTelemetry(record)` | speichert `xtend.component.lifecycle-telemetry.v1` Records fuer Snapshot-Aggregation |
61
+ | `captureError(error, context)` | wandelt Fehler in `xtend.fabric.diagnostic.v1` um |
62
+ | `connectRmtDiagnostics(source, options)` | konsumiert RMT Adapter-/Bridge-Diagnostics ohne Kernel-Import |
63
+
64
+ ## Contracts
65
+
66
+ Fabric exportiert diese stabilen Contract IDs:
67
+
68
+ - `xtend.fabric.api.v1`
69
+ - `xtend.fabric.diagnostic.v1`
70
+ - `xtend.fabric.reporter.v1`
71
+ - `xtend.fabric.redaction.v1`
72
+ - `xtend.fabric.fiber.v1`
73
+ - `xtend.fabric.lane.v1`
74
+ - `xtend.fabric.lifecycle-error-boundary.v1`
75
+ - `xtend.fabric.runtime-diagnostics-bridge.v1`
76
+ - `xtend.fabric.component-fiber-instrumentation.v1`
77
+ - `xtend.fabric.route-fiber-instrumentation.v1`
78
+ - `xtend.fabric.telemetry-snapshot.v1`
79
+ - `xtend.fabric.backpressure-signal.v1`
80
+ - `xtend.performance.measurement.v1`
81
+ - `xtend.component.lifecycle-telemetry.v1`
82
+ - `xtend.fabric.hydration-policy.v1`
83
+
84
+ Das RMT-Lane-Mapping ist als separates Modul unter `fabric/rmt-lane-mapping.js` gefuehrt und traegt `xtend.fabric.rmt-lane-mapping.v1`.
85
+
86
+ ## Diagnostics
87
+
88
+ Diagnostics werden lokal gespeichert und als Browser-Event `xtend-fabric-diagnostic` publiziert, sofern eine Browser-Umgebung vorhanden ist.
89
+
90
+ Mindestfelder:
91
+
92
+ - `schema`
93
+ - `id`
94
+ - `timestamp`
95
+ - `level`
96
+ - `code`
97
+ - `message`
98
+ - `source`
99
+ - `phase`
100
+
101
+ Optionale Korrelation:
102
+
103
+ - `componentRef`
104
+ - `component`
105
+ - `fiberId`
106
+ - `lane`
107
+ - `severity`
108
+ - `correlationId`
109
+ - `routeRef`
110
+ - `scheduleRef`
111
+
112
+ ## Component Lifecycle Error Boundary
113
+
114
+ Ab `ER-WP-09` besitzt Fabric eine produktive Component Lifecycle Error Boundary. Sie faengt Fehler aus `connectedCallback`, `attributeChangedCallback`, `render`, `hydrate`, `disconnectedCallback` und explizit gewrappten Event Handlern ab.
115
+
116
+ ```js
117
+ const boundary = fabric.createComponentLifecycleBoundary('x-alert', {
118
+ swallowErrors: true,
119
+ fallbackValue: undefined
120
+ });
121
+
122
+ boundary.runPhase('render', () => component.render());
123
+ const safeDismiss = boundary.wrapEventHandler(component.handleDismiss, {
124
+ eventName: 'dismiss'
125
+ });
126
+ ```
127
+
128
+ `wrapComponent` nutzt dieselbe Boundary:
129
+
130
+ ```js
131
+ const SafeAlert = fabric.wrapComponent(XAlert, {
132
+ componentRef: 'x-alert',
133
+ eventHandlers: ['handleDismiss']
134
+ });
135
+ ```
136
+
137
+ Lifecycle-Fehler verwenden den Code `xtend.fabric.component.lifecycle.failed` und tragen mindestens `component`, `componentRef`, `phase`, `fiberId`, `lane`, `severity` und `cause`. Das Mapping ist stabil:
138
+
139
+ | Phase | Fiber Kind | Lane |
140
+ |-------|------------|------|
141
+ | `connectedCallback` | `component.mount` | `visible` |
142
+ | `attributeChangedCallback` | `component.update` | `visible` |
143
+ | `render` | `component.render` | `visible` |
144
+ | `hydrate` | `component.hydrate` | `visible` |
145
+ | `disconnectedCallback` | `component.disconnect` | `background` |
146
+ | `eventHandler` | `event.handler` | `user-blocking` |
147
+
148
+ ## Reporter
149
+
150
+ Der Default ist ein `noop` Reporter. Ohne `registerReporter` gibt es keine externe Uebertragung. Ab `ER-WP-10` gibt es einen expliziten Reporter Adapter Contract fuer Console-, Test- und spaetere Enterprise-Reporter.
151
+
152
+ Reporter muessen mindestens dieses Shape haben:
153
+
154
+ ```js
155
+ {
156
+ id: 'test',
157
+ schema: 'xtend.fabric.reporter.v1',
158
+ kind: 'test',
159
+ delivery: 'memory',
160
+ external: false,
161
+ minimumLevel: 'warn',
162
+ capabilities: ['diagnostics'],
163
+ publish(event, context) {},
164
+ flush(reason) {},
165
+ dispose() {}
166
+ }
167
+ ```
168
+
169
+ Runtime-Factories:
170
+
171
+ | Factory | Zweck |
172
+ |---------|-------|
173
+ | `createNoopReporter()` | Default ohne externe Ausgabe |
174
+ | `createReporterAdapter(options)` | Vendor-neutraler Adapter fuer Custom- und Enterprise-Reporter |
175
+ | `createConsoleReporter(options)` | lokale Console-Ausgabe, opt-in |
176
+ | `createTestReporter(options)` | Memory-Reporter fuer Gates, opt-in |
177
+
178
+ ```js
179
+ const testReporter = window.XTendFabric.createTestReporter({
180
+ minimumLevel: 'warn'
181
+ });
182
+ const unregister = fabric.registerReporter(testReporter);
183
+ ```
184
+
185
+ ```js
186
+ const enterpriseReporter = window.XTendFabric.createReporterAdapter({
187
+ id: 'enterprise-probe',
188
+ kind: 'enterprise',
189
+ external: true,
190
+ minimumLevel: 'error',
191
+ capabilities: ['diagnostics', 'lifecycle-errors'],
192
+ sink(event, context) {
193
+ // Future enterprise transport hook.
194
+ }
195
+ });
196
+ ```
197
+
198
+ Reporter erhalten nur redigierte Diagnostics. Sensitive Felder wie `token`, `password`, `cookie`, `authorization`, `header`, `query` oder `form` werden entfernt. DOM Nodes werden nicht serialisiert. `minimumLevel`, `filter(event, context)` und `mapEvent(event, context)` koennen Auslieferung und Zielpayload kontrollieren. `mapEvent` wird nach dem Mapping erneut redigiert. Fehler in Reportern erzeugen lokale Diagnostics mit `xtend.fabric.reporter.failed`.
199
+
200
+ ## Runtime Diagnostics Bridge
201
+
202
+ Ab `ER-WP-11` verbindet `createRuntimeDiagnosticsBridge(options)` Fabric mit `xstate`, XTend API Compliance und XTendRMT Diagnostics. Die Bridge importiert keinen RMT Kernel. Sie konsumiert Adapterdaten, Bridge-Outputs und Diagnostics-Hubs.
203
+
204
+ ```js
205
+ const runtimeBridge = fabric.createRuntimeDiagnosticsBridge({
206
+ xstate: window.xstate,
207
+ api: window.XTend
208
+ });
209
+
210
+ runtimeBridge.connectXState();
211
+ runtimeBridge.connectApi();
212
+ const diagnosticsHub = runtimeBridge.createRmtDiagnosticsHub();
213
+ ```
214
+
215
+ `connectXState` schreibt stabile Mirror-Keys:
216
+
217
+ | Key | Zweck |
218
+ |-----|-------|
219
+ | `xtend.fabric.bridge.ready` | Bridge-Readiness mit Contract-ID |
220
+ | `xtend.fabric.diagnostics.last` | letzte redigierte Fabric Diagnostic |
221
+ | `xtend.fabric.diagnostics.snapshot` | lokaler Snapshot mit Diagnostic- und Fiber-Zaehlern |
222
+
223
+ Stabile Bridge-Diagnostics:
224
+
225
+ | Code | Quelle |
226
+ |------|--------|
227
+ | `xtend.fabric.xstate.connected` | xstate ist angebunden |
228
+ | `xtend.fabric.xstate.changed` | ein externer State-Key wurde geaendert |
229
+ | `xtend.fabric.api.connected` | XTend API Compliance-Metadaten wurden gelesen |
230
+ | `xtend.fabric.rmt.connected` | RMT Diagnostic Source ist angebunden |
231
+ | `xtend.rmt.bridge.adapter.result.degraded` | RMT Adapter Result wurde in Fabric normalisiert |
232
+
233
+ `connectRmtDiagnostics` akzeptiert Arrays, `source.diagnostics`, `source.listDiagnostics()`, `source.subscribe(fn)`, DOM Events und das von `createRmtDiagnosticsHub()` erzeugte Hub-Shape. Alle Payloads werden vor State- oder Reporter-Ausgabe redigiert.
234
+
235
+ Details stehen im Contract [XTend-Fabric Runtime Diagnostics Bridge](../development/XTend-Fabric-Runtime-Diagnostics-Bridge.md).
236
+
237
+ ## Fiber
238
+
239
+ `runFiber` normalisiert UI-Arbeit in `xtend.fabric.fiber.v1`.
240
+
241
+ ```js
242
+ fabric.runFiber({
243
+ kind: 'component.hydrate',
244
+ scope: 'x-alert#primary',
245
+ componentRef: 'x-alert',
246
+ correlationId: 'route.alerts'
247
+ }, () => {
248
+ // UI work
249
+ });
250
+ ```
251
+
252
+ Fabric inferiert die Lane aus dem Fiber-Kind, zum Beispiel `component.hydrate` -> `visible` und `route.navigate` -> `user-blocking`.
253
+
254
+ ## Component Fiber Instrumentierung
255
+
256
+ Ab `ER-WP-14` koennen Hosts und Adapter Component Mount, Hydration und Loader-Preload explizit als Fibers ausfuehren:
257
+
258
+ ```js
259
+ const componentFibers = fabric.createComponentFiberInstrumentation('x-alert', {
260
+ scope: 'x-alert#primary',
261
+ routeRef: '/alerts',
262
+ correlationId: 'route.alerts'
263
+ });
264
+
265
+ componentFibers.mount(() => document.createElement('x-alert'));
266
+ await componentFibers.hydrate((fiber) => element.hydrate(model, { fiber }));
267
+ componentFibers.preload(() => import('/components/xalert.js'));
268
+ ```
269
+
270
+ Operation Profiles:
271
+
272
+ | Operation | Fiber Kind | Default Lane | ScheduleRef | Endpoint Hint |
273
+ |-----------|------------|--------------|-------------|---------------|
274
+ | `mount` | `component.mount` | `visible` | `component.visible.mount` | `xtendrmt.component.mount` |
275
+ | `hydrate` | `component.hydrate` | `idle` | `component.idle.hydrate` | `xtendrmt.component.hydrate` |
276
+ | `preload` | `loader.module` | `visible` | `component.visible.mount` | `xtendrmt.component.mount` |
277
+
278
+ Jeder abgeschlossene Lauf erzeugt einen `xtend.fabric.fiber.v1` Record mit `durationMs`, `result`, `lane`, `scheduleRef`, `endpointNameHint` und `diagnostics`. Fehler erzeugen `xtend.fabric.component.mount.failed`, `xtend.fabric.component.hydrate.failed` oder `xtend.fabric.component.preload.failed` und werden an opt-in Reporter weitergereicht. Metadata wird redigiert, bevor sie im Fiber Store landet.
279
+
280
+ Fabric importiert dabei keinen RMT Kernel. `scheduleRef` und `endpointNameHint` sind nur Host-/Adapter-Hinweise fuer XTendRMT oder andere Scheduler.
281
+
282
+ ## Route Fiber Instrumentierung
283
+
284
+ Ab `ER-WP-15` koennen Hosts, App-Shells und XRouter-Adapter Navigation und Route Render explizit als Fibers ausfuehren:
285
+
286
+ ```js
287
+ const routeFibers = fabric.createRouteFiberInstrumentation('xtend.xrouter', {
288
+ scope: 'x-router#shell',
289
+ adapterRef: 'xtendrmt.xrouter',
290
+ hostRef: 'app-shell'
291
+ });
292
+
293
+ routeFibers.navigate(() => router.navigate('/settings'), {
294
+ from: '/',
295
+ to: '/settings',
296
+ routeId: 'settings'
297
+ });
298
+
299
+ await routeFibers.render((fiber) => router._renderRoute(match, outlet, { fiber }), {
300
+ routeRef: '/settings',
301
+ componentRef: 'x-settings'
302
+ });
303
+ ```
304
+
305
+ Operation Profiles:
306
+
307
+ | Operation | Fiber Kind | Default Lane | ScheduleRef | Endpoint Hint |
308
+ |-----------|------------|--------------|-------------|---------------|
309
+ | `navigate` | `route.navigate` | `user-blocking` | `ui.user-blocking.input` | `xtendrmt.ui.user-blocking` |
310
+ | `render` | `route.render` | `transition` | `route.transition.render` | `xtendrmt.route.render` |
311
+
312
+ Route Render kann per Override sichtbar geplant werden, zum Beispiel mit `lane: "visible"` und `scheduleRef: "route.visible.render"`. Fehler erzeugen `xtend.fabric.route.navigate.failed` oder `xtend.fabric.route.render.failed`. Metadata wird redigiert und kann `routeId`, `from`, `to`, `params`, `query`, `componentRef`, `adapterRef`, `hostRef` und `backpressureSignal` tragen.
313
+
314
+ Die XRouter-Kante bleibt framework-neutral: `navigate(to, options)`, `_handleNavigation()`, `_renderRoute(match, container)` und das `router-navigate` Signal sind instrumentierbare Grenzen. Fabric importiert keinen RMT Kernel; `scheduleRef` und `endpointNameHint` sind nur Scheduler-Hints fuer XTendRMT oder andere Hosts.
315
+
316
+ ## Telemetry Snapshots und Backpressure
317
+
318
+ Ab `ER-WP-16` fasst `createTelemetrySnapshot(options)` lokale Runtime-Daten zusammen:
319
+
320
+ ```js
321
+ const snapshot = fabric.createTelemetrySnapshot({
322
+ runtimeBridge,
323
+ rmtBridge,
324
+ performance: window.performance,
325
+ correlationId: 'route.settings'
326
+ });
327
+
328
+ fabric.publishTelemetrySnapshot(snapshot);
329
+ ```
330
+
331
+ Ein Snapshot traegt `xtend.fabric.telemetry-snapshot.v1` und enthaelt:
332
+
333
+ | Bereich | Inhalt |
334
+ |---------|--------|
335
+ | `totals` | Fiber-Zaehler, Fehler, Budget-Misses, Durchschnitts- und Maximaldauer |
336
+ | `lanes` | Aggregation pro Fabric-Lane inklusive `scheduleRefs` |
337
+ | `backpressure` | Score, Level, Aktion, Signale und Lane-Gruppierung |
338
+ | `componentTelemetry` | Component Lifecycle Records nach Operation, Component und Lane |
339
+ | `performance` | optionale `mark`/`measure` Eintraege, normalisierte Measurements und `phaseSummary` |
340
+ | `runtime` | optionaler Snapshot aus `createRuntimeDiagnosticsBridge` |
341
+
342
+ Component Lifecycle Telemetry traegt `xtend.component.lifecycle-telemetry.v1`. `recordComponentTelemetry(record)` speichert Records lokal; `createTelemetrySnapshot({ componentTelemetry })` kann alternativ explizite Records normalisieren. Beide Pfade decken `mount`, `hydrate`, `render`, `update`, `event`, `unmount` und `error` ab. Die Snapshot-Sektion `componentTelemetry` enthaelt `recordCount`, `operations`, `components`, `lanes`, `statusCounts`, Dauerwerte, Diagnostics und die letzten Records.
343
+
344
+ Backpressure-Signale tragen `xtend.fabric.backpressure-signal.v1`. Fabric erzeugt sie aus Fiber-Fehlern, Deadline-Ueberschreitungen, expliziter `backpressureSignal` Metadata, Component Lifecycle Telemetry und optionalen Snapshot-Inputs.
345
+
346
+ Wenn `createTelemetrySnapshot({ rmtBridge })` eine XTendRMT `createRmtStateSchedulerDiagnosticsBridge` erhaelt, wird der Snapshot automatisch ueber `recordTelemetrySnapshot` an RMT gespiegelt. Dadurch landen `snapshot.backpressure` und die Scheduler-Aktion dauerhaft in `rmt.backpressure.*`, ohne dass Hosts eine eigene Backpressure-API bauen muessen.
347
+
348
+ | Level | Aktion |
349
+ |-------|--------|
350
+ | `none` | `continue` |
351
+ | `low` | `observe` |
352
+ | `medium` | `coalesce-idle-work` |
353
+ | `high` | `defer-background-work` |
354
+ | `critical` | `protect-user-blocking-work` |
355
+
356
+ `publishTelemetrySnapshot` erzeugt die lokale Diagnostic `xtend.fabric.telemetry.snapshot` auf der `diagnostics` Lane. Reporter bleiben opt-in; der Default `noop` sendet nichts extern.
357
+
358
+ Details stehen im Contract [XTend Telemetry Snapshot und Backpressure Contract](../development/XTend-Telemetry-Snapshot-und-Backpressure-Contract.md).
359
+
360
+ Der Component Lifecycle Anschluss ist in [XTend Component Lifecycle Telemetry Contract](../development/XTend-Component-Lifecycle-Telemetry-Contract.md) beschrieben. Der lokale Gate ist:
361
+
362
+ ```bash
363
+ node scripts/run_xtend_tests.js rmt-component-lifecycle-telemetry --json
364
+ ```
365
+
366
+ ## Performance Measurements
367
+
368
+ Ab `ER-WP-18` misst Fabric bekannte Fiber-Kinds automatisch ueber `performance.mark` und `performance.measure`.
369
+
370
+ | Fiber Kind | Measure | Phase |
371
+ |------------|---------|-------|
372
+ | `loader.module` | `xtend.loader.module` | `load` |
373
+ | `component.mount` | `xtend.component.mount` | `mount` |
374
+ | `component.hydrate` | `xtend.component.hydrate` | `hydrate` |
375
+ | `component.render` | `xtend.component.render` | `render` |
376
+ | `component.update` | `xtend.component.update` | `update` |
377
+ | `event.handler` | `xtend.event.handler` | `event` |
378
+ | `route.navigate` | `xtend.route.navigate` | `route` |
379
+ | `route.render` | `xtend.route.render` | `route` |
380
+ | `diagnostics.snapshot` | `xtend.diagnostics.snapshot` | `diagnostics` |
381
+
382
+ `createTelemetrySnapshot()` wandelt Performance Entries mit Prefix `xtend.` in `xtend.performance.measurement.v1` Records um. Die Snapshot-Sektion `performance.phaseSummary` aggregiert unter anderem `load`, `hydrate`, `render` und `route`.
383
+
384
+ ```js
385
+ const snapshot = fabric.createTelemetrySnapshot({
386
+ performance: window.performance
387
+ });
388
+
389
+ console.log(snapshot.performance.measurements);
390
+ console.log(snapshot.performance.phaseSummary.hydrate);
391
+ ```
392
+
393
+ Details stehen in [Performance Measurements](./performance-measurements.md) und im Contract [XTend Performance Messpunkte und Snapshots](../development/XTend-Performance-Messpunkte-und-Snapshots.md).
394
+
395
+ Seit `ER-WP-19` wertet [Performance Regression](./performance-regression.md) diese Measurements ueber lokale deterministische Baselines als `xtend.performance.regression-report.v1` aus.
396
+
397
+ ## Hydration Policies
398
+
399
+ Ab `ER-WP-20` entscheidet `fabric/hydration-policy.js`, ob Component-Hydration sichtbar, idle oder lazy geplant wird:
400
+
401
+ | Policy | Lane | ScheduleRef |
402
+ |--------|------|-------------|
403
+ | `visible` | `visible` | `component.visible.hydrate` |
404
+ | `idle` | `idle` | `component.idle.hydrate` |
405
+ | `lazy` | `idle` | `component.lazy.hydrate` |
406
+
407
+ Nicht sichtbare Hydration darf keine `user-blocking` Lane verwenden. RMT erhaelt nur Schedule-Records; XTend-Ausfuehrung bleibt in Fabric oder Host-Adaptern. Details stehen in [Hydration Policies](./hydration-policies.md).
408
+
409
+ ## RMT Boundary
410
+
411
+ `connectRmtDiagnostics` akzeptiert RMT-nahe Adapter- und Bridge-Outputs, aber importiert keinen RMT Kernel und parst keine `.rmt` Dokumente.
412
+
413
+ Erlaubt:
414
+
415
+ - Adapter Results
416
+ - Bridge Diagnostics
417
+ - Schedule Endpoint Signals
418
+ - Diagnostics Snapshots
419
+
420
+ Nicht erlaubt:
421
+
422
+ - XTendRMT Kernel importieren
423
+ - RMT Scheduler Policies in Fabric umschreiben
424
+ - XTend als Pflicht-Host in RMT etablieren
425
+
426
+ ## RMT Lane Mapping
427
+
428
+ Ab `ER-WP-13` bildet `fabric/rmt-lane-mapping.js` Fabric-Lanes auf RMT Schedule Records ab. Der RMT Kernel bleibt framework-agnostisch: er sieht Schedule Policies und Endpoint-Namen, aber keine XTend-Komponentenlogik.
429
+
430
+ Kurzform:
431
+
432
+ | Fabric-Lane | RMT Schedule Lane |
433
+ |-------------|-------------------|
434
+ | `user-blocking` | `user-blocking` |
435
+ | `a11y` | `user-blocking` |
436
+ | `visible` | `visible` |
437
+ | `transition` | `transition` |
438
+ | `idle` | `idle` |
439
+ | `background` | `background` |
440
+ | `diagnostics` | `diagnostics` |
441
+
442
+ Details, Beispiele und Gates stehen in [XTend-Fabric RMT Lane Mapping](./xtend-fabric-rmt-lane-mapping.md).
443
+
444
+ ## Gates
445
+
446
+ ```bash
447
+ node scripts/run_xtend_tests.js fabric --json
448
+ node scripts/run_xtend_tests.js fabric-lane-mapping --json
449
+ node scripts/run_xtend_tests.js fabric-lifecycle-boundary --json
450
+ node scripts/run_xtend_tests.js fabric-reporters --json
451
+ node scripts/run_xtend_tests.js fabric-runtime-bridge --json
452
+ node scripts/run_xtend_tests.js fabric-component-fibers --json
453
+ node scripts/run_xtend_tests.js fabric-route-fibers --json
454
+ node scripts/run_xtend_tests.js fabric-telemetry-snapshot --json
455
+ node scripts/run_xtend_tests.js fabric-performance-measurements --json
456
+ node scripts/run_xtend_tests.js rmt-component-lifecycle-telemetry --json
457
+ node scripts/run_xtend_tests.js performance-regression --json
458
+ node scripts/run_xtend_tests.js hydration-policy --json
459
+ npm run test:fabric
460
+ npm run test:fabric-lanes
461
+ npm run test:fabric-lifecycle
462
+ npm run test:fabric-reporters
463
+ npm run test:fabric-runtime-bridge
464
+ npm run test:fabric-component-fibers
465
+ npm run test:fabric-route-fibers
466
+ npm run test:fabric-telemetry
467
+ npm run test:fabric-performance
468
+ npm run test:performance
469
+ npm run test:hydration-policy
470
+ node scripts/run_xtend_tests.js references --json
471
+ npm test
472
+ ```
473
+
474
+ `ER-WP-19` ist abgeschlossen. Loader-, Hydration-, Render- und Route-Messpunkte haengen jetzt in der Performance Runtime, in Fabric Telemetry Snapshots und im lokalen Performance Regression Gate.
@@ -0,0 +1,58 @@
1
+ # XTend Loader Types
2
+
3
+ - Contract: `xtend.type-exports.loader-declarations.v1`
4
+ - Workpackage: `WP-TypeExports-02`
5
+ - Gate: `node scripts/run_xtend_tests.js type-exports-loader --json`
6
+ - Report: `.xtend-test-results/xtend-type-exports-loader-report.json`
7
+ - Declarations: `xtend-loader.d.ts`, `xtend-dev.d.ts`
8
+
9
+ ## Zweck
10
+
11
+ `xtend-loader.d.ts` beschreibt die offizielle Loader-Oberflaeche fuer App-Shells, dynamische Hydration und framework-native Skeleton-/Style-Hilfen. Die Runtime bleibt `xtend-loader.js`; die Declaration fuegt keine neue Runtime-Abhaengigkeit ein.
12
+
13
+ ## Globale APIs
14
+
15
+ | Global | Typ |
16
+ | --- | --- |
17
+ | `window.XTendLoader` | `XTendLoaderApi` |
18
+ | `window.XTendStyleRegistry` | `XTendStyleRegistryApi` |
19
+ | `window.XTendSkeletonLoader` | `XTendSkeletonLoaderApi` |
20
+ | `window.__XTendLoaderBootPromise` | `Promise<XTendLoaderBootResult>` |
21
+
22
+ ## Wichtige Methoden
23
+
24
+ | API | Methoden |
25
+ | --- | --- |
26
+ | `XTendLoaderApi` | `ensureComponent`, `hydrateTree`, `showSkeleton`, `hideSkeleton`, `ensureRuntimeStyles`, `defineComponentStyle`, `adoptStyle`, `initiateXTend` |
27
+ | `XTendStyleRegistryApi` | `ensureRuntimeStyles`, `ensureDocumentStyle`, `defineComponentStyle`, `adopt`, `adoptStyle`, `get`, `getThemeStylesheetState`, `list` |
28
+ | `XTendSkeletonLoaderApi` | `create`, `show`, `hide` |
29
+
30
+ ## Events
31
+
32
+ `WindowEventMap` enthaelt typisierte Loader-Events:
33
+
34
+ - `xtend-loader-diagnostic` mit `XTendLoaderDiagnosticDetail`
35
+ - `xtend-loader-performance` mit `XTendLoaderPerformanceDetail`
36
+ - `xtend-loader-tree-hydrated` mit `XTendHydrateTreeDetail`
37
+
38
+ ## Package Exports
39
+
40
+ Die Package-Exports `.`, `./loader` und `./legacy-loader` besitzen ab diesem Run `types`-Conditions:
41
+
42
+ | Export | Types |
43
+ | --- | --- |
44
+ | `.` | `./xtend-loader.d.ts` |
45
+ | `./loader` | `./xtend-loader.d.ts` |
46
+ | `./legacy-loader` | `./xtend-dev.d.ts` |
47
+
48
+ `xtend.css` bleibt optionales Theme-Artefakt. Kurz: xtend.css bleibt optional. Loader-Typen beschreiben `xtend.css` nur als optional erkannte Standard-Stylesheet-Datei und haengen nicht von einer externen CSS-Datei ab.
49
+
50
+ ## Drift Gate
51
+
52
+ Der Gate `type-exports-loader` prueft:
53
+
54
+ - Declaration-Dateien existieren und sind im Package enthalten.
55
+ - Package `types`-Conditions zeigen auf die Loader-Declarations.
56
+ - Runtime-Methoden in `XTendLoader`, `XTendStyleRegistry` und `XTendSkeletonLoader` sind in den Declarations sichtbar.
57
+ - Loader Events sind in `WindowEventMap` typisiert.
58
+ - `xtend-loader.js` importiert keine `.d.ts` Datei und der Bootpfad bleibt unveraendert.