@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,333 @@
1
+ # XTendRMT Native Authoring Guide
2
+
3
+ - Status: produktiv nach Epic 05 Abschluss, vNext-first aktualisiert
4
+ - Contract: `xtend.rmt.native-authoring-guide.v1`
5
+ - Mindestgates:
6
+ - `node scripts/run_xtend_tests.js rmt-compatibility --json`
7
+ - `node scripts/run_xtend_tests.js browser --json`
8
+ - `node scripts/run_xtend_tests.js references --json`
9
+
10
+ ## Zweck
11
+
12
+ Dieser Guide beschreibt das produktive Authoring-Modell fuer native `.rmt`
13
+ Dokumente mit XTend UI und XRouter. Der empfohlene Weg fuer neue Apps ist RMT
14
+ vNext: App Shell, Surfaces, Routes, State, Events, Hydration und Fabric-Lanes
15
+ stehen in einer lesbaren RMT-Quelle. Legacy- und App-DSL-JSON bleiben
16
+ Compatibility Layer, Runtime Registry und Compiler-Target, aber nicht der
17
+ normale Autorenpfad.
18
+
19
+ `.rmt` ist der kanonische Dateityp. Server sollten ihn als
20
+ `application/vnd.xtendrmt.rmt+json` oder kompatibel als Text ausliefern; der
21
+ Runtime-Loader liest RMT-Dokumente als Text und parst sie ueber
22
+ `createRmtFormat().parseDocument(...)`. JSON-Endungen bleiben nur fuer
23
+ Edge-Case-Hosts ohne native MIME-Unterstuetzung vorgesehen.
24
+
25
+ Fuer einen kompakten Produktueberblick siehe [XTendRMT Developer
26
+ Overview](./xtendrmt-overview.md). Die referenzartige DSL-Beschreibung liegt in
27
+ [XTendRMT App-DSL Reference](./xtendrmt-app-dsl.md); Runtime-Factories und
28
+ Bridge-Verkabelung liegen in [XTendRMT Runtime Bridge](./xtendrmt-runtime-bridge.md).
29
+
30
+ Die Produktgrenze bleibt:
31
+
32
+ - XTend UI ist das UI-Builder- und Web-Component-Produkt.
33
+ - XTendRMT ist Scheduler, Runtime Kernel und Templating Engine.
34
+ - XRouter ist der erste produktive Router Adapter.
35
+ - XTend Components sind First-Class RMT Components ueber `xtend.component`.
36
+ - Nicht-XTend Hosts bleiben ueber eigene Adapter gleichberechtigt.
37
+ - Der RMT Kernel importiert keine XTend-, XRouter-, DOM- oder Browser-Typen.
38
+
39
+ Ab `WP-E13-09` ist [RMT Production Readiness](./rmt-production-readiness.md)
40
+ der RC1-Schnitt fuer diesen Pfad. Der Contract
41
+ `xtend.epic13.rmt-production-readiness.v1` wird lokal ueber
42
+ `node scripts/run_xtend_tests.js epic13-rmt-production-readiness --json`
43
+ geprueft und buendelt die bestehenden RMT-, Component-, Fabric- und
44
+ Telemetry-Gates.
45
+
46
+ Ab Epic 14 ist der native Authoring-Pfad auch toolgestuetzt:
47
+
48
+ - [RMT Linter und AI-Agent Repair Report](./rmt-linter.md) beschreibt
49
+ `xt rmt lint`, JSON-Reports, `--fail-on` und `--agent`.
50
+ - [RMT Language Server und Editor Setup](./rmt-language-server.md) beschreibt
51
+ LSP, Snippets und Editor-Anbindung fuer VS Code, JetBrains, Neovim und Helix.
52
+ - `node scripts/run_xtend_tests.js rmt-language-regression --json` prueft
53
+ valide, defekte, Legacy- und groessere RMT-Dokumente ueber Parser, Linter,
54
+ CLI, LSP und Agent-Report hinweg.
55
+
56
+ ## Minimaler vNext-Aufbau
57
+
58
+ Neue App-Shells starten mit einer vNext-Quelle:
59
+
60
+ ```rmt
61
+ template settings.app {
62
+ state settings.tab type string initial "profile"
63
+
64
+ selector settings.view from state settings.tab {
65
+ output SettingsView
66
+ }
67
+
68
+ action settings.save {
69
+ input tab string
70
+ reduce state.settings.tab = input.tab
71
+ emit settings.saved with action settings.save
72
+ }
73
+
74
+ portal surface.root root "#app-root" layer surface
75
+
76
+ surface settings.card kind page component x-card {
77
+ source selector settings.view
78
+ portal surface.root
79
+
80
+ lane visible weight 80 {
81
+ mount x-card
82
+ hydrate settings-card from selector settings.view
83
+ }
84
+
85
+ on submit target settings-form -> action settings.save {
86
+ payload tab from target.dataset.tab
87
+ }
88
+ }
89
+ }
90
+ ```
91
+
92
+ Der Compiler erzeugt daraus Core- und Kernel-Records fuer `adapters`,
93
+ `components`, `routes`, `schedules`, `surfaces` und `templates`. Diese Records
94
+ sind Runtime-Registry und Mirror; App-Autoren arbeiten in vNext.
95
+
96
+ ## Adapter und Host-Grenze
97
+
98
+ Adapter beschreiben Host-Faehigkeiten. Sie sind Daten im RMT Dokument, keine
99
+ Kernel-Imports. Der aktuelle Produktpfad kennt diese stabilen Adapter-IDs:
100
+
101
+ - `xtend.xrouter` fuer native XRouter Routes.
102
+ - `xtend.component` fuer XTend Custom Elements.
103
+ - `xtend.surface` fuer SurfaceManager-, SidePanel- und Overlay-Handoffs.
104
+ - `rmt.state-scheduler-diagnostics` fuer Adapter Results, Scheduler Endpoints
105
+ und Diagnostics.
106
+ - `vanilla.component` als Beispiel fuer einen nicht-XTend Component Host.
107
+
108
+ `kernelVisible: false` bleibt fuer host-spezifische Adapterdaten der Normalfall.
109
+ Der Kernel darf Records normalisieren, indizieren und schedulen, aber keine
110
+ Host-Runtime laden.
111
+
112
+ ## Components, Routes und Schedules in vNext
113
+
114
+ Components werden ueber `surface ... component ...` sichtbar. Route- und
115
+ Schedule-Informationen bleiben in der RMT-Quelle deklarativ und werden vom Host
116
+ ueber Adapter ausgefuehrt:
117
+
118
+ ```rmt
119
+ template settings.routes {
120
+ portal surface.root root "#app-root" layer surface
121
+
122
+ surface settings.page kind page component x-section {
123
+ portal surface.root
124
+
125
+ lane visible weight 80 {
126
+ hydrate settings-shell from endpoint xtendrmt.route.render
127
+ hydrate settings-form from endpoint xtendrmt.component.hydrate
128
+ }
129
+
130
+ lane idle weight 20 {
131
+ hydrate settings-help from endpoint xtendrmt.component.hydrate
132
+ }
133
+ }
134
+ }
135
+ ```
136
+
137
+ Der Normalizer macht daraus Runtime-Registry-Eintraege, die Adapter ueber
138
+ `componentRegistry.byAdapter["xtend.component"]`, `componentRegistry.byTag[...]`
139
+ und Route-/Schedule-Indizes konsumieren. XRouter-Mapping, `registerRoutes`,
140
+ Custom-Element-Registration, DOM-Erzeugung und Hydration bleiben Host-Aufgabe.
141
+
142
+ ## Surfaces und Templates
143
+
144
+ Komplexe App-Shells werden in vNext als Surfaces und Portals beschrieben:
145
+
146
+ ```rmt
147
+ template workbench.app {
148
+ state workbench.selection type object initial null
149
+
150
+ portal surface.root root "#workbench-root" layer surface
151
+
152
+ surface workbench.manager kind workspace component x-surface-manager {
153
+ portal surface.root
154
+
155
+ lane visible weight 90 {
156
+ hydrate surface-manager from endpoint xtendrmt.component.mount
157
+ }
158
+ }
159
+
160
+ surface workbench.inspector kind window component x-surface-window {
161
+ source state workbench.selection
162
+ portal surface.root
163
+
164
+ lane user-blocking weight 95 {
165
+ hydrate inspector-window from state workbench.selection
166
+ }
167
+ }
168
+ }
169
+ ```
170
+
171
+ Das Lowering kann daraus weiterhin `dom_descriptor` Template Records und
172
+ native `surfaces` Records erzeugen. `html_fragment` bleibt kompatibel, ist aber
173
+ DOM-untrusted und braucht `xtend.security.sanitizing-boundary.v1`. Der Kernel
174
+ sanitized kein HTML; Host Adapter besitzen den Trusted-DOM-Sink. Siehe
175
+ [Trusted DOM und Sanitizing](./trusted-dom-sanitizing.md).
176
+
177
+ Der abgeschlossene Surface-Authoring-Pfad liegt in [SurfaceManager Authoring
178
+ Guide](./surface-manager-authoring-guide.md) (`docs/surface-manager-authoring-guide.md`).
179
+
180
+ ## Runtime-Verkabelung
181
+
182
+ Der produktive Browser-/ESM-Pfad bleibt stabil:
183
+
184
+ 1. `createRmtFormat().normalizeDocument(document)`
185
+ 2. `createRmtFormat().createRuntimeRegistries(normalizedDocument)`
186
+ 3. `createRmtXRouterAdapter(...).registerRoutes(registry)`
187
+ 4. `createRmtXtendComponentAdapter(...).mountComponent(...)` und
188
+ `hydrateComponent(...)`
189
+
190
+ Adapter Results koennen anschliessend ueber
191
+ `createRmtStateSchedulerDiagnosticsBridge(...).recordAdapterResult(...)` an
192
+ `xstate`, Scheduler und Diagnostics Hub gespiegelt werden.
193
+
194
+ Die stabilen Factory-Namen fuer Adapterdokumentation und Tooling bleiben
195
+ `createRmtXRouterAdapter`, `createRmtXtendComponentAdapter` und
196
+ `createRmtStateSchedulerDiagnosticsBridge`. Die Standard-Policies bleiben
197
+ `route.visible.render` fuer sichtbares Routing und `component.idle.hydrate`
198
+ fuer nachgelagerte Component-Hydration.
199
+
200
+ ## Authoring Tooling
201
+
202
+ Empfohlener lokaler Ablauf:
203
+
204
+ ```bash
205
+ xt rmt lint app.rmt
206
+ xt rmt lint app.rmt --json
207
+ xt rmt lint app.rmt --agent
208
+ ```
209
+
210
+ Die IDE-Anbindung startet denselben Sprachkern ueber:
211
+
212
+ ```bash
213
+ node tools/rmt-language-server/server.js
214
+ ```
215
+
216
+ Wichtig: Linter, LSP, Code Actions und Agent Report teilen sich den gleichen
217
+ Diagnosekern. Editor-Packages und AI-Agenten sollen keine eigenen RMT-Regeln
218
+ implementieren.
219
+
220
+ Neue App-Shells koennen ueber den Snippet-Prefix `rmt-app` gestartet werden.
221
+ Weitere Prefixes sind `rmt-component`, `rmt-route`, `rmt-schedule`,
222
+ `rmt-template-dom`, `rmt-template-html` und `rmt-vnext-primitive-shell`.
223
+
224
+ ## Fabric/Lane-Ingestion im Component Adapter
225
+
226
+ Der XTend Component Adapter wertet ab `xtend.component.fabric-lane-ingestion.v2`
227
+ Fabric- und Lane-Hints direkt beim Mounting und bei Hydration aus. Die
228
+ Precedence bleibt:
229
+
230
+ 1. `rmt.schedule-record`
231
+ 2. `rmt.component-metadata`
232
+ 3. `fabric.runtime-override`
233
+ 4. `component.static-contract`
234
+ 5. `scaffold.blueprint-default`
235
+
236
+ In vNext kommt die bevorzugte Quelle aus `lane`- und Lifecycle-Klauseln. Der
237
+ Adapter stellt dafuer `resolveFabricContext(componentRef, operation, model,
238
+ options)` bereit. `mountComponent(...)` und `hydrateComponent(...)` spiegeln
239
+ den Context in `result.metadata.fabric` und setzen DOM-Attribute fuer Lane,
240
+ RMT-Lane, Fiber, Source und Endpoint. Konflikte erzeugen
241
+ `rmt.xtend.component.fabric_lane.conflict`.
242
+
243
+ Der lokale Gate ist:
244
+
245
+ ```bash
246
+ node scripts/run_xtend_tests.js rmt-component-fabric-ingestion --json
247
+ ```
248
+
249
+ ## Component Lifecycle Telemetry
250
+
251
+ Ab `xtend.component.lifecycle-telemetry.v1` erzeugt derselbe Adapter
252
+ standardisierte Component Lifecycle Telemetry. RMT-Dokumente muessen dafuer
253
+ keinen XTend-Code importieren; sie liefern nur Component-, Route-, Schedule-
254
+ und Fabric-Kontext. Der Host kann `telemetryCollector`, `recordTelemetry` oder
255
+ eine Fabric-Instanz uebergeben.
256
+
257
+ ```js
258
+ const records = [];
259
+ adapter.mountComponent(root, 'pages.settings', model, {
260
+ mapping,
261
+ telemetryCollector: records
262
+ });
263
+
264
+ const snapshot = fabric.createTelemetrySnapshot({
265
+ componentTelemetry: records
266
+ });
267
+ ```
268
+
269
+ `snapshot.componentTelemetry` aggregiert `mount`, `hydrate`, `render`, `update`,
270
+ `event`, `unmount` und `error` nach Operation, Component und Lane. Component-
271
+ Fehler, Deadline-Ueberschreitungen und explizite `backpressureSignal` Metadata
272
+ koennen Backpressure erzeugen. Der Gate ist
273
+ `node scripts/run_xtend_tests.js rmt-component-lifecycle-telemetry --json`.
274
+
275
+ Hosts koennen Fabric Snapshots direkt an die produktive RMT Bridge uebergeben:
276
+
277
+ ```js
278
+ bridge.recordTelemetrySnapshot(snapshot, {
279
+ scheduleRef: "diagnostics.snapshot"
280
+ });
281
+ ```
282
+
283
+ Die Bridge spiegelt daraus `rmt.telemetry.lastSnapshot` und
284
+ `rmt.backpressure.*` und plant bei Bedarf den Diagnostics-Snapshot-Endpunkt.
285
+
286
+ ## Multi-Host-Regel
287
+
288
+ Native RMT Components duerfen nicht implizit XTend bedeuten. Ein nicht-XTend
289
+ Host nutzt denselben vNext-Aufbau mit eigener Adapter-ID und eigener
290
+ Host-Ausfuehrung:
291
+
292
+ ```rmt
293
+ template vanilla.app {
294
+ portal surface.root root "#vanilla-root" layer surface
295
+
296
+ surface vanilla.panel kind card component vanilla-panel {
297
+ portal surface.root
298
+
299
+ lane visible weight 60 {
300
+ hydrate vanilla-panel from endpoint xtendrmt.vanilla.mount
301
+ }
302
+ }
303
+ }
304
+ ```
305
+
306
+ Der Browser-Smoke `tests/browser/fixtures/rmt-xrouter-xtend-smoke.html` prueft
307
+ genau diesen Pfad. Damit ist Framework-Agnostik nicht nur Architekturziel,
308
+ sondern Regression.
309
+
310
+ ## Kernel Boundary
311
+
312
+ Der RMT Kernel darf nicht importieren oder voraussetzen:
313
+
314
+ - `x-router`
315
+ - konkrete `x-*` Komponenten
316
+ - XTend Manifest-Strukturen
317
+ - `window.XTend`
318
+ - `xstate`
319
+ - Browser DOM APIs
320
+
321
+ Der Kernel darf normalisieren, indizieren, validieren und Schedule Policies
322
+ beschreiben. Host-Ausfuehrung bleibt Adapterarbeit.
323
+
324
+ ## Review-Checkliste
325
+
326
+ Vor einem neuen nativen `.rmt` Dokument pruefen:
327
+
328
+ - beschreibt die Quelle App Shell, Surfaces, Lanes und Events in RMT vNext?
329
+ - sind Legacy-/App-DSL-JSON nur noch Compiler-Output, Mirror oder Migration?
330
+ - bleiben XTend-spezifische Daten ausserhalb des Kernels?
331
+ - referenzieren Lifecycle-Operationen stabile Endpoints und Adaptergrenzen?
332
+ - existiert fuer nicht-XTend Hosts ein eigener Adapter statt XTend-Fallback?
333
+ - laufen `rmt-compatibility`, `browser` und `references` Gates?
@@ -0,0 +1,109 @@
1
+ # XTendRMT Developer Overview
2
+
3
+ - Contract: `xtend.docs.xtendrmt-overview.v1`
4
+ - Produktversion: `XTendRMT 0.2.0`
5
+
6
+ XTendRMT ist die deklarative App-Schicht von XTend. Entwickler schreiben eine
7
+ lesbare `.rmt` Quelle; der Compiler erzeugt daraus Core Records, Kernel-
8
+ Artefakte, Source Maps und Adapter-Uebergaben. XTend UI bleibt das
9
+ Web-Component-System, XTendRMT beschreibt App-Struktur und Lifecycle.
10
+
11
+ ## Produktgrenze
12
+
13
+ | Ebene | Verantwortung |
14
+ | --- | --- |
15
+ | RMT vNext | App Shell, Surfaces, State, Selectors, Actions, Events, Resources, Lanes |
16
+ | RMT Kernel | Normalisierung, Scheduling, Diagnostics, Source Maps, Kernel Records |
17
+ | Host Adapter | XTend Components, XRouter, DOM, Browser APIs, Framework-Bridges |
18
+ | XTend UI | Web Components, Styling, A11y, Interaktion, sichtbare UI |
19
+ | Fabric | Lanes, Fibers, Telemetry, Backpressure und Runtime-Diagnostics |
20
+
21
+ Der Kernel bleibt framework-agnostisch. Er importiert keine XTend Components,
22
+ kein XRouter-Modul, keine Browser-APIs und keine Host-Runtime. Alles, was DOM,
23
+ Routing, Component-Importe oder Browser-Zustaende braucht, gehoert in Adapter.
24
+
25
+ ## Warum RMT vNext?
26
+
27
+ RMT vNext ist die bevorzugte Syntax fuer neue Apps:
28
+
29
+ - Eine App Shell entsteht aus einer Quelle statt aus verstreutem HTML,
30
+ Legacy-JSON und Host-Code.
31
+ - UI-Objekte bleiben ueber Primitive IDs, Source Maps, Kernel Records, Fabric
32
+ Fibers und DOM-Marker korrelierbar.
33
+ - State, Selectors, Actions, DataSources, Events, Portals, Overlays,
34
+ Resources und Surfaces sind erstklassige Authoring-Primitive.
35
+ - Editor-DX kommt direkt aus dem Language Server: Completion, Hover, Document
36
+ Symbols, Definition und Code Actions.
37
+ - Legacy- und App-Platform-JSON bleiben kompatible Targets, aber nicht der
38
+ normale Authoring-Pfad.
39
+
40
+ ## Kleines mentales Modell
41
+
42
+ ```text
43
+ app.rmt
44
+ -> vNext parser
45
+ -> semantic primitive graph
46
+ -> core document + kernel records
47
+ -> DOM descriptor renderer + component capability registry
48
+ -> host adapter
49
+ -> XTend Components / XRouter / Fabric
50
+ -> sichtbare App im Browser
51
+ ```
52
+
53
+ Ein Surface beschreibt einen sichtbaren Bereich. Eine Lane beschreibt, wann
54
+ und mit welcher Prioritaet Arbeit ausgefuehrt wird. Actions und Events
55
+ beschreiben Interaktion. Resources beschreiben Besitz und Cleanup. Adapter
56
+ setzen diese Beschreibung in echte Komponenten und Browser-Arbeit um.
57
+
58
+ ## Kernartefakte
59
+
60
+ - `xtendrmt/rmt-core.esm.js`
61
+ - `xtendrmt/rmt-runtime.esm.js`
62
+ - `xtendrmt/rmt-runtime.browser.js`
63
+ - `xtendrmt/rmt-core.d.ts`
64
+ - `xtendrmt/rmt.schema.json`
65
+ - `xtendrmt/rmt-manifest.json`
66
+
67
+ ## Wichtige APIs und Adapter
68
+
69
+ - Runtime Registry fuer Route- und Component-Indizes
70
+ - Component Capability Registry `createRmtComponentCapabilityRegistry`
71
+ - XRouter Adapter `createRmtXRouterAdapter`
72
+ - XTend Component Adapter `createRmtXtendComponentAdapter`
73
+ - State-/Scheduler-/Diagnostics Bridge `createRmtStateSchedulerDiagnosticsBridge`
74
+ - RMT Language Server fuer Editor-Integrationen
75
+ - Compiler-Ausgaben fuer Core, App-Platform und Kernel Records
76
+
77
+ ## Offizielle Entwicklerdokumente
78
+
79
+ | Thema | Dokument |
80
+ | --- | --- |
81
+ | Erste App | [Quick Start Guide](./quick-start-guide.md) |
82
+ | vNext App Authoring | [RMT vNext Authoring Guide](./rmt-vnext-authoring.md) |
83
+ | RMT und XTend UI | [RMT vNext Component Primitives und XTend UI](./rmt-vnext-component-primitives.md) |
84
+ | Native Authoring | [XTendRMT Native Authoring Guide](./xtendrmt-native-authoring.md) |
85
+ | App-DSL Referenz | [XTendRMT App-DSL Reference](./xtendrmt-app-dsl.md) |
86
+ | Runtime Bridge und Adapter | [XTendRMT Runtime Bridge](./xtendrmt-runtime-bridge.md) |
87
+ | Migration aus alten Metadatenpfaden | [XTendRMT Native Migration Guide](./xtendrmt-migration-guide.md) |
88
+ | Editor Setup | [RMT Language Server und Editor Setup](./rmt-language-server.md) |
89
+ | Historie | [XTend Changelog](./changelog.md) |
90
+
91
+ ## Lokaler Check fuer RMT-Arbeit
92
+
93
+ ```bash
94
+ xt rmt lint app.rmt
95
+ node tools/rmt-language-server/server.js
96
+ node scripts/run_xtend_tests.js rmt-vnext-parser rmt-vnext-compiler rmt-vnext-tooling --json
97
+ node scripts/run_xtend_tests.js rmt-vnext-component-primitives --json
98
+ ```
99
+
100
+ Fuer Runtime- und Adapter-Paritaet bleiben zwei repo-lokale Gates wichtig:
101
+
102
+ - `tests/browser/fixtures/rmt-xrouter-xtend-smoke.html` prueft, dass RMT,
103
+ XRouter, XTend Components und Vanilla-Host zusammen sichtbar rendern.
104
+ - `node scripts/verify_xtendrmt_artifact_parity.js --json` prueft, dass
105
+ Schema, Manifest, Typen, ESM-Bundles und Browser-Bundle zusammenpassen.
106
+
107
+ Neue RMT-nahe Arbeit soll zuerst klaeren, ob sie Kernel-, Syntax-, Adapter-,
108
+ Host- oder Dokumentationsverantwortung ist. XTend-spezifisches Verhalten wird
109
+ ueber Adapter modelliert, nicht als Kernel-Sonderfall.