@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,234 @@
1
+ # RMT Language Server und Editor Setup
2
+
3
+ - Status: produktiv vorbereitet ab `WP-E14-14`
4
+ - Contract: `xtend.rmt.editor-packaging.v1`
5
+ - Language Server: `xtend.rmt.language-server.v1`
6
+ - Snippet Catalog: `xtend.rmt.snippet-catalog.v1`
7
+ - Epic 14 Handoff: `xtend.epic14.lsp-handoff.v1`
8
+ - Primaerer Dateityp: `.rmt`
9
+ - Lokale Gates:
10
+ - `node scripts/run_xtend_tests.js rmt-editor-packaging --json`
11
+ - `node scripts/run_xtend_tests.js rmt-tooling-docs --json`
12
+ - `node scripts/run_xtend_tests.js epic14-lsp-handoff --json`
13
+
14
+ ## Ziel
15
+
16
+ Das RMT Tooling ist editor-agnostisch. Die fachliche Source of Truth liegt in:
17
+
18
+ - `tools/rmt-language`
19
+ - `tools/rmt-linter`
20
+ - `tools/rmt-language-server`
21
+
22
+ Editor-Packages duerfen Snippets, Syntax-Highlighting und Startbefehle fuer den LSP bereitstellen. Sie duerfen keine zweite RMT-Semantik implementieren.
23
+
24
+ ## Language Server starten
25
+
26
+ Der Server spricht stdio JSON-RPC:
27
+
28
+ ```bash
29
+ node tools/rmt-language-server/server.js
30
+ ```
31
+
32
+ Der Server bietet aktuell:
33
+
34
+ - Diagnostics
35
+ - Completion
36
+ - Hover
37
+ - Document Symbols
38
+ - Definition
39
+ - Code Actions
40
+
41
+ Der LSP nutzt denselben Diagnosekern wie `xt rmt lint`. Editor-Integrationen sollen deshalb keine eigenen RMT-Regeln pflegen.
42
+
43
+ ## LSP Capability Matrix
44
+
45
+ | Capability | Protokoll / Oberflaeche | Status | Source of Truth | Gate |
46
+ |------------|--------------------------|--------|-----------------|------|
47
+ | Diagnostics | `textDocument/publishDiagnostics` | implemented | `xtend.rmt.linter.rule-engine.v1` | `rmt-linter-rules` |
48
+ | Completion | `textDocument/completion` | implemented | `xtend.rmt.completion-provider.v1` | `rmt-completions` |
49
+ | Hover | `textDocument/hover` | implemented | `xtend.rmt.hover-provider.v1` | `rmt-navigation` |
50
+ | Document Symbols | `textDocument/documentSymbol` | implemented | `xtend.rmt.document-symbols-provider.v1` | `rmt-navigation` |
51
+ | Definition | `textDocument/definition` | implemented | `xtend.rmt.definition-provider.v1` | `rmt-navigation` |
52
+ | Code Actions | `textDocument/codeAction` | implemented | `xtend.rmt.code-action-provider.v1` | `rmt-code-actions` |
53
+ | Agent Repair Report | `xt rmt lint --agent` | implemented | `xtend.rmt.ai-agent-repair-report.v1` | `rmt-agent-report` |
54
+ | Snippets | Editor Packaging | implemented | `xtend.rmt.snippet-catalog.v1` | `rmt-editor-packaging` |
55
+ | Workspace Symbols | `workspace/symbol` | planned | Project Index Follow-up | future |
56
+ | Rename | `textDocument/rename` | planned | Safe Refactor Follow-up | future |
57
+ | References | `textDocument/references` | planned | Project Index Follow-up | future |
58
+ | Semantic Tokens | `textDocument/semanticTokens` | planned | Syntax Highlighting Follow-up | future |
59
+ | Formatting | `textDocument/formatting` | planned | Formatter Follow-up | future |
60
+
61
+ ## Known Limitations
62
+
63
+ - RMT ist im aktuellen Authoring-MVP weiter JSON-basiert. Eine freundlichere DSL-Syntax ist Folgearbeit.
64
+ - `textDocument/formatting` ist geplant, aber nicht produktiv freigegeben.
65
+ - `workspace/symbol`, `textDocument/rename` und `textDocument/references` brauchen einen projektweiten Index und bleiben bewusst ausserhalb des MVP.
66
+ - Marketplace-Packaging fuer einzelne Editoren ist nicht Teil von Epic 14. Die generischen LSP-Setups bleiben der aktuelle Integrationspfad.
67
+ - Der Language Server fuehrt keine XTend-Komponenten aus, startet keinen XRouter und materialisiert kein DOM.
68
+ - `.rmt.json` bleibt lesbar, wird aber als Fallback behandelt und soll in neuen Projekten nicht der Normalpfad sein.
69
+
70
+ ## Snippets
71
+
72
+ Der editor-agnostische Snippet-Katalog liegt in:
73
+
74
+ ```text
75
+ tools/rmt-language/snippets/index.js
76
+ ```
77
+
78
+ Das VS-Code-kompatible Exportformat liegt in:
79
+
80
+ ```text
81
+ tools/rmt-language/snippets/rmt.code-snippets
82
+ ```
83
+
84
+ Alle Snippets erzeugen native `.rmt` Authoring-Strukturen. `.rmt.json` bleibt nur ein Parser-/Linter-Fallback und soll in neuen Snippets nicht genutzt werden.
85
+
86
+ Wichtige Prefixes:
87
+
88
+ | Prefix | Zweck |
89
+ |--------|-------|
90
+ | `rmt-app` | minimale native App-Shell |
91
+ | `rmt-component` | XTend Component Record |
92
+ | `rmt-route` | XRouter Route Record |
93
+ | `rmt-schedule` | Schedule Policy |
94
+ | `rmt-template-dom` | sicheres `dom_descriptor` Template |
95
+ | `rmt-template-html` | `html_fragment` mit Trusted-DOM-Boundary |
96
+
97
+ ## VS Code
98
+
99
+ Die VS-Code-Integration liegt in:
100
+
101
+ ```text
102
+ tools/rmt-editor/vscode
103
+ ```
104
+
105
+ Es registriert:
106
+
107
+ - Language ID `rmt`
108
+ - Dateiendung `.rmt`
109
+ - RMT-vNext-aware TextMate-Grammatik mit Legacy-JSON-Fallback
110
+ - RMT Snippets
111
+ - `vscode-languageclient` fuer den lokalen RMT Language Server
112
+ - `$xtend-rmt-lint` Problem Matcher
113
+ - XTend CLI Tasks und Debug-Console-Launch-Konfigurationen
114
+ - Command `XTendRMT: Show Language Server Command`
115
+ - Command `XTendRMT: Start/Restart Language Server`
116
+ - Command `XTendRMT: Run Active RMT Lint`
117
+ - Command `XTendRMT: Run Workspace RMT Lint`
118
+ - Command `XTendRMT: Run RMT Build Check`
119
+ - Command `XTendRMT: Run Scaffold Verify`
120
+ - Command `XTendRMT: Debug Language Server`
121
+ - Command `XTendRMT: Debug Active RMT Lint`
122
+ - Command `XTendRMT: Debug Active RMT Build`
123
+ - Command `XTendRMT: Open XTend CLI Terminal`
124
+ - Command `XTendRMT: Run XTend CLI Command...`
125
+ - Command `XTendRMT: Run Agent Repair Report`
126
+ - Command `XTendRMT: Run RMT Build Write`
127
+ - Command `XTendRMT: Open VS Code Tasks Template`
128
+ - Command `XTendRMT: Open VS Code Launch Template`
129
+ - Command `XTendRMT: Show vNext Primitive Apply Experience`
130
+ - Command `XTendRMT: Show vNext Primitive Code Action Preview`
131
+ - Command `XTendRMT: Show vNext Primitive Command Handoff`
132
+
133
+ Der gepackte LanguageClient startet den Server per stdio:
134
+
135
+ ```json
136
+ {
137
+ "command": "node",
138
+ "args": ["tools/rmt-language-server/server.js"]
139
+ }
140
+ ```
141
+
142
+ Terminal-Tasks nutzen die XTend CLI als Orchestrator und pflegen keine eigene
143
+ RMT-Semantik. Die Extension sucht die CLI im Workspace zuerst unter
144
+ `xtend-builder/scaffold.js`, danach unter `node_modules/.bin/xt` und danach
145
+ unter `node_modules/@ccslabs/xtend-cli/scaffold.js`. Falls ein Projekt anders
146
+ aufgebaut ist, kann `xtendRmt.xtendCli.path` explizit auf ein Executable oder
147
+ eine `scaffold.js` zeigen. Die versionierte Vorlage liegt unter:
148
+
149
+ ```text
150
+ tools/rmt-editor/vscode/templates/tasks.json
151
+ ```
152
+
153
+ Der Problem Matcher konsumiert die stabile Linter-Ausgabe:
154
+
155
+ ```bash
156
+ xt rmt lint app.rmt --format problem-matcher --fail-on warning
157
+ ```
158
+
159
+ Die Launch-Vorlage fuer die Debug Console liegt unter:
160
+
161
+ ```text
162
+ tools/rmt-editor/vscode/templates/launch.json
163
+ ```
164
+
165
+ Sie enthaelt Debug-Starts fuer Language Server, aktiven RMT Lint, aktiven RMT
166
+ Build und Scaffold Verify. Das ist Tool-Debugging fuer Authoring-Workflows; ein
167
+ eigener Debug Adapter fuer ausgefuehrte RMT-UI-Breakpoints bleibt bewusst
168
+ ausserhalb dieses Slices.
169
+
170
+ Die vNext-Primitive-Commands lesen CodeAction-Reports oder einzelne Actions
171
+ aus der RMT-vNext-Tooling-Schicht und zeigen die drei Apply-Pfade getrennt im
172
+ Output Channel:
173
+
174
+ - sichere einzelne Quick-Fixes;
175
+ - `source.fixAll.rmt.vnext.primitives` fuer alle sicheren WorkspaceEdits;
176
+ - manuelle `xtend.rmt.vnext.extractKernelImport` Handoffs fuer Kernel-/Fabric-
177
+ Boundary-Verletzungen ohne automatischen WorkspaceEdit.
178
+
179
+ ## JetBrains
180
+
181
+ JetBrains-IDEs koennen ueber einen generischen LSP-Client oder ein lokales File-Watcher-/External-Tool-Setup angebunden werden.
182
+
183
+ Empfohlene Werte:
184
+
185
+ - Language ID: `rmt`
186
+ - Extension: `.rmt`
187
+ - Command: `node`
188
+ - Args: `tools/rmt-language-server/server.js`
189
+
190
+ ## Neovim
191
+
192
+ Minimaler `nvim-lspconfig`-kompatibler Startpunkt:
193
+
194
+ ```lua
195
+ local lspconfig = require('lspconfig')
196
+ local configs = require('lspconfig.configs')
197
+
198
+ configs.xtendrmt = {
199
+ default_config = {
200
+ cmd = { 'node', 'tools/rmt-language-server/server.js' },
201
+ filetypes = { 'rmt' },
202
+ root_dir = lspconfig.util.root_pattern('package.json', '.git')
203
+ }
204
+ }
205
+
206
+ lspconfig.xtendrmt.setup({})
207
+ ```
208
+
209
+ ## Helix
210
+
211
+ Beispiel fuer `languages.toml`:
212
+
213
+ ```toml
214
+ [[language]]
215
+ name = "rmt"
216
+ scope = "source.rmt"
217
+ file-types = ["rmt"]
218
+ language-servers = ["xtendrmt"]
219
+
220
+ [language-server.xtendrmt]
221
+ command = "node"
222
+ args = ["tools/rmt-language-server/server.js"]
223
+ ```
224
+
225
+ ## Boundary
226
+
227
+ Das Editor-Packaging darf keine XTend-Komponenten ausfuehren, keinen XRouter starten und keine DOM-Seiteneffekte erzeugen. Es startet nur den LSP und stellt statische Snippets bereit.
228
+
229
+ ## Verwandte Guides
230
+
231
+ - [RMT Linter und AI-Agent Repair Report](./rmt-linter.md)
232
+ - [XTendRMT Native Authoring Guide](./xtendrmt-native-authoring.md)
233
+ - [Quick Start Guide](./quick-start-guide.md)
234
+ - [Epic 14 Abschluss und LSP Handoff](../development/XTendRMT-Epic14-Abschluss-und-LSP-Handoff.md)
@@ -0,0 +1,24 @@
1
+ # RMT Lifecycle Demo
2
+
3
+ Contract: `xtend.rmt.lifecycle-demo.v1`
4
+
5
+ Die Lifecycle-Demo zeigt den kompletten Pfad von RMT Authoring bis zur
6
+ oeffnbaren XTend App:
7
+
8
+ 1. `xtendrmt/rmt-lifecycle-demo.rmt` ist das RMT vNext Template.
9
+ 2. `node xtend-builder/scaffold.js rmt-lifecycle-demo --write --json` kompiliert
10
+ das Template in `xtendrmt/rmt-lifecycle-demo.core.json`.
11
+ 3. Derselbe Scaffold-Build schreibt die generierten Artefakte:
12
+ `components/x-rmt-lifecycle-demo.js`,
13
+ `xtendrmt/rmt-lifecycle-demo.app.js`,
14
+ `tests/browser/fixtures/rmt-lifecycle-demo-smoke.html`.
15
+ 4. Die App kann ueber den lokalen HTTP-Server geoeffnet werden:
16
+ `node scripts/serve_xtend_dev.js --default tests/browser/fixtures/rmt-lifecycle-demo-smoke.html`.
17
+
18
+ Der Build-Report liegt in `xtendrmt/rmt-lifecycle-demo.scaffold.json`. Er
19
+ haelt Source, Core Output, generierte XTend App, Browser-Smoke und den lokalen
20
+ Gate `node scripts/run_xtend_tests.js rmt-lifecycle-demo --json` zusammen.
21
+
22
+ Die generierten Dateien sind absichtlich mit `@generated by XTend Scaffold RMT
23
+ lifecycle build` markiert. Aenderungen sollen am vNext Template oder am
24
+ Scaffold-Generator erfolgen, nicht direkt an den generierten Artefakten.
@@ -0,0 +1,140 @@
1
+ # RMT Linter und AI-Agent Repair Report
2
+
3
+ - Status: produktiv vorbereitet ab `WP-E14-14`
4
+ - Contract: `xtend.rmt.tooling-docs.v1`
5
+ - Linter Report: `xtend.rmt.linter.report.v1`
6
+ - Agent Report: `xtend.rmt.ai-agent-repair-report.v1`
7
+ - Primaerer Dateityp: `.rmt`
8
+ - Lokaler Gate: `node scripts/run_xtend_tests.js rmt-tooling-docs --json`
9
+
10
+ ## Zweck
11
+
12
+ Der RMT Linter macht native `.rmt` Dokumente lokal, in CI und fuer AI-Agenten pruefbar. Er nutzt dieselbe Sprachebene wie der RMT Language Server:
13
+
14
+ - Source Model
15
+ - Parser und Format Adapter
16
+ - Semantic Graph
17
+ - Linter Rules
18
+ - Code Actions
19
+ - Agent Repair Report
20
+
21
+ Der Linter fuehrt keine XTend-Komponenten aus, startet keinen XRouter und materialisiert kein DOM. Er analysiert RMT als Sprache.
22
+
23
+ ## Standardbefehl
24
+
25
+ ```bash
26
+ xt rmt lint app.rmt
27
+ ```
28
+
29
+ Der Langpfad bleibt ebenfalls gueltig:
30
+
31
+ ```bash
32
+ xtend rmt lint app.rmt
33
+ ```
34
+
35
+ Directory- und einfache Glob-Targets sind moeglich:
36
+
37
+ ```bash
38
+ xt rmt lint tests/rmt-language/fixtures
39
+ xt rmt lint "tests/rmt-language/fixtures/*.rmt" --json
40
+ ```
41
+
42
+ ## JSON Report
43
+
44
+ ```bash
45
+ xt rmt lint app.rmt --json
46
+ ```
47
+
48
+ Der Report ist fuer CI und andere Tools gedacht:
49
+
50
+ ```json
51
+ {
52
+ "schema": "xtend.rmt.linter.report.v1",
53
+ "status": "failed",
54
+ "files": 1,
55
+ "diagnostics": []
56
+ }
57
+ ```
58
+
59
+ ## Fail Policy
60
+
61
+ Standard ist `--fail-on error`. Warnungen brechen den lokalen Lauf dann nicht ab.
62
+
63
+ ```bash
64
+ xt rmt lint app.rmt --fail-on warning
65
+ xt rmt lint app.rmt --fail-on info
66
+ ```
67
+
68
+ Damit kann CI strenger laufen als lokale Authoring-Loops.
69
+
70
+ ## Agent Report
71
+
72
+ AI-Agenten nutzen den Repair Report:
73
+
74
+ ```bash
75
+ xt rmt lint app.rmt --agent
76
+ ```
77
+
78
+ `--agent` impliziert JSON und liefert:
79
+
80
+ - `diagnostics`
81
+ - `repairPlan`
82
+ - `fixOrder`
83
+ - `noOps`
84
+ - `confidence`
85
+ - `impact`
86
+ - `relatedDiagnostics`
87
+
88
+ Nicht sicher automatisierbare Diagnosen werden bewusst als No-Op erklaert. Beispiele sind Syntax-Recovery, Inline-Script-Entfernung oder Component-Stubs, die Authoring-Kontext brauchen.
89
+
90
+ ## Diagnosecodes
91
+
92
+ Wichtige Codes:
93
+
94
+ | Code | Bedeutung |
95
+ |------|-----------|
96
+ | `rmt.syntax.invalid-json` | Das Dokument ist syntaktisch nicht parsebar |
97
+ | `rmt.document.extension.fallback-used` | `.rmt.json` oder `.json` wird nur als Fallback genutzt |
98
+ | `rmt.document.kind.missing` | `kind: "rmt_document"` fehlt |
99
+ | `rmt.adapter.unknown` | Adapter-Referenz ist nicht definiert |
100
+ | `rmt.ref.component.unresolved` | Component-Referenz ist nicht aufloesbar |
101
+ | `rmt.ref.template.unresolved` | Template-Referenz ist nicht aufloesbar |
102
+ | `rmt.ref.schedule.unresolved` | Schedule-Referenz ist nicht aufloesbar |
103
+ | `rmt.ref.route.duplicate-path` | Route Path ist mehrfach definiert |
104
+ | `rmt.fabric.lane.unknown` | Fabric/RMT Lane ist nicht bekannt |
105
+ | `rmt.template.inline-script.refused` | Inline Script verletzt den Trusted-DOM-/Kernel-Boundary |
106
+
107
+ ## Quick Fixes
108
+
109
+ Sichere Reparaturen kommen aus `xtend.rmt.code-action-provider.v1`.
110
+
111
+ Der MVP unterstuetzt:
112
+
113
+ - fehlende Schedules anlegen
114
+ - fehlende Templates als `dom_descriptor` Stub anlegen
115
+ - unbekannte Fabric Lanes auf `visible` setzen
116
+ - unbekannte Hydration Policies auf `runtime_render` setzen
117
+ - fehlende Route `documentTitle` ergaenzen
118
+ - fehlende Schedule `endpointName` ergaenzen
119
+ - `.rmt.json` per Command nach `.rmt` umbenennen
120
+
121
+ ## Regression Gate
122
+
123
+ Die Tooling-Matrix liegt in:
124
+
125
+ ```bash
126
+ node scripts/run_xtend_tests.js rmt-language-regression --json
127
+ ```
128
+
129
+ Dieser Gate prueft valide, defekte, Legacy- und groessere RMT-Dokumente ueber Parser, Linter, CLI, LSP und Agent Report hinweg.
130
+
131
+ ## Editor Workflow
132
+
133
+ Fuer IDEs siehe [RMT Language Server und Editor Setup](./rmt-language-server.md).
134
+
135
+ Empfohlener Ablauf:
136
+
137
+ 1. Neues Dokument mit `rmt-app` Snippet erzeugen.
138
+ 2. In der IDE Diagnostics und Completion nutzen.
139
+ 3. Lokal mit `xt rmt lint app.rmt` pruefen.
140
+ 4. Fuer Agenten oder CI `xt rmt lint app.rmt --agent` nutzen.
@@ -0,0 +1,100 @@
1
+ # RMT Node SSR Adapter
2
+
3
+ Der Node SSR Adapter ist die leichtgewichtige serverseitige API fuer XTendRMT.
4
+ Er erzeugt Light-DOM-HTML fuer XTend Custom Elements, Hydration-Payloads im
5
+ RenderMan-kompatiblen Format und optional JSONL-Streaming fuer inkrementelle
6
+ UI-Komponenten.
7
+
8
+ Schema: `xtend.rmt.node-ssr-adapter.v1`
9
+
10
+ ```js
11
+ import {
12
+ createRmtNodeSsrAdapter
13
+ } from '@ccslabs/xtend/rmt/node-ssr-adapter';
14
+ ```
15
+
16
+ Im Runtime-Paket steht dieselbe API ueber
17
+ `@ccslabs/xtend-rmt/node-ssr-adapter` bereit.
18
+
19
+ Fuer PHP/Laravel-Hosts stellt der
20
+ [RMT PHP/Laravel SSR Adapter](./rmt-php-ssr-adapter.md) denselben
21
+ Client-Wire-Contract bereit: HTML, Hydration, RenderMan-Chunks und JSONL-
22
+ Frames bleiben kompatibel.
23
+
24
+ ## Architektur
25
+
26
+ Der Adapter ist Host-Schicht, nicht neuer Renderer. RMT vNext beschreibt
27
+ Source, State, Selectors, Actions, Events, Surfaces und Streams. Der Compiler
28
+ erzeugt Core-/Kernel-Records. Die Component Capability Registry beschreibt
29
+ alle XTend-Komponenten generisch. Der Node Adapter serialisiert daraus sichere
30
+ serverseitige Startausgabe.
31
+
32
+ Er instanziiert keine Custom Elements auf dem Server, greift nicht auf private
33
+ Component-Interna zu, startet keinen HTTP-Server und verwendet keinen
34
+ impliziten globalen Netzwerkzugriff.
35
+
36
+ ## API
37
+
38
+ ```js
39
+ const adapter = createRmtNodeSsrAdapter({
40
+ manifest,
41
+ sourceTexts,
42
+ endpointHandlers: {
43
+ 'ssr.hero': () => ({
44
+ html: '<x-hero>Hero</x-hero>',
45
+ trustBoundary: 'xtend.security.sanitizing-boundary.v1'
46
+ })
47
+ }
48
+ });
49
+
50
+ const result = await adapter.render({
51
+ source,
52
+ filePath: 'app.rmt'
53
+ });
54
+ ```
55
+
56
+ `render` akzeptiert RMT Source, Core Documents, Prepared Templates und DOM
57
+ Descriptoren. Im Vollpaket wird Source automatisch ueber den vNext Compiler
58
+ kompiliert. Runtime-only Hosts injizieren `compileRmtVNextSource`; fehlt diese
59
+ Funktion, entsteht `rmt.node_ssr.compiler_required`.
60
+
61
+ ## Ausgabe
62
+
63
+ `xtend.rmt.node-ssr-render-result.v1` enthaelt:
64
+
65
+ - `html`
66
+ - `head.preloads`
67
+ - `renderman_template_chunk`
68
+ - `server_prerender_hydrate` Hydration-Daten
69
+ - `xtend.rmt.vnext-streaming-contract.v1`
70
+ - Component Capability Marker
71
+ - Diagnostics
72
+
73
+ ## JSONL Streaming
74
+
75
+ `streamJsonl` liefert Frames mit
76
+ `xtend.rmt.node-ssr-jsonl-frame.v1`. Wichtige Frame-Typen sind `start`,
77
+ `component`, `html`, `hydration`, `diagnostic`, `complete` und `error`.
78
+
79
+ Die Streaming-Capabilities bleiben kompatibel mit RMT vNext:
80
+
81
+ - `stream.ssr.incremental`
82
+ - `stream.hydration.chunked`
83
+
84
+ ## DataSources und Security
85
+
86
+ DataSources werden nur ueber explizite Host-Resolver verarbeitet:
87
+ `resolveDataSource`, `endpointHandlers`, `staticDataSources`, `fixtures` oder
88
+ `fetchAdapter`. Fehlende Resolver melden `rmt.node_ssr.datasource_missing`.
89
+
90
+ HTML-Fragmente brauchen eine Trust Boundary wie
91
+ `xtend.security.sanitizing-boundary.v1` oder
92
+ `xtend.security.streaming-boundary.v1`. Unsichere URLs, Event-Attribute,
93
+ `srcdoc` und blockierte Tags werden diagnostiziert und bereinigt.
94
+
95
+ ## Gate
96
+
97
+ ```bash
98
+ npm run test:rmt-node-ssr-adapter
99
+ node scripts/run_xtend_tests.js rmt-node-ssr-adapter --json
100
+ ```
@@ -0,0 +1,120 @@
1
+ # RMT PHP/Laravel SSR Adapter
2
+
3
+ Der PHP SSR Adapter ist die Laravel-kompatible Host-Schicht fuer RMT vNext.
4
+ Er liegt als portables Single-File-Modul unter
5
+ `xtendrmt/rmt-php-ssr-adapter.php`, benoetigt PHP 8.1+ und kommt in dieser
6
+ ersten Welle ohne Composer-Package und ohne Service Provider aus.
7
+
8
+ Schema: `xtend.rmt.php-ssr-adapter.v1`
9
+
10
+ Der Adapter ist auf Client-Wire-Ebene mit dem
11
+ [RMT Node SSR Adapter](./rmt-node-ssr-adapter.md) austauschbar. HTML,
12
+ Hydration, RenderMan-Chunks und JSONL-Frames nutzen dieselben Schemas:
13
+ `xtend.rmt.node-ssr-render-result.v1`,
14
+ `xtend.rmt.node-ssr-hydration-payload.v1` und
15
+ `xtend.rmt.node-ssr-jsonl-frame.v1`.
16
+
17
+ ## Rolle im Stack
18
+
19
+ RMT beschreibt die App. XTend Components bleiben die UI-Bausteine. Der PHP
20
+ Adapter serialisiert serverseitiges Light DOM, Capability-Marker,
21
+ Lazy-Import-Hints und Hydration-Payloads, ohne Custom Elements auf dem Server
22
+ zu instanziieren.
23
+
24
+ Keine Parallelstruktur:
25
+
26
+ - kein Shadow-DOM-Rendering auf dem Server
27
+ - keine privaten Component-Maps
28
+ - kein Docs-App-Sonderpfad
29
+ - kein eingebauter PHP-RMT-Compiler
30
+ - kein impliziter Netzwerkzugriff
31
+ - keine HTML-Ausgabe ohne Trust Boundary
32
+
33
+ ## Public API
34
+
35
+ ```php
36
+ require __DIR__ . '/xtendrmt/rmt-php-ssr-adapter.php';
37
+
38
+ $adapter = createRmtPhpSsrAdapter([
39
+ 'manifest' => $manifest,
40
+ 'endpointHandlers' => [
41
+ 'ssr.hero' => fn () => [
42
+ 'html' => '<x-hero>Hero</x-hero>',
43
+ 'trustBoundary' => 'xtend.security.sanitizing-boundary.v1',
44
+ ],
45
+ ],
46
+ ]);
47
+
48
+ $result = $adapter->render(['coreDocument' => $coreDocument]);
49
+ ```
50
+
51
+ `render(...)` verarbeitet Core Documents, Prepared Templates und DOM
52
+ Descriptoren direkt. `.rmt` Source braucht eine injizierte
53
+ `compileRmtVNextSource`-Bridge. Ohne Bridge entsteht die blockierende Diagnose
54
+ `rmt.php_ssr.compiler_required`.
55
+
56
+ ## Laravel Helpers
57
+
58
+ ```php
59
+ return $adapter->toLaravelResponse($result);
60
+
61
+ return $adapter->toLaravelStreamedResponse([
62
+ 'coreDocument' => $coreDocument,
63
+ ]);
64
+ ```
65
+
66
+ Wenn Laravel/Symfony Response-Klassen vorhanden sind, nutzt der Adapter diese
67
+ direkt. Ohne Framework gibt er Arrays zurueck. Damit bleibt die Datei in
68
+ Laravel, kleinen PHP-Hosts und Tests nutzbar.
69
+
70
+ ## JSONL Streaming
71
+
72
+ `streamJsonl(...)` liefert newline-delimited JSON mit
73
+ `xtend.rmt.node-ssr-jsonl-frame.v1`. Unterstuetzte Frames sind `start`,
74
+ `component`, `html`, `hydration`, `diagnostic`, `complete` und `error`.
75
+
76
+ Die Frames tragen dieselben Felder wie der Node Adapter: `requestId`,
77
+ `sequence`, `operationId`, `variant`, `capability`, `lane`, `chunkKey`,
78
+ `payload` und `diagnostics`. Dadurch muss die XTend Browser-Runtime nicht
79
+ wissen, ob Node oder PHP/Laravel das Backend ist.
80
+
81
+ ## DataSources und Trust Boundaries
82
+
83
+ Serverdaten kommen nur ueber explizite Host-Hooks:
84
+
85
+ - `resolveDataSource`
86
+ - `endpointHandlers`
87
+ - `staticDataSources`
88
+ - `fixtures`
89
+ - `fetchAdapter`
90
+ - `laravelContainerResolver`
91
+
92
+ HTML-Fragmente muessen eine Boundary wie
93
+ `xtend.security.sanitizing-boundary.v1` oder
94
+ `xtend.security.streaming-boundary.v1` tragen. Unsichere URLs,
95
+ Event-Attribute, `srcdoc` und blockierte Tags werden diagnostiziert und vom
96
+ Fallback-Sanitizer entfernt. Produktive Hosts koennen `sanitizeHtmlOutput`
97
+ injizieren.
98
+
99
+ ## Docs-App Integration
100
+
101
+ Die Docs-App nutzt den Adapter nun direkt in `docs/index.php` fuer
102
+ Shell-first-Prehydration.
103
+
104
+ - Contract: `xtend.docs.php-ssr-prehydration.v1`
105
+ - vNext Source: `docs/xtendrmt-docs-shell-vnext.rmt`
106
+ - Compiler-Bridge: `scripts/compile_rmt_vnext_bridge.js`
107
+ - JSONL Endpoint:
108
+ `index.php?xtend-docs-rmt-ssr=shell&format=jsonl&page={slug}&locale={locale}`
109
+
110
+ Der Host injiziert `compileRmtVNextSource` ueber die Node-Bridge. Parsedown
111
+ bleibt Host-Boundary und fuellt nur den Content-Slot, waehrend die Shell aus
112
+ RMT-Primitives, Hydration und RenderMan-Chunks kommt.
113
+
114
+ ## Gates
115
+
116
+ ```bash
117
+ npm run test:rmt-php-ssr-adapter
118
+ npm run test:docs-php-ssr-prehydration
119
+ node scripts/run_xtend_tests.js rmt-php-ssr-adapter --json
120
+ ```
@@ -0,0 +1,63 @@
1
+ # RMT Production Readiness
2
+
3
+ - Contract: `xtend.epic13.rmt-production-readiness.v1`
4
+ - Report: `xtend.epic13.rmt-production-readiness-report.v1`
5
+ - Workpackage: `WP-E13-09`
6
+ - Lokaler Gate: `node scripts/run_xtend_tests.js epic13-rmt-production-readiness --json`
7
+ - Package Script: `npm run test:epic13-rmt-production-readiness`
8
+ - Publish Boundary: `private-until-release-owner-acceptance`
9
+
10
+ ## Zweck
11
+
12
+ `WP-E13-09` buendelt den RMT-first App-Pfad fuer RC1. Das Paket fuehrt die bereits vorhandenen RMT-Gates zu einem produktionsnahen Schnitt zusammen: Shell-first App Shell, native RMT-Routen, XTend-Komponenten ueber Adapter, Fabric/Lane-Ingestion, Lifecycle Telemetry, Diagnostics und XTendRMT Artifact Parity.
13
+
14
+ Das Bundle fuegt keine neuen App-Features hinzu. Es macht sichtbar, dass XTend Apps vollstaendig in RMT templated werden koennen, waehrend der RMT Kernel framework-agnostisch bleibt.
15
+
16
+ ## Source Gates
17
+
18
+ ```bash
19
+ npm run test:rmt-compatibility
20
+ npm run test:rmt-first-class-app
21
+ npm run test:rmt-first-demo-app
22
+ npm run test:rmt-artifact-parity
23
+ npm run test:rmt-component-fabric-ingestion
24
+ npm run test:rmt-component-lifecycle-telemetry
25
+ npm run test:epic13-visual-owner-artifact
26
+ ```
27
+
28
+ Der lokale WP09-Gate prueft diese Source Gates als statisches RC1-Bundle. Er fuehrt keine Netzwerkzugriffe und keinen externen Browser voraus.
29
+
30
+ ## Readiness-Domains
31
+
32
+ | Domain | Evidence |
33
+ | --- | --- |
34
+ | Shell-first App Shell | `tests/fixtures/rmt-first-class-xtend-app.rmt`, `xtendrmt/rmt-first-demo-app.rmt` |
35
+ | Routing | `xtend.xrouter` Adapter und RMT `routes` Records |
36
+ | Components | `xtend.component` Adapter und RMT `components` Records |
37
+ | Fabric/Lane | `xtend.component.fabric-lane-ingestion.v2` |
38
+ | Lifecycle Telemetry | `xtend.component.lifecycle-telemetry.v1` |
39
+ | Diagnostics | `rmt.state-scheduler-diagnostics` und Fabric Snapshots |
40
+ | Artifact Parity | `xtend.rmt.artifact-parity.v1` |
41
+ | Kernel Boundary | `no-rmt-kernel-import-of-xtend-types` |
42
+
43
+ ## Boundary
44
+
45
+ RMT besitzt App Records, Routes, Schedules, Templates und Metadata. XTend-Ausfuehrung bleibt in Host-Adaptern:
46
+
47
+ - XTend-Komponenten werden nicht in den RMT Kernel importiert.
48
+ - XRouter wird ueber `xtend.xrouter` angeschlossen.
49
+ - Fabric/Lane- und Telemetry-Signale werden ingestiert, aber nicht als harte Kernel-Abhaengigkeit modelliert.
50
+ - React-, Vue-, Vanilla- und Custom-Hosts koennen eigene Adapter verwenden.
51
+
52
+ ## Referenzen
53
+
54
+ - [RMT-first XTend Apps](./rmt-first-xtend-apps.md)
55
+ - [RMT-first Demo-App](./rmt-first-demo-app.md)
56
+ - [XTendRMT App-DSL](./xtendrmt-app-dsl.md)
57
+ - [XTendRMT Native Authoring](./xtendrmt-native-authoring.md)
58
+ - [XTend-Fabric RMT Lane Mapping](./xtend-fabric-rmt-lane-mapping.md)
59
+ - [Visual Owner Artifacts](./visual-owner-artifacts.md)
60
+
61
+ ## Handoff
62
+
63
+ `WP-E13-09` ist abgeschlossen. `WP-E13-10` hat [Docs RMT Production Hardening](./docs-rmt-production-hardening.md) nachgezogen und die Docs-App RMT Parsedown Shell fuer PROD-nahe Erweiterungen gehaertet. `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.