@noodleseed/one 0.92.0 → 0.94.0

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 (439) hide show
  1. package/dist/deploy.js +1 -1
  2. package/dist/deploy.js.map +1 -1
  3. package/dist/index.d.ts +1 -1
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +1 -1
  6. package/dist/index.js.map +1 -1
  7. package/dist/platform-support.js +2 -2
  8. package/dist/platform-support.js.map +1 -1
  9. package/node_modules/@noodle-borg/agent-kit/dist/curated/error-fixes.d.ts.map +1 -1
  10. package/node_modules/@noodle-borg/agent-kit/dist/curated/error-fixes.js +8 -0
  11. package/node_modules/@noodle-borg/agent-kit/dist/curated/error-fixes.js.map +1 -1
  12. package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js +3 -3
  13. package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js.map +1 -1
  14. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  15. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +9 -0
  16. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  17. package/node_modules/@noodle-borg/agent-kit/dist/plugin-bundle.d.ts.map +1 -1
  18. package/node_modules/@noodle-borg/agent-kit/dist/plugin-bundle.js +8 -0
  19. package/node_modules/@noodle-borg/agent-kit/dist/plugin-bundle.js.map +1 -1
  20. package/node_modules/@noodle-borg/agent-kit/dist/plugin-launcher.d.ts.map +1 -1
  21. package/node_modules/@noodle-borg/agent-kit/dist/plugin-launcher.js +24 -1
  22. package/node_modules/@noodle-borg/agent-kit/dist/plugin-launcher.js.map +1 -1
  23. package/node_modules/@noodle-borg/agent-kit/dist/plugin-manifests.js +30 -22
  24. package/node_modules/@noodle-borg/agent-kit/dist/plugin-manifests.js.map +1 -1
  25. package/node_modules/@noodle-borg/agent-kit/dist/plugin-marketplace-docs.d.ts.map +1 -1
  26. package/node_modules/@noodle-borg/agent-kit/dist/plugin-marketplace-docs.js +15 -0
  27. package/node_modules/@noodle-borg/agent-kit/dist/plugin-marketplace-docs.js.map +1 -1
  28. package/node_modules/@noodle-borg/agent-kit/dist/plugin-platform-support.d.ts +13 -0
  29. package/node_modules/@noodle-borg/agent-kit/dist/plugin-platform-support.d.ts.map +1 -0
  30. package/node_modules/@noodle-borg/agent-kit/dist/plugin-platform-support.js +13 -0
  31. package/node_modules/@noodle-borg/agent-kit/dist/plugin-platform-support.js.map +1 -0
  32. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-auth-ref.d.ts +2 -0
  33. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-auth-ref.d.ts.map +1 -0
  34. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-auth-ref.js +171 -0
  35. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-auth-ref.js.map +1 -0
  36. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.d.ts.map +1 -1
  37. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js +3 -97
  38. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js.map +1 -1
  39. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  40. package/node_modules/@noodle-borg/auth/dist/claims.d.ts +2 -0
  41. package/node_modules/@noodle-borg/auth/dist/claims.d.ts.map +1 -1
  42. package/node_modules/@noodle-borg/auth/dist/claims.js +15 -0
  43. package/node_modules/@noodle-borg/auth/dist/claims.js.map +1 -1
  44. package/node_modules/@noodle-borg/auth/dist/index.d.ts +2 -2
  45. package/node_modules/@noodle-borg/auth/dist/index.d.ts.map +1 -1
  46. package/node_modules/@noodle-borg/auth/dist/index.js +1 -1
  47. package/node_modules/@noodle-borg/auth/dist/index.js.map +1 -1
  48. package/node_modules/@noodle-borg/auth/dist/verify.d.ts +10 -1
  49. package/node_modules/@noodle-borg/auth/dist/verify.d.ts.map +1 -1
  50. package/node_modules/@noodle-borg/auth/dist/verify.js +9 -2
  51. package/node_modules/@noodle-borg/auth/dist/verify.js.map +1 -1
  52. package/node_modules/@noodle-borg/authoring/dist/connectors.d.ts +2 -2
  53. package/node_modules/@noodle-borg/authoring/dist/connectors.d.ts.map +1 -1
  54. package/node_modules/@noodle-borg/authoring/dist/connectors.js +4 -1
  55. package/node_modules/@noodle-borg/authoring/dist/connectors.js.map +1 -1
  56. package/node_modules/@noodle-borg/authoring/dist/customer-auth.d.ts +13 -0
  57. package/node_modules/@noodle-borg/authoring/dist/customer-auth.d.ts.map +1 -1
  58. package/node_modules/@noodle-borg/authoring/dist/customer-auth.js +31 -2
  59. package/node_modules/@noodle-borg/authoring/dist/customer-auth.js.map +1 -1
  60. package/node_modules/@noodle-borg/authoring/dist/customer-endpoint.d.ts +10 -0
  61. package/node_modules/@noodle-borg/authoring/dist/customer-endpoint.d.ts.map +1 -0
  62. package/node_modules/@noodle-borg/authoring/dist/customer-endpoint.js +18 -0
  63. package/node_modules/@noodle-borg/authoring/dist/customer-endpoint.js.map +1 -0
  64. package/node_modules/@noodle-borg/authoring/dist/index.d.ts +2 -1
  65. package/node_modules/@noodle-borg/authoring/dist/index.d.ts.map +1 -1
  66. package/node_modules/@noodle-borg/authoring/dist/index.js +1 -0
  67. package/node_modules/@noodle-borg/authoring/dist/index.js.map +1 -1
  68. package/node_modules/@noodle-borg/authoring/dist/server.d.ts +1 -1
  69. package/node_modules/@noodle-borg/authoring/dist/server.d.ts.map +1 -1
  70. package/node_modules/@noodle-borg/authoring/dist/server.js +1 -13
  71. package/node_modules/@noodle-borg/authoring/dist/server.js.map +1 -1
  72. package/node_modules/@noodle-borg/compiler/dist/artifact/assemble.d.ts +27 -0
  73. package/node_modules/@noodle-borg/compiler/dist/artifact/assemble.d.ts.map +1 -0
  74. package/node_modules/@noodle-borg/compiler/dist/artifact/assemble.js +73 -0
  75. package/node_modules/@noodle-borg/compiler/dist/artifact/assemble.js.map +1 -0
  76. package/node_modules/@noodle-borg/compiler/dist/artifact/catalog-emission.d.ts +50 -0
  77. package/node_modules/@noodle-borg/compiler/dist/artifact/catalog-emission.d.ts.map +1 -0
  78. package/node_modules/@noodle-borg/compiler/dist/artifact/catalog-emission.js +119 -0
  79. package/node_modules/@noodle-borg/compiler/dist/artifact/catalog-emission.js.map +1 -0
  80. package/node_modules/@noodle-borg/compiler/dist/artifact/types.d.ts +22 -1
  81. package/node_modules/@noodle-borg/compiler/dist/artifact/types.d.ts.map +1 -1
  82. package/node_modules/@noodle-borg/compiler/dist/artifact/types.js +5 -1
  83. package/node_modules/@noodle-borg/compiler/dist/artifact/types.js.map +1 -1
  84. package/node_modules/@noodle-borg/compiler/dist/catalog/in-memory.js +1 -1
  85. package/node_modules/@noodle-borg/compiler/dist/catalog/in-memory.js.map +1 -1
  86. package/node_modules/@noodle-borg/compiler/dist/catalog/types.d.ts +8 -0
  87. package/node_modules/@noodle-borg/compiler/dist/catalog/types.d.ts.map +1 -1
  88. package/node_modules/@noodle-borg/compiler/dist/catalog/types.js +0 -9
  89. package/node_modules/@noodle-borg/compiler/dist/catalog/types.js.map +1 -1
  90. package/node_modules/@noodle-borg/compiler/dist/compile.d.ts +1 -11
  91. package/node_modules/@noodle-borg/compiler/dist/compile.d.ts.map +1 -1
  92. package/node_modules/@noodle-borg/compiler/dist/compile.js +29 -163
  93. package/node_modules/@noodle-borg/compiler/dist/compile.js.map +1 -1
  94. package/node_modules/@noodle-borg/compiler/dist/context-compile.d.ts +2 -1
  95. package/node_modules/@noodle-borg/compiler/dist/context-compile.d.ts.map +1 -1
  96. package/node_modules/@noodle-borg/compiler/dist/context-compile.js +3 -1
  97. package/node_modules/@noodle-borg/compiler/dist/context-compile.js.map +1 -1
  98. package/node_modules/@noodle-borg/compiler/dist/customer-endpoint.d.ts +34 -0
  99. package/node_modules/@noodle-borg/compiler/dist/customer-endpoint.d.ts.map +1 -0
  100. package/node_modules/@noodle-borg/compiler/dist/customer-endpoint.js +240 -0
  101. package/node_modules/@noodle-borg/compiler/dist/customer-endpoint.js.map +1 -0
  102. package/node_modules/@noodle-borg/compiler/dist/customer-routing.d.ts +24 -0
  103. package/node_modules/@noodle-borg/compiler/dist/customer-routing.d.ts.map +1 -0
  104. package/node_modules/@noodle-borg/compiler/dist/customer-routing.js +136 -0
  105. package/node_modules/@noodle-borg/compiler/dist/customer-routing.js.map +1 -0
  106. package/node_modules/@noodle-borg/compiler/dist/errors.d.ts +1 -1
  107. package/node_modules/@noodle-borg/compiler/dist/errors.d.ts.map +1 -1
  108. package/node_modules/@noodle-borg/compiler/dist/fulfilment-emit.d.ts +7 -3
  109. package/node_modules/@noodle-borg/compiler/dist/fulfilment-emit.d.ts.map +1 -1
  110. package/node_modules/@noodle-borg/compiler/dist/fulfilment-emit.js +7 -1
  111. package/node_modules/@noodle-borg/compiler/dist/fulfilment-emit.js.map +1 -1
  112. package/node_modules/@noodle-borg/compiler/dist/index.d.ts +3 -2
  113. package/node_modules/@noodle-borg/compiler/dist/index.d.ts.map +1 -1
  114. package/node_modules/@noodle-borg/compiler/dist/index.js +1 -0
  115. package/node_modules/@noodle-borg/compiler/dist/index.js.map +1 -1
  116. package/node_modules/@noodle-borg/compiler/dist/manifest/auth-schema.d.ts +110 -0
  117. package/node_modules/@noodle-borg/compiler/dist/manifest/auth-schema.d.ts.map +1 -0
  118. package/node_modules/@noodle-borg/compiler/dist/manifest/auth-schema.js +191 -0
  119. package/node_modules/@noodle-borg/compiler/dist/manifest/auth-schema.js.map +1 -0
  120. package/node_modules/@noodle-borg/compiler/dist/manifest/schema.d.ts +12 -0
  121. package/node_modules/@noodle-borg/compiler/dist/manifest/schema.d.ts.map +1 -1
  122. package/node_modules/@noodle-borg/compiler/dist/manifest/schema.js +1 -73
  123. package/node_modules/@noodle-borg/compiler/dist/manifest/schema.js.map +1 -1
  124. package/node_modules/@noodle-borg/compiler/package.json +1 -0
  125. package/node_modules/@noodle-borg/compute/dist/code-connector.d.ts +1 -0
  126. package/node_modules/@noodle-borg/compute/dist/code-connector.d.ts.map +1 -1
  127. package/node_modules/@noodle-borg/compute/dist/code-connector.js.map +1 -1
  128. package/node_modules/@noodle-borg/connector-defs/dist/call-graph.d.ts.map +1 -1
  129. package/node_modules/@noodle-borg/connector-defs/dist/call-graph.js +6 -6
  130. package/node_modules/@noodle-borg/connector-defs/dist/call-graph.js.map +1 -1
  131. package/node_modules/@noodle-borg/connector-defs/dist/compile-auth.d.ts +2 -0
  132. package/node_modules/@noodle-borg/connector-defs/dist/compile-auth.d.ts.map +1 -1
  133. package/node_modules/@noodle-borg/connector-defs/dist/compile-auth.js +12 -9
  134. package/node_modules/@noodle-borg/connector-defs/dist/compile-auth.js.map +1 -1
  135. package/node_modules/@noodle-borg/connector-defs/dist/compile-http.d.ts +14 -0
  136. package/node_modules/@noodle-borg/connector-defs/dist/compile-http.d.ts.map +1 -0
  137. package/node_modules/@noodle-borg/connector-defs/dist/compile-http.js +347 -0
  138. package/node_modules/@noodle-borg/connector-defs/dist/compile-http.js.map +1 -0
  139. package/node_modules/@noodle-borg/connector-defs/dist/compile.d.ts +4 -2
  140. package/node_modules/@noodle-borg/connector-defs/dist/compile.d.ts.map +1 -1
  141. package/node_modules/@noodle-borg/connector-defs/dist/compile.js +17 -333
  142. package/node_modules/@noodle-borg/connector-defs/dist/compile.js.map +1 -1
  143. package/node_modules/@noodle-borg/connector-defs/dist/customer-routing.d.ts +11 -0
  144. package/node_modules/@noodle-borg/connector-defs/dist/customer-routing.d.ts.map +1 -0
  145. package/node_modules/@noodle-borg/connector-defs/dist/customer-routing.js +124 -0
  146. package/node_modules/@noodle-borg/connector-defs/dist/customer-routing.js.map +1 -0
  147. package/node_modules/@noodle-borg/connector-defs/dist/http-headers.d.ts +4 -0
  148. package/node_modules/@noodle-borg/connector-defs/dist/http-headers.d.ts.map +1 -0
  149. package/node_modules/@noodle-borg/connector-defs/dist/http-headers.js +52 -0
  150. package/node_modules/@noodle-borg/connector-defs/dist/http-headers.js.map +1 -0
  151. package/node_modules/@noodle-borg/connector-defs/dist/identity-key.d.ts +5 -0
  152. package/node_modules/@noodle-borg/connector-defs/dist/identity-key.d.ts.map +1 -0
  153. package/node_modules/@noodle-borg/connector-defs/dist/identity-key.js +9 -0
  154. package/node_modules/@noodle-borg/connector-defs/dist/identity-key.js.map +1 -0
  155. package/node_modules/@noodle-borg/connector-defs/dist/schema.d.ts +33 -3
  156. package/node_modules/@noodle-borg/connector-defs/dist/schema.d.ts.map +1 -1
  157. package/node_modules/@noodle-borg/connector-defs/dist/schema.js +22 -3
  158. package/node_modules/@noodle-borg/connector-defs/dist/schema.js.map +1 -1
  159. package/node_modules/@noodle-borg/connector-http/dist/customer-route.d.ts +17 -0
  160. package/node_modules/@noodle-borg/connector-http/dist/customer-route.d.ts.map +1 -0
  161. package/node_modules/@noodle-borg/connector-http/dist/customer-route.js +77 -0
  162. package/node_modules/@noodle-borg/connector-http/dist/customer-route.js.map +1 -0
  163. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts +2 -2
  164. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts.map +1 -1
  165. package/node_modules/@noodle-borg/connector-http/dist/http-connector.js +64 -67
  166. package/node_modules/@noodle-borg/connector-http/dist/http-connector.js.map +1 -1
  167. package/node_modules/@noodle-borg/connector-http/dist/http-response.d.ts.map +1 -1
  168. package/node_modules/@noodle-borg/connector-http/dist/http-response.js +23 -21
  169. package/node_modules/@noodle-borg/connector-http/dist/http-response.js.map +1 -1
  170. package/node_modules/@noodle-borg/connector-http/dist/ssrf.d.ts.map +1 -1
  171. package/node_modules/@noodle-borg/connector-http/dist/ssrf.js +17 -2
  172. package/node_modules/@noodle-borg/connector-http/dist/ssrf.js.map +1 -1
  173. package/node_modules/@noodle-borg/connector-http/dist/url-resolution.d.ts +4 -0
  174. package/node_modules/@noodle-borg/connector-http/dist/url-resolution.d.ts.map +1 -0
  175. package/node_modules/@noodle-borg/connector-http/dist/url-resolution.js +31 -0
  176. package/node_modules/@noodle-borg/connector-http/dist/url-resolution.js.map +1 -0
  177. package/node_modules/@noodle-borg/module/dist/contract.d.ts +14 -2
  178. package/node_modules/@noodle-borg/module/dist/contract.d.ts.map +1 -1
  179. package/node_modules/@noodle-borg/module/dist/contract.js.map +1 -1
  180. package/node_modules/@noodle-borg/protocol/dist/mapping.d.ts.map +1 -1
  181. package/node_modules/@noodle-borg/protocol/dist/mapping.js +17 -0
  182. package/node_modules/@noodle-borg/protocol/dist/mapping.js.map +1 -1
  183. package/node_modules/@noodle-borg/protocol/dist/sdk-server.d.ts +4 -0
  184. package/node_modules/@noodle-borg/protocol/dist/sdk-server.d.ts.map +1 -1
  185. package/node_modules/@noodle-borg/protocol/dist/sdk-server.js +7 -1
  186. package/node_modules/@noodle-borg/protocol/dist/sdk-server.js.map +1 -1
  187. package/node_modules/@noodle-borg/runtime/dist/broker/types.d.ts +24 -3
  188. package/node_modules/@noodle-borg/runtime/dist/broker/types.d.ts.map +1 -1
  189. package/node_modules/@noodle-borg/runtime/dist/broker/types.js +21 -0
  190. package/node_modules/@noodle-borg/runtime/dist/broker/types.js.map +1 -1
  191. package/node_modules/@noodle-borg/runtime/dist/confirmation.d.ts.map +1 -1
  192. package/node_modules/@noodle-borg/runtime/dist/confirmation.js +10 -0
  193. package/node_modules/@noodle-borg/runtime/dist/confirmation.js.map +1 -1
  194. package/node_modules/@noodle-borg/runtime/dist/connector/failure-details.d.ts +8 -0
  195. package/node_modules/@noodle-borg/runtime/dist/connector/failure-details.d.ts.map +1 -0
  196. package/node_modules/@noodle-borg/runtime/dist/connector/failure-details.js +53 -0
  197. package/node_modules/@noodle-borg/runtime/dist/connector/failure-details.js.map +1 -0
  198. package/node_modules/@noodle-borg/runtime/dist/connector/types.d.ts +7 -0
  199. package/node_modules/@noodle-borg/runtime/dist/connector/types.d.ts.map +1 -1
  200. package/node_modules/@noodle-borg/runtime/dist/connector/types.js +15 -0
  201. package/node_modules/@noodle-borg/runtime/dist/connector/types.js.map +1 -1
  202. package/node_modules/@noodle-borg/runtime/dist/customer-routing.d.ts +45 -0
  203. package/node_modules/@noodle-borg/runtime/dist/customer-routing.d.ts.map +1 -0
  204. package/node_modules/@noodle-borg/runtime/dist/customer-routing.js +135 -0
  205. package/node_modules/@noodle-borg/runtime/dist/customer-routing.js.map +1 -0
  206. package/node_modules/@noodle-borg/runtime/dist/execute.d.ts +10 -49
  207. package/node_modules/@noodle-borg/runtime/dist/execute.d.ts.map +1 -1
  208. package/node_modules/@noodle-borg/runtime/dist/execute.js +14 -363
  209. package/node_modules/@noodle-borg/runtime/dist/execute.js.map +1 -1
  210. package/node_modules/@noodle-borg/runtime/dist/index.d.ts +4 -2
  211. package/node_modules/@noodle-borg/runtime/dist/index.d.ts.map +1 -1
  212. package/node_modules/@noodle-borg/runtime/dist/index.js +4 -2
  213. package/node_modules/@noodle-borg/runtime/dist/index.js.map +1 -1
  214. package/node_modules/@noodle-borg/runtime/dist/interactive.d.ts.map +1 -1
  215. package/node_modules/@noodle-borg/runtime/dist/interactive.js +7 -0
  216. package/node_modules/@noodle-borg/runtime/dist/interactive.js.map +1 -1
  217. package/node_modules/@noodle-borg/runtime/dist/operation-credential.d.ts +16 -0
  218. package/node_modules/@noodle-borg/runtime/dist/operation-credential.d.ts.map +1 -0
  219. package/node_modules/@noodle-borg/runtime/dist/operation-credential.js +58 -0
  220. package/node_modules/@noodle-borg/runtime/dist/operation-credential.js.map +1 -0
  221. package/node_modules/@noodle-borg/runtime/dist/operation-execution.d.ts +48 -0
  222. package/node_modules/@noodle-borg/runtime/dist/operation-execution.d.ts.map +1 -0
  223. package/node_modules/@noodle-borg/runtime/dist/operation-execution.js +328 -0
  224. package/node_modules/@noodle-borg/runtime/dist/operation-execution.js.map +1 -0
  225. package/node_modules/@noodle-borg/runtime/dist/prepared-action-match.d.ts +3 -0
  226. package/node_modules/@noodle-borg/runtime/dist/prepared-action-match.d.ts.map +1 -0
  227. package/node_modules/@noodle-borg/runtime/dist/prepared-action-match.js +48 -0
  228. package/node_modules/@noodle-borg/runtime/dist/prepared-action-match.js.map +1 -0
  229. package/node_modules/@noodle-borg/runtime/dist/result.d.ts +1 -1
  230. package/node_modules/@noodle-borg/runtime/dist/result.d.ts.map +1 -1
  231. package/node_modules/@noodle-borg/runtime/dist/result.js.map +1 -1
  232. package/node_modules/@noodle-borg/runtime/dist/routed-output-guard.d.ts +15 -0
  233. package/node_modules/@noodle-borg/runtime/dist/routed-output-guard.d.ts.map +1 -0
  234. package/node_modules/@noodle-borg/runtime/dist/routed-output-guard.js +163 -0
  235. package/node_modules/@noodle-borg/runtime/dist/routed-output-guard.js.map +1 -0
  236. package/node_modules/@noodle-borg/service/dist/assistant-customer-issuer.d.ts +8 -0
  237. package/node_modules/@noodle-borg/service/dist/assistant-customer-issuer.d.ts.map +1 -0
  238. package/node_modules/@noodle-borg/service/dist/assistant-customer-issuer.js +13 -0
  239. package/node_modules/@noodle-borg/service/dist/assistant-customer-issuer.js.map +1 -0
  240. package/node_modules/@noodle-borg/service/dist/assistant-interactive.d.ts.map +1 -1
  241. package/node_modules/@noodle-borg/service/dist/assistant-interactive.js +2 -1
  242. package/node_modules/@noodle-borg/service/dist/assistant-interactive.js.map +1 -1
  243. package/node_modules/@noodle-borg/service/dist/control-plane-auth-bootstrap.d.ts.map +1 -1
  244. package/node_modules/@noodle-borg/service/dist/control-plane-auth-bootstrap.js +1 -1
  245. package/node_modules/@noodle-borg/service/dist/control-plane-auth-bootstrap.js.map +1 -1
  246. package/node_modules/@noodle-borg/service/dist/credential-binding-index.d.ts +2 -0
  247. package/node_modules/@noodle-borg/service/dist/credential-binding-index.d.ts.map +1 -1
  248. package/node_modules/@noodle-borg/service/dist/credential-binding-index.js +5 -1
  249. package/node_modules/@noodle-borg/service/dist/credential-binding-index.js.map +1 -1
  250. package/node_modules/@noodle-borg/service/dist/credential-broker-delegated-refresh.d.ts +47 -0
  251. package/node_modules/@noodle-borg/service/dist/credential-broker-delegated-refresh.d.ts.map +1 -0
  252. package/node_modules/@noodle-borg/service/dist/credential-broker-delegated-refresh.js +165 -0
  253. package/node_modules/@noodle-borg/service/dist/credential-broker-delegated-refresh.js.map +1 -0
  254. package/node_modules/@noodle-borg/service/dist/credential-broker-delegated-token-exchange.d.ts +18 -0
  255. package/node_modules/@noodle-borg/service/dist/credential-broker-delegated-token-exchange.d.ts.map +1 -0
  256. package/node_modules/@noodle-borg/service/dist/credential-broker-delegated-token-exchange.js +112 -0
  257. package/node_modules/@noodle-borg/service/dist/credential-broker-delegated-token-exchange.js.map +1 -0
  258. package/node_modules/@noodle-borg/service/dist/credential-broker.d.ts +6 -24
  259. package/node_modules/@noodle-borg/service/dist/credential-broker.d.ts.map +1 -1
  260. package/node_modules/@noodle-borg/service/dist/credential-broker.js +23 -271
  261. package/node_modules/@noodle-borg/service/dist/credential-broker.js.map +1 -1
  262. package/node_modules/@noodle-borg/service/dist/credential-probe-route.d.ts +20 -0
  263. package/node_modules/@noodle-borg/service/dist/credential-probe-route.d.ts.map +1 -0
  264. package/node_modules/@noodle-borg/service/dist/credential-probe-route.js +28 -0
  265. package/node_modules/@noodle-borg/service/dist/credential-probe-route.js.map +1 -0
  266. package/node_modules/@noodle-borg/service/dist/credential-probes.d.ts +3 -1
  267. package/node_modules/@noodle-borg/service/dist/credential-probes.d.ts.map +1 -1
  268. package/node_modules/@noodle-borg/service/dist/credential-probes.js +54 -13
  269. package/node_modules/@noodle-borg/service/dist/credential-probes.js.map +1 -1
  270. package/node_modules/@noodle-borg/service/dist/credential-route-guard.d.ts +9 -0
  271. package/node_modules/@noodle-borg/service/dist/credential-route-guard.d.ts.map +1 -0
  272. package/node_modules/@noodle-borg/service/dist/credential-route-guard.js +34 -0
  273. package/node_modules/@noodle-borg/service/dist/credential-route-guard.js.map +1 -0
  274. package/node_modules/@noodle-borg/service/dist/credential-route-key.d.ts +12 -0
  275. package/node_modules/@noodle-borg/service/dist/credential-route-key.d.ts.map +1 -0
  276. package/node_modules/@noodle-borg/service/dist/credential-route-key.js +17 -0
  277. package/node_modules/@noodle-borg/service/dist/credential-route-key.js.map +1 -0
  278. package/node_modules/@noodle-borg/service/dist/customer-verifier.d.ts.map +1 -1
  279. package/node_modules/@noodle-borg/service/dist/customer-verifier.js +72 -21
  280. package/node_modules/@noodle-borg/service/dist/customer-verifier.js.map +1 -1
  281. package/node_modules/@noodle-borg/service/dist/delegated-token-exchange.d.ts +3 -1
  282. package/node_modules/@noodle-borg/service/dist/delegated-token-exchange.d.ts.map +1 -1
  283. package/node_modules/@noodle-borg/service/dist/delegated-token-exchange.js +24 -2
  284. package/node_modules/@noodle-borg/service/dist/delegated-token-exchange.js.map +1 -1
  285. package/node_modules/@noodle-borg/service/dist/developer-mcp/mount.js +6 -5
  286. package/node_modules/@noodle-borg/service/dist/developer-mcp/mount.js.map +1 -1
  287. package/node_modules/@noodle-borg/service/dist/external-credential-binding-broker.d.ts.map +1 -1
  288. package/node_modules/@noodle-borg/service/dist/external-credential-binding-broker.js +4 -3
  289. package/node_modules/@noodle-borg/service/dist/external-credential-binding-broker.js.map +1 -1
  290. package/node_modules/@noodle-borg/service/dist/google-workload-identity-probe.d.ts +2 -1
  291. package/node_modules/@noodle-borg/service/dist/google-workload-identity-probe.d.ts.map +1 -1
  292. package/node_modules/@noodle-borg/service/dist/google-workload-identity-probe.js +23 -7
  293. package/node_modules/@noodle-borg/service/dist/google-workload-identity-probe.js.map +1 -1
  294. package/node_modules/@noodle-borg/service/dist/google-workload-identity.d.ts.map +1 -1
  295. package/node_modules/@noodle-borg/service/dist/google-workload-identity.js +6 -5
  296. package/node_modules/@noodle-borg/service/dist/google-workload-identity.js.map +1 -1
  297. package/node_modules/@noodle-borg/service/dist/managed-config-broker-options.d.ts +18 -0
  298. package/node_modules/@noodle-borg/service/dist/managed-config-broker-options.d.ts.map +1 -0
  299. package/node_modules/@noodle-borg/service/dist/managed-config-broker-options.js +2 -0
  300. package/node_modules/@noodle-borg/service/dist/managed-config-broker-options.js.map +1 -0
  301. package/node_modules/@noodle-borg/service/dist/oauth/platform-principal-guard.d.ts.map +1 -1
  302. package/node_modules/@noodle-borg/service/dist/oauth/platform-principal-guard.js +6 -5
  303. package/node_modules/@noodle-borg/service/dist/oauth/platform-principal-guard.js.map +1 -1
  304. package/node_modules/@noodle-borg/service/dist/oauth/provider.d.ts.map +1 -1
  305. package/node_modules/@noodle-borg/service/dist/oauth/provider.js +10 -8
  306. package/node_modules/@noodle-borg/service/dist/oauth/provider.js.map +1 -1
  307. package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.js +5 -5
  308. package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.js.map +1 -1
  309. package/node_modules/@noodle-borg/service/dist/routes/assistant-agent.d.ts.map +1 -1
  310. package/node_modules/@noodle-borg/service/dist/routes/assistant-agent.js +3 -2
  311. package/node_modules/@noodle-borg/service/dist/routes/assistant-agent.js.map +1 -1
  312. package/node_modules/@noodle-borg/service/dist/routes/assistant-interaction-resolution.d.ts.map +1 -1
  313. package/node_modules/@noodle-borg/service/dist/routes/assistant-interaction-resolution.js +2 -1
  314. package/node_modules/@noodle-borg/service/dist/routes/assistant-interaction-resolution.js.map +1 -1
  315. package/node_modules/@noodle-borg/service/dist/routes/assistant-interactions.d.ts.map +1 -1
  316. package/node_modules/@noodle-borg/service/dist/routes/assistant-interactions.js +3 -2
  317. package/node_modules/@noodle-borg/service/dist/routes/assistant-interactions.js.map +1 -1
  318. package/node_modules/@noodle-borg/service/dist/routes/assistant.d.ts.map +1 -1
  319. package/node_modules/@noodle-borg/service/dist/routes/assistant.js +8 -7
  320. package/node_modules/@noodle-borg/service/dist/routes/assistant.js.map +1 -1
  321. package/node_modules/@noodle-borg/service/dist/routes/auth-doctor-live.d.ts.map +1 -1
  322. package/node_modules/@noodle-borg/service/dist/routes/auth-doctor-live.js +6 -3
  323. package/node_modules/@noodle-borg/service/dist/routes/auth-doctor-live.js.map +1 -1
  324. package/node_modules/@noodle-borg/service/dist/store.d.ts +3 -1
  325. package/node_modules/@noodle-borg/service/dist/store.d.ts.map +1 -1
  326. package/node_modules/@noodle-borg/transport-http/dist/handler.js +18 -2
  327. package/node_modules/@noodle-borg/transport-http/dist/handler.js.map +1 -1
  328. package/node_modules/@noodle-borg/transport-http/dist/identity-authorization.d.ts +2 -0
  329. package/node_modules/@noodle-borg/transport-http/dist/identity-authorization.d.ts.map +1 -1
  330. package/node_modules/@noodle-borg/transport-http/dist/identity-authorization.js +27 -9
  331. package/node_modules/@noodle-borg/transport-http/dist/identity-authorization.js.map +1 -1
  332. package/node_modules/tldts/LICENSE +13 -0
  333. package/node_modules/tldts/README.md +368 -0
  334. package/node_modules/tldts/bin/cli.js +21 -0
  335. package/node_modules/tldts/dist/cjs/index.js +1170 -0
  336. package/node_modules/tldts/dist/cjs/index.js.map +1 -0
  337. package/node_modules/tldts/dist/cjs/src/data/trie.js +12 -0
  338. package/node_modules/tldts/dist/cjs/src/data/trie.js.map +1 -0
  339. package/node_modules/tldts/dist/cjs/src/suffix-trie.js +170 -0
  340. package/node_modules/tldts/dist/cjs/src/suffix-trie.js.map +1 -0
  341. package/node_modules/tldts/dist/cjs/tsconfig.tsbuildinfo +1 -0
  342. package/node_modules/tldts/dist/es6/index.js +41 -0
  343. package/node_modules/tldts/dist/es6/index.js.map +1 -0
  344. package/node_modules/tldts/dist/es6/src/data/trie.js +9 -0
  345. package/node_modules/tldts/dist/es6/src/data/trie.js.map +1 -0
  346. package/node_modules/tldts/dist/es6/src/suffix-trie.js +167 -0
  347. package/node_modules/tldts/dist/es6/src/suffix-trie.js.map +1 -0
  348. package/node_modules/tldts/dist/es6/tsconfig.bundle.tsbuildinfo +1 -0
  349. package/node_modules/tldts/dist/index.cjs.min.js +2 -0
  350. package/node_modules/tldts/dist/index.cjs.min.js.map +1 -0
  351. package/node_modules/tldts/dist/index.esm.min.js +2 -0
  352. package/node_modules/tldts/dist/index.esm.min.js.map +1 -0
  353. package/node_modules/tldts/dist/index.umd.min.js +2 -0
  354. package/node_modules/tldts/dist/index.umd.min.js.map +1 -0
  355. package/node_modules/tldts/dist/types/index.d.ts +8 -0
  356. package/node_modules/tldts/dist/types/src/data/trie.d.ts +7 -0
  357. package/node_modules/tldts/dist/types/src/suffix-trie.d.ts +5 -0
  358. package/node_modules/tldts/index.ts +74 -0
  359. package/node_modules/tldts/package.json +89 -0
  360. package/node_modules/tldts/src/data/trie.ts +8 -0
  361. package/node_modules/tldts/src/suffix-trie.ts +207 -0
  362. package/node_modules/tldts-core/LICENSE +13 -0
  363. package/node_modules/tldts-core/README.md +3 -0
  364. package/node_modules/tldts-core/dist/cjs/index.js +955 -0
  365. package/node_modules/tldts-core/dist/cjs/index.js.map +1 -0
  366. package/node_modules/tldts-core/dist/cjs/src/domain-without-suffix.js +15 -0
  367. package/node_modules/tldts-core/dist/cjs/src/domain-without-suffix.js.map +1 -0
  368. package/node_modules/tldts-core/dist/cjs/src/domain.js +83 -0
  369. package/node_modules/tldts-core/dist/cjs/src/domain.js.map +1 -0
  370. package/node_modules/tldts-core/dist/cjs/src/extract-hostname.js +439 -0
  371. package/node_modules/tldts-core/dist/cjs/src/extract-hostname.js.map +1 -0
  372. package/node_modules/tldts-core/dist/cjs/src/factory.js +128 -0
  373. package/node_modules/tldts-core/dist/cjs/src/factory.js.map +1 -0
  374. package/node_modules/tldts-core/dist/cjs/src/is-ip.js +72 -0
  375. package/node_modules/tldts-core/dist/cjs/src/is-ip.js.map +1 -0
  376. package/node_modules/tldts-core/dist/cjs/src/is-special-use.js +65 -0
  377. package/node_modules/tldts-core/dist/cjs/src/is-special-use.js.map +1 -0
  378. package/node_modules/tldts-core/dist/cjs/src/is-valid.js +80 -0
  379. package/node_modules/tldts-core/dist/cjs/src/is-valid.js.map +1 -0
  380. package/node_modules/tldts-core/dist/cjs/src/lookup/fast-path.js +69 -0
  381. package/node_modules/tldts-core/dist/cjs/src/lookup/fast-path.js.map +1 -0
  382. package/node_modules/tldts-core/dist/cjs/src/lookup/interface.js +3 -0
  383. package/node_modules/tldts-core/dist/cjs/src/lookup/interface.js.map +1 -0
  384. package/node_modules/tldts-core/dist/cjs/src/options.js +23 -0
  385. package/node_modules/tldts-core/dist/cjs/src/options.js.map +1 -0
  386. package/node_modules/tldts-core/dist/cjs/src/subdomain.js +14 -0
  387. package/node_modules/tldts-core/dist/cjs/src/subdomain.js.map +1 -0
  388. package/node_modules/tldts-core/dist/cjs/tsconfig.tsbuildinfo +1 -0
  389. package/node_modules/tldts-core/dist/es6/index.js +4 -0
  390. package/node_modules/tldts-core/dist/es6/index.js.map +1 -0
  391. package/node_modules/tldts-core/dist/es6/src/domain-without-suffix.js +12 -0
  392. package/node_modules/tldts-core/dist/es6/src/domain-without-suffix.js.map +1 -0
  393. package/node_modules/tldts-core/dist/es6/src/domain.js +80 -0
  394. package/node_modules/tldts-core/dist/es6/src/domain.js.map +1 -0
  395. package/node_modules/tldts-core/dist/es6/src/extract-hostname.js +435 -0
  396. package/node_modules/tldts-core/dist/es6/src/extract-hostname.js.map +1 -0
  397. package/node_modules/tldts-core/dist/es6/src/factory.js +123 -0
  398. package/node_modules/tldts-core/dist/es6/src/factory.js.map +1 -0
  399. package/node_modules/tldts-core/dist/es6/src/is-ip.js +69 -0
  400. package/node_modules/tldts-core/dist/es6/src/is-ip.js.map +1 -0
  401. package/node_modules/tldts-core/dist/es6/src/is-special-use.js +62 -0
  402. package/node_modules/tldts-core/dist/es6/src/is-special-use.js.map +1 -0
  403. package/node_modules/tldts-core/dist/es6/src/is-valid.js +77 -0
  404. package/node_modules/tldts-core/dist/es6/src/is-valid.js.map +1 -0
  405. package/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js +66 -0
  406. package/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js.map +1 -0
  407. package/node_modules/tldts-core/dist/es6/src/lookup/interface.js +2 -0
  408. package/node_modules/tldts-core/dist/es6/src/lookup/interface.js.map +1 -0
  409. package/node_modules/tldts-core/dist/es6/src/options.js +20 -0
  410. package/node_modules/tldts-core/dist/es6/src/options.js.map +1 -0
  411. package/node_modules/tldts-core/dist/es6/src/subdomain.js +11 -0
  412. package/node_modules/tldts-core/dist/es6/src/subdomain.js.map +1 -0
  413. package/node_modules/tldts-core/dist/es6/tsconfig.bundle.tsbuildinfo +1 -0
  414. package/node_modules/tldts-core/dist/types/index.d.ts +4 -0
  415. package/node_modules/tldts-core/dist/types/src/domain-without-suffix.d.ts +6 -0
  416. package/node_modules/tldts-core/dist/types/src/domain.d.ts +5 -0
  417. package/node_modules/tldts-core/dist/types/src/extract-hostname.d.ts +17 -0
  418. package/node_modules/tldts-core/dist/types/src/factory.d.ts +29 -0
  419. package/node_modules/tldts-core/dist/types/src/is-ip.d.ts +6 -0
  420. package/node_modules/tldts-core/dist/types/src/is-special-use.d.ts +5 -0
  421. package/node_modules/tldts-core/dist/types/src/is-valid.d.ts +15 -0
  422. package/node_modules/tldts-core/dist/types/src/lookup/fast-path.d.ts +2 -0
  423. package/node_modules/tldts-core/dist/types/src/lookup/interface.d.ts +9 -0
  424. package/node_modules/tldts-core/dist/types/src/options.d.ts +11 -0
  425. package/node_modules/tldts-core/dist/types/src/subdomain.d.ts +4 -0
  426. package/node_modules/tldts-core/index.ts +10 -0
  427. package/node_modules/tldts-core/package.json +68 -0
  428. package/node_modules/tldts-core/src/domain-without-suffix.ts +14 -0
  429. package/node_modules/tldts-core/src/domain.ts +100 -0
  430. package/node_modules/tldts-core/src/extract-hostname.ts +480 -0
  431. package/node_modules/tldts-core/src/factory.ts +199 -0
  432. package/node_modules/tldts-core/src/is-ip.ts +87 -0
  433. package/node_modules/tldts-core/src/is-special-use.ts +65 -0
  434. package/node_modules/tldts-core/src/is-valid.ts +89 -0
  435. package/node_modules/tldts-core/src/lookup/fast-path.ts +80 -0
  436. package/node_modules/tldts-core/src/lookup/interface.ts +10 -0
  437. package/node_modules/tldts-core/src/options.ts +45 -0
  438. package/node_modules/tldts-core/src/subdomain.ts +11 -0
  439. package/package.json +3 -1
package/dist/deploy.js CHANGED
@@ -411,7 +411,7 @@ function prepareAuthoringModuleDir(dir) {
411
411
  './react': './react.mjs',
412
412
  },
413
413
  }));
414
- writeFileSync(join(self, 'index.mjs'), "export { annotations, asset, bind, clientCredentials, connector, connection, customerAuth, embeddedAssistant, externalExchange, gmailConnector, googleWorkloadIdentity, handoffSession, managedSecret, openAICompatible, prompt, resource, secret, server, tool, variable, when, z } from '@noodle-borg/authoring';\n");
414
+ writeFileSync(join(self, 'index.mjs'), "export { annotations, asset, bind, clientCredentials, connector, connection, customerAuth, customerEndpoint, embeddedAssistant, externalExchange, gmailConnector, googleWorkloadIdentity, handoffSession, managedSecret, openAICompatible, prompt, resource, secret, server, tool, variable, when, z } from '@noodle-borg/authoring';\n");
415
415
  writeFileSync(join(self, 'platform.mjs'), "export { noodlePlatform, noodlePlatformCatalog } from '@noodle-borg/authoring';\n");
416
416
  writeFileSync(join(self, 'react.mjs'), "export { generateHelpers } from '@noodle-borg/authoring/react';\n");
417
417
  }
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export type { ServerDefinition } from '@noodle-borg/authoring';
2
- export { type AssistantLabels, type AssistantLayoutMode, type AssistantPosition, type AssistantPresentationOptions, type AssistantPresentationTone, type AssistantThemeMode, type AssistantUiOptions, annotations, asset, type BoundConnectorRef, type BrandThemeTokens, bind, type ConnectionBinding, type ConnectionRef, type ConnectionSource, clientCredentials, connection, connector, customerAuth, type EmbeddedAssistantConfig, type EmbeddedAssistantOptions, embeddedAssistant, externalExchange, type GoogleWorkloadIdentityAccess, gmailConnector, googleWorkloadIdentity, handoffSession, managedSecret, type OpenAICompatibleModel, type OpenAICompatibleModelInput, openAICompatible, prompt, resource, secret, server, tool, variable, when, z, } from '@noodle-borg/authoring';
2
+ export { type AssistantLabels, type AssistantLayoutMode, type AssistantPosition, type AssistantPresentationOptions, type AssistantPresentationTone, type AssistantThemeMode, type AssistantUiOptions, annotations, asset, type BoundConnectorRef, type BrandThemeTokens, bind, type ConnectionBinding, type ConnectionRef, type ConnectionSource, type CustomerAuthRouting, type CustomerEndpointClaimMapping, type CustomerEndpointPolicy, type CustomerEndpointRef, clientCredentials, connection, connector, customerAuth, customerEndpoint, type EmbeddedAssistantConfig, type EmbeddedAssistantOptions, embeddedAssistant, externalExchange, type GoogleWorkloadIdentityAccess, gmailConnector, googleWorkloadIdentity, handoffSession, managedSecret, type OpenAICompatibleModel, type OpenAICompatibleModelInput, openAICompatible, prompt, resource, secret, server, tool, variable, when, z, } from '@noodle-borg/authoring';
3
3
  export { run } from './cli.js';
4
4
  export { appendServer, type ConfigLocation, clearConfig, configPath, maskToken, type NoodleConfig, readConfig, readServers, resolveAuthToken, resolveServiceUrl, type SavedServer, serversPath, writeConfig, } from './config.js';
5
5
  export { DEFAULT_SERVICE_URL, type DeployOptions, type DeployOutcome, deploy } from './deploy.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,WAAW,EACX,KAAK,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,IAAI,EACJ,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,YAAY,EACZ,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,4BAA4B,EACjC,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,aAAa,EACb,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,gBAAgB,EAChB,MAAM,EACN,QAAQ,EACR,MAAM,EACN,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,CAAC,GACF,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EACL,YAAY,EACZ,KAAK,cAAc,EACnB,WAAW,EACX,UAAU,EACV,SAAS,EACT,KAAK,YAAY,EACjB,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,WAAW,EAChB,WAAW,EACX,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,KAAK,eAAe,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AACtF,OAAO,EACL,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,eAAe,EACf,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,8BAA8B,EAC9B,kBAAkB,EAClB,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,wBAAwB,EACxB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,yBAAyB,EACzB,KAAK,2BAA2B,EAChC,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,KAAK,UAAU,EACf,KAAK,UAAU,EACf,eAAe,EACf,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,WAAW,EACX,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,eAAe,EACf,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,QAAQ,GACT,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { annotations, asset, bind, clientCredentials, connection, connector, customerAuth, embeddedAssistant, externalExchange, gmailConnector, googleWorkloadIdentity, handoffSession, managedSecret, openAICompatible, prompt, resource, secret, server, tool, variable, when, z, } from '@noodle-borg/authoring';
1
+ export { annotations, asset, bind, clientCredentials, connection, connector, customerAuth, customerEndpoint, embeddedAssistant, externalExchange, gmailConnector, googleWorkloadIdentity, handoffSession, managedSecret, openAICompatible, prompt, resource, secret, server, tool, variable, when, z, } from '@noodle-borg/authoring';
2
2
  export { run } from './cli.js';
3
3
  export { appendServer, clearConfig, configPath, maskToken, readConfig, readServers, resolveAuthToken, resolveServiceUrl, serversPath, writeConfig, } from './config.js';
4
4
  export { DEFAULT_SERVICE_URL, deploy } from './deploy.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAQL,WAAW,EACX,KAAK,EAGL,IAAI,EAIJ,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,YAAY,EAGZ,iBAAiB,EACjB,gBAAgB,EAEhB,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,aAAa,EAGb,gBAAgB,EAChB,MAAM,EACN,QAAQ,EACR,MAAM,EACN,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,CAAC,GACF,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EACL,YAAY,EAEZ,WAAW,EACX,UAAU,EACV,SAAS,EAET,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EAEjB,WAAW,EACX,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAA0C,MAAM,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EAAyD,GAAG,EAAE,MAAM,UAAU,CAAC;AACtF,OAAO,EACL,sBAAsB,EAItB,eAAe,EACf,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,8BAA8B,EAC9B,kBAAkB,EAClB,YAAY,EAOZ,wBAAwB,EACxB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,yBAAyB,EAEzB,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAGL,eAAe,EACf,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,wBAAwB,EAGxB,WAAW,EAGX,uBAAuB,EAGvB,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,eAAe,EACf,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAIL,QAAQ,GACT,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAQL,WAAW,EACX,KAAK,EAGL,IAAI,EAQJ,iBAAiB,EACjB,UAAU,EACV,SAAS,EACT,YAAY,EACZ,gBAAgB,EAGhB,iBAAiB,EACjB,gBAAgB,EAEhB,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,aAAa,EAGb,gBAAgB,EAChB,MAAM,EACN,QAAQ,EACR,MAAM,EACN,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,CAAC,GACF,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EACL,YAAY,EAEZ,WAAW,EACX,UAAU,EACV,SAAS,EAET,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EAEjB,WAAW,EACX,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAA0C,MAAM,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EAAyD,GAAG,EAAE,MAAM,UAAU,CAAC;AACtF,OAAO,EACL,sBAAsB,EAItB,eAAe,EACf,qBAAqB,EACrB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,8BAA8B,EAC9B,kBAAkB,EAClB,YAAY,EAOZ,wBAAwB,EACxB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,yBAAyB,EAEzB,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAGL,eAAe,EACf,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,wBAAwB,EAGxB,WAAW,EAGX,uBAAuB,EAGvB,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,eAAe,EACf,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EAIL,QAAQ,GACT,MAAM,eAAe,CAAC"}
@@ -9,8 +9,8 @@ export function platformSupportFailure(argv, platform) {
9
9
  return {
10
10
  code: 'unsupported_platform',
11
11
  message: 'Noodle CLI commands run on macOS or Windows through WSL2.',
12
- cause: 'Native Windows shells are not supported in this first slice.',
13
- fix: 'Install WSL2 with Ubuntu and run Noodle from its Linux terminal.',
12
+ cause: 'Native PowerShell, Command Prompt, and Git Bash are not supported.',
13
+ fix: 'Install WSL2 with Ubuntu and run Noodle from its Bash shell.',
14
14
  next: 'wsl --install -d Ubuntu',
15
15
  };
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"platform-support.js","sourceRoot":"","sources":["../src/platform-support.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform-support.js","sourceRoot":"","sources":["../src/platform-support.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"error-fixes.d.ts","sourceRoot":"","sources":["../../src/curated/error-fixes.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAmG9C,CAAC"}
1
+ {"version":3,"file":"error-fixes.d.ts","sourceRoot":"","sources":["../../src/curated/error-fixes.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAmH9C,CAAC"}
@@ -56,6 +56,14 @@ export const ERROR_FIXES = {
56
56
  unsupported_credential_profile: 'Select a credential profile declared by the connector and accepted by the operation; use the reported suggestions instead of inventing a profile name.',
57
57
  credential_scope_mismatch: 'Declare a connection source whose scopes include every operation-required scope, or select an external exchange provider that can mint them.',
58
58
  credential_audience_mismatch: 'Set the connection source audience to the operation-required audience exactly, or use an external exchange provider that can mint it.',
59
+ customer_endpoint_auth_required: 'Protect the app with direct or federated `customerAuth` OIDC and map every reachable `customerEndpoint` key under auth routing.',
60
+ customer_endpoint_mapping_required: 'Add the endpoint key at the cited auth routing path; every direct/federated issuer must map every customer endpoint used by the app.',
61
+ customer_endpoint_unknown_mapping: 'Remove the unknown or unused auth routing key, or use that exact declared `customerEndpoint` key from a reachable connector operation.',
62
+ customer_endpoint_bridge_unsupported: 'Replace the Firebase/Microsoft bridge with direct or federated OIDC before using auth-derived customer connector endpoints.',
63
+ customer_endpoint_action_unsupported: 'Use a read operation for this customer-routed call until route-bound action confirmation support is available.',
64
+ customer_endpoint_surface_unsupported: 'Move the customer-routed call into a tool fulfilment; routed resources, prompts, and ambient providers are unsupported.',
65
+ customer_endpoint_credential_source_unsupported: 'Remove the manifest connection binding; a customer-routed connector uses its declared delegated token exchange auth or no auth.',
66
+ customer_endpoint_policy_conflict: 'Give every reachable declaration of this endpoint key one identical policy, or rename keys whose allowed origins differ.',
59
67
  unused_connector_alias: 'A declared connector alias is never called; remove the unused `use` entry or wire it into a tool.',
60
68
  arg_mismatch: 'A connector call is missing or adds arguments; match the operation signature under `expected`/`got`.',
61
69
  };
@@ -1 +1 @@
1
- {"version":3,"file":"error-fixes.js","sourceRoot":"","sources":["../../src/curated/error-fixes.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,EAAE;AACF,uFAAuF;AACvF,yFAAyF;AACzF,0DAA0D;AAC1D,0FAA0F;AAC1F,6FAA6F;AAE7F,MAAM,CAAC,MAAM,WAAW,GAA2B;IACjD,gBAAgB,EACd,+HAA+H;IACjI,aAAa,EACX,8HAA8H;IAChI,YAAY,EACV,gHAAgH;IAClH,aAAa,EACX,4IAA4I;IAC9I,wBAAwB,EACtB,2GAA2G;IAC7G,cAAc,EAAE,iFAAiF;IACjG,4BAA4B,EAC1B,oGAAoG;IACtG,2BAA2B,EACzB,kOAAkO;IACpO,qBAAqB,EACnB,4GAA4G;IAC9G,YAAY,EACV,2HAA2H;IAC7H,kBAAkB,EAChB,mGAAmG;IACrG,kBAAkB,EAChB,kHAAkH;IACpH,mBAAmB,EACjB,6FAA6F;IAC/F,kBAAkB,EAAE,kEAAkE;IACtF,iBAAiB,EACf,0GAA0G;IAC5G,qBAAqB,EACnB,4GAA4G;IAC9G,yBAAyB,EACvB,kHAAkH;IACpH,mBAAmB,EACjB,+FAA+F;IACjG,gBAAgB,EACd,0FAA0F;IAC5F,gBAAgB,EACd,gGAAgG;IAClG,aAAa,EAAE,8DAA8D;IAC7E,iBAAiB,EACf,uHAAuH;IACzH,kBAAkB,EAChB,oLAAoL;IACtL,0BAA0B,EACxB,mLAAmL;IACrL,wBAAwB,EACtB,uIAAuI;IACzI,yBAAyB,EACvB,kJAAkJ;IACpJ,iBAAiB,EACf,4GAA4G;IAC9G,sBAAsB,EACpB,kJAAkJ;IACpJ,kBAAkB,EAAE,2EAA2E;IAC/F,gBAAgB,EAAE,qDAAqD;IACvE,sBAAsB,EAAE,uEAAuE;IAC/F,wBAAwB,EACtB,wEAAwE;IAC1E,gBAAgB,EACd,2FAA2F;IAC7F,mBAAmB,EACjB,8GAA8G;IAChH,0BAA0B,EACxB,8FAA8F;IAChG,qBAAqB,EACnB,6EAA6E;IAC/E,sBAAsB,EACpB,oGAAoG;IACtG,2BAA2B,EACzB,mIAAmI;IACrI,qBAAqB,EACnB,mKAAmK;IACrK,2BAA2B,EACzB,mJAAmJ;IACrJ,aAAa,EACX,yFAAyF;IAC3F,8BAA8B,EAC5B,8EAA8E;IAChF,kBAAkB,EAChB,oHAAoH;IACtH,uBAAuB,EACrB,iHAAiH;IACnH,wBAAwB,EACtB,qHAAqH;IACvH,iBAAiB,EACf,oHAAoH;IACtH,0BAA0B,EACxB,wIAAwI;IAC1I,8BAA8B,EAC5B,wJAAwJ;IAC1J,yBAAyB,EACvB,8IAA8I;IAChJ,4BAA4B,EAC1B,uIAAuI;IACzI,sBAAsB,EACpB,mGAAmG;IACrG,YAAY,EACV,sGAAsG;CACzG,CAAC"}
1
+ {"version":3,"file":"error-fixes.js","sourceRoot":"","sources":["../../src/curated/error-fixes.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,EAAE;AACF,uFAAuF;AACvF,yFAAyF;AACzF,0DAA0D;AAC1D,0FAA0F;AAC1F,6FAA6F;AAE7F,MAAM,CAAC,MAAM,WAAW,GAA2B;IACjD,gBAAgB,EACd,+HAA+H;IACjI,aAAa,EACX,8HAA8H;IAChI,YAAY,EACV,gHAAgH;IAClH,aAAa,EACX,4IAA4I;IAC9I,wBAAwB,EACtB,2GAA2G;IAC7G,cAAc,EAAE,iFAAiF;IACjG,4BAA4B,EAC1B,oGAAoG;IACtG,2BAA2B,EACzB,kOAAkO;IACpO,qBAAqB,EACnB,4GAA4G;IAC9G,YAAY,EACV,2HAA2H;IAC7H,kBAAkB,EAChB,mGAAmG;IACrG,kBAAkB,EAChB,kHAAkH;IACpH,mBAAmB,EACjB,6FAA6F;IAC/F,kBAAkB,EAAE,kEAAkE;IACtF,iBAAiB,EACf,0GAA0G;IAC5G,qBAAqB,EACnB,4GAA4G;IAC9G,yBAAyB,EACvB,kHAAkH;IACpH,mBAAmB,EACjB,+FAA+F;IACjG,gBAAgB,EACd,0FAA0F;IAC5F,gBAAgB,EACd,gGAAgG;IAClG,aAAa,EAAE,8DAA8D;IAC7E,iBAAiB,EACf,uHAAuH;IACzH,kBAAkB,EAChB,oLAAoL;IACtL,0BAA0B,EACxB,mLAAmL;IACrL,wBAAwB,EACtB,uIAAuI;IACzI,yBAAyB,EACvB,kJAAkJ;IACpJ,iBAAiB,EACf,4GAA4G;IAC9G,sBAAsB,EACpB,kJAAkJ;IACpJ,kBAAkB,EAAE,2EAA2E;IAC/F,gBAAgB,EAAE,qDAAqD;IACvE,sBAAsB,EAAE,uEAAuE;IAC/F,wBAAwB,EACtB,wEAAwE;IAC1E,gBAAgB,EACd,2FAA2F;IAC7F,mBAAmB,EACjB,8GAA8G;IAChH,0BAA0B,EACxB,8FAA8F;IAChG,qBAAqB,EACnB,6EAA6E;IAC/E,sBAAsB,EACpB,oGAAoG;IACtG,2BAA2B,EACzB,mIAAmI;IACrI,qBAAqB,EACnB,mKAAmK;IACrK,2BAA2B,EACzB,mJAAmJ;IACrJ,aAAa,EACX,yFAAyF;IAC3F,8BAA8B,EAC5B,8EAA8E;IAChF,kBAAkB,EAChB,oHAAoH;IACtH,uBAAuB,EACrB,iHAAiH;IACnH,wBAAwB,EACtB,qHAAqH;IACvH,iBAAiB,EACf,oHAAoH;IACtH,0BAA0B,EACxB,wIAAwI;IAC1I,8BAA8B,EAC5B,wJAAwJ;IAC1J,yBAAyB,EACvB,8IAA8I;IAChJ,4BAA4B,EAC1B,uIAAuI;IACzI,+BAA+B,EAC7B,iIAAiI;IACnI,kCAAkC,EAChC,sIAAsI;IACxI,iCAAiC,EAC/B,wIAAwI;IAC1I,oCAAoC,EAClC,6HAA6H;IAC/H,oCAAoC,EAClC,gHAAgH;IAClH,qCAAqC,EACnC,yHAAyH;IAC3H,+CAA+C,EAC7C,iIAAiI;IACnI,iCAAiC,EAC/B,0HAA0H;IAC5H,sBAAsB,EACpB,mGAAmG;IACrG,YAAY,EACV,sGAAsG;CACzG,CAAC"}
@@ -49,11 +49,11 @@ export const BUNDLED_EXAMPLE_FILES = [
49
49
  { relPath: "examples/acme-tasks/src/views/widget-style.css", content: ":root {\n color-scheme: light dark;\n font-family:\n Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n --nw-bg: #ffffff;\n --nw-surface: #f7f5ff;\n --nw-text: #1c1830;\n --nw-muted: #635d80;\n --nw-border: #e2ddf5;\n --nw-accent: #7c3aed;\n --nw-accent-strong: #6d28d9;\n --nw-accent-soft: #efe9ff;\n --nw-high: #dc2626;\n --nw-medium: #b45309;\n --nw-low: #2563eb;\n --nw-radius: 10px;\n --nw-shadow: 0 18px 50px rgb(30 20 60 / 12%);\n}\n\n.dark,\n[data-theme=\"dark\"] {\n --nw-bg: #161228;\n --nw-surface: #1d1735;\n --nw-text: #f2eeff;\n --nw-muted: #a99fce;\n --nw-border: #342a54;\n --nw-accent: #a78bfa;\n --nw-accent-strong: #8b5cf6;\n --nw-accent-soft: #2a2148;\n --nw-high: #f87171;\n --nw-medium: #fbbf24;\n --nw-low: #60a5fa;\n --nw-shadow: 0 18px 50px rgb(0 0 0 / 32%);\n}\n\n* {\n box-sizing: border-box;\n}\n\nbody {\n margin: 0;\n background: var(--nw-bg);\n color: var(--nw-text);\n}\n\nbutton,\ninput,\nselect {\n font: inherit;\n}\n\n.nw-shell {\n min-height: 100vh;\n padding: 14px;\n background: var(--nw-bg);\n color: var(--nw-text);\n}\n\n.nw-card {\n max-width: 620px;\n margin: 0 auto;\n background: var(--nw-surface);\n border: 1px solid var(--nw-border);\n border-radius: var(--nw-radius);\n box-shadow: var(--nw-shadow);\n overflow: hidden;\n}\n\n.nw-header {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 16px;\n border-bottom: 1px solid var(--nw-border);\n}\n\n.nw-icon svg {\n width: 24px;\n height: 24px;\n fill: none;\n stroke: var(--nw-accent);\n stroke-width: 2;\n stroke-linecap: round;\n stroke-linejoin: round;\n}\n\n.nw-title-block {\n flex: 1;\n min-width: 0;\n}\n\n.nw-title {\n margin: 0;\n font-size: 17px;\n font-weight: 700;\n}\n\n.nw-subtitle {\n margin: 2px 0 0;\n font-size: 13px;\n color: var(--nw-muted);\n}\n\n.nw-chip {\n padding: 4px 10px;\n border-radius: 999px;\n background: var(--nw-accent-soft);\n color: var(--nw-accent-strong);\n font-size: 12px;\n font-weight: 600;\n}\n\n.nw-capture {\n display: flex;\n gap: 8px;\n padding: 14px 16px 4px;\n}\n\n.nw-input {\n flex: 1;\n padding: 9px 12px;\n border: 1px solid var(--nw-border);\n border-radius: 10px;\n background: var(--nw-bg);\n color: var(--nw-text);\n}\n\n.nw-button {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 9px 14px;\n border: 1px solid var(--nw-border);\n border-radius: 10px;\n background: var(--nw-bg);\n color: var(--nw-text);\n cursor: pointer;\n}\n\n.nw-button-primary {\n background: var(--nw-accent);\n border-color: var(--nw-accent);\n color: #ffffff;\n font-weight: 600;\n}\n\n.nw-button-primary:disabled {\n opacity: 0.6;\n cursor: default;\n}\n\n.nw-list {\n list-style: none;\n margin: 0;\n padding: 8px 16px 4px;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n\n.nw-task {\n display: flex;\n align-items: center;\n gap: 10px;\n padding: 10px 12px;\n border: 1px solid var(--nw-border);\n border-radius: 12px;\n background: var(--nw-bg);\n}\n\n.nw-task-title {\n flex: 1;\n min-width: 0;\n}\n\n.nw-task-done {\n opacity: 0.55;\n}\n\n.nw-task-done .nw-task-title {\n text-decoration: line-through;\n}\n\n.nw-check {\n width: 22px;\n height: 22px;\n border: 1.5px solid var(--nw-border);\n border-radius: 999px;\n background: transparent;\n color: #ffffff;\n cursor: pointer;\n flex: none;\n}\n\n.nw-check-on {\n background: var(--nw-accent);\n border-color: var(--nw-accent);\n}\n\n.nw-priority {\n padding: 5px 8px;\n border: 1px solid var(--nw-border);\n border-radius: 8px;\n background: var(--nw-bg);\n color: var(--nw-text);\n font-size: 12px;\n font-weight: 600;\n}\n\n.nw-priority-high {\n color: var(--nw-high);\n}\n\n.nw-priority-medium {\n color: var(--nw-medium);\n}\n\n.nw-priority-low {\n color: var(--nw-low);\n}\n\n.nw-note {\n margin: 0;\n padding: 8px 16px 16px;\n font-size: 12px;\n color: var(--nw-muted);\n}\n" },
50
50
  { relPath: "examples/acme-tasks/test/server.test.ts", content: "import { describe, expect, it } from 'vitest';\nimport app from '../src/server.js';\n\ndescribe('acme-tasks example', () => {\n it('exports a Noodle server definition', () => {\n expect(typeof app.toManifest).toBe('function');\n });\n\n it('exposes a tool for each of the top-3 prioritized flows', async () => {\n // Capture → add_task, Prioritize → list_today (+ set_priority helper), Complete → complete_task.\n const text = JSON.stringify(await app.toManifest());\n expect(text).toContain('add_task');\n expect(text).toContain('list_today');\n expect(text).toContain('complete_task');\n expect(text).toContain('set_priority');\n });\n\n it('seeds today’s list highest-priority first', async () => {\n const text = JSON.stringify(await app.toManifest());\n expect(text).toMatch(/\"tasks\":\\[\\{\"id\":\"email_vendor\".*\"priority\":\"high\"/);\n });\n\n it('opts the conversational completion action into runtime confirmation', async () => {\n const manifest = await app.toManifest();\n const completeTask = manifest.tools.find((candidate) => candidate.name === 'complete_task');\n const addTask = manifest.tools.find((candidate) => candidate.name === 'add_task');\n\n expect(completeTask?.annotations?.confirm).toBe(true);\n expect(addTask?.annotations).not.toHaveProperty('confirm');\n });\n});\n" },
51
51
  { relPath: "examples/acme-tasks/vitest.config.ts", content: "import { defineConfig } from 'vitest/config';\n\n// Local config so `npm test` (vitest run) discovers this example's own tests instead of inheriting a\n// parent monorepo config's include globs.\nexport default defineConfig({\n test: { include: ['test/**/*.test.ts'] },\n});\n" },
52
- { relPath: "examples/customer-auth/README.md", content: "# Customer Auth - NoodleSeed.com Firebase customer identity\n\nThis curated example owns the customer/end-user authentication with Firebase bridge capability slot. It is\nthe NoodleSeed.com dogfood app for proving that a SaaS app can protect an MCP endpoint with its own customer\nidentity provider while still using the generic Noodle Seed authoring API.\n\nIt also owns the embedded-assistant showcase: the same authenticated MCP surface can be dropped into the\nSaaS web application as a fully customer-branded assistant with independent light and dark themes. The\nassistant loads the active deployment's instructions and model-visible tools rather than installing a stale\nsecond skill bundle. The standard embedded element also hosts linked MCP Apps behind its sandbox bridge.\n\nThe public developer entrypoint is [`src/server.ts`](src/server.ts). It declares `customerAuth.firebase(...)` with\nthe NoodleSeed.com Firebase project and Firebase Web App public config. It exposes a deliberately small MCP\nsurface for org discovery:\n\n- `list_my_organizations` lists the NoodleSeed.com organizations the signed-in customer belongs to (no\n arguments — the org set comes from the verified customer session).\n- `list_org_apps` lists apps for one of those organizations through the dev app API. It is visible and\n callable only when the verified customer has the `org_apps:read` scope and either the `org_admin` or\n `org_member` role.\n\nThe two tools chain: `list_my_organizations` surfaces the `org_id`s the customer can act on, and\n`list_org_apps` takes one of those `org_id`s. There is no NoodleSeed-specific SDK helper. The downstream API\nis an ordinary authored HTTP connector.\n\n## Direct or federated OIDC instead of the built-in adapter\n\nThis flagship uses the managed Firebase adapter. If an app replaces it with `customerAuth.oidc(...)` or\n`customerAuth.federatedOidc(...)`, the app developer owns the authorization server. It must publish the\nprimary path-inserted RFC 8414 URL as direct HTTP 200 JSON with the exact issuer, HTTPS authorization/token/\nregistration/JWKS endpoints, authorization-code and refresh grants, PKCE S256, public-client auth method\n`none`, RFC 8707 resource handling, an access-token `aud` equal to the exact MCP URL, and public signing keys.\n\nRun `noodle auth doctor src/server.ts` before sharing the endpoint. Its issuer-readiness probes perform\nbounded read-only GET checks and never register a client. A successful\n`noodle deploy --access customers` reports the same findings as nonblocking warnings; the application team\nrepairs the issuer rather than adding a Noodle OAuth proxy.\n\nAdding the embedded assistant does not choose or rewrite MCP customer auth. Inspect the exact active\ndeployment before changing configuration:\n\n```sh\nnoodle deployments list --org <org> --app <app> --env <env> --json\n```\n\nThis Firebase bridge intentionally advertises the Noodle authorization server. A direct or federated\nreplacement must advertise its configured tenant issuer. If the exact active direct/federated `customers`\ndeployment instead advertises the platform issuer, report `customer_auth_state_inconsistent` with only the\nendpoint, deployment ID, server version, and sanitized protected-resource metadata. Do not share tokens or\nsecrets, proxy or rewrite metadata, rotate credentials, or redeploy repeatedly to conceal the mismatch.\n\nDuring MCP OAuth login, Noodle Cloud hosts the Firebase bridge page at\n`https://cloud.noodleseed.dev/oauth/customer/firebase/authorize`. The customer app does not add an\nauthorization route. The SaaS operator only configures Firebase Auth to allow the Noodle Cloud origin, and\nNoodle Cloud signs the customer in with Firebase before posting the Firebase ID token back to its own bridge\ncallback.\n\n## How delegated customer credentials are used\n\nThis flagship uses the legacy Firebase provider bridge because it is runnable today. That is distinct from\nCore-v2 account-selecting connector aliases: those declare catalog `credentialProfiles` and bind each alias\nwith `bind(connector, { profile, connection })`. Hosted bound `managedSecret(...)` connections are runnable;\nbound `externalExchange()` and `clientCredentials(...)` currently compile as portable metadata but fail\nclosed before secret or network access until their provider slice lands. Do not replace this example's\nworking delegated-session-cookie path with either unsupported bound exchange source.\n\nThe example has two declarations that work together:\n\n```ts\nauth: customerAuth.firebase({\n projectId: variable('FIREBASE_PROJECT_ID'),\n apiKey: variable('FIREBASE_WEB_API_KEY'),\n authDomain: variable('FIREBASE_AUTH_DOMAIN'),\n user: {\n id: 'sub',\n email: 'email',\n name: 'name',\n tenant: 'firebase.tenant',\n orgs: 'claims.orgs',\n roles: 'claims.roles',\n scopes: 'claims.scopes',\n },\n}),\n```\n\nThat protects the MCP endpoint with the SaaS customer's Firebase identity. The connector then opts into\ndelegated customer credentials:\n\n```ts\nauth: {\n kind: 'delegatedSessionCookie',\n provider: 'firebase',\n sessionUrl: `${noodleseedApiOrigin}/api/auth/session`,\n tokenField: 'idToken',\n},\n```\n\nThe mapped `roles` and `scopes` paths are read only after Firebase verifies the ID token. The restricted\ntool declares its rule beside the rest of its public contract:\n\n```ts\ntool('list_org_apps', {\n authorization: {\n requiredScopes: ['org_apps:read'],\n allowedRoles: ['org_admin', 'org_member'],\n },\n // input, output, and fulfilment...\n});\n```\n\nEvery required scope must be present and at least one allowed role must match. When both lists are declared,\nboth conditions apply. A restricted tool is omitted from `tools/list` for an ineligible customer and a\ndirect `tools/call` still fails closed. Do not use unverified page context, request arguments, connector\nresponses, or an arbitrary generic `roles` claim as authorization input.\n\nTool code calls the connector normally:\n\n```ts\nfulfil({ input, connectors }) {\n const apps = connectors.app_api.listOrgApps({\n org_id: input.org_id,\n skip: input.skip,\n limit: input.limit,\n });\n\n return { result: apps.result };\n}\n```\n\nAt runtime, Noodle Seed verifies the Firebase customer during MCP OAuth, stores that customer's delegated\nFirebase refresh token in the credential broker, and refreshes a short-lived Firebase ID token only when a\nconnector-backed tool calls the NoodleSeed.com API. For this app API, the broker exchanges that ID token at\nthe existing Next.js `/api/auth/session` route and sends the resulting session cookie to the API. The MCP\naccess token remains a Noodle-issued resource-bound token and is never sent to the downstream API.\n\n## Delegated downstream auth for your own API (token exchange)\n\nThe Firebase path above only works for Firebase-session downstreams. When the downstream is **your own\nAPI** with its own token issuance, use `delegatedTokenExchange` instead\n([ADR 0152](../../docs/decisions/0152-delegated-token-exchange-connector-auth.md)): the platform signs a\nshort-lived, JWKS-verifiable assertion of the signed-in user and exchanges it (RFC 8693) at a token\nendpoint you implement, which mints your own user-scoped token — so your API enforces its own per-user\nauthorization on every call. It works for verified direct/federated OIDC, built-in provider identities, and\nembedded assistant sessions, with no per-user OAuth enrollment.\n\n```ts\nauth: {\n kind: 'delegatedTokenExchange',\n tokenUrl: 'https://app.example.com/api/assistant/oauth/token', // origin must be in allowedOrigins\n clientId: variable('EXAMPLE_DELEG_CLIENT_ID'),\n clientSecret: secret('EXAMPLE_DELEG_CLIENT_SECRET'),\n scopes: ['time_off'],\n},\n```\n\nYour endpoint authenticates the broker's client credential, verifies the `subject_token` JWT against the\nplatform issuer JWKS (claims include the verified `sub`, `email`, `name`, declared session `claims`,\n`tenant`, and `deployment`), mints a short-lived user-scoped token, and returns the standard\n`{ access_token, token_type, expires_in }` response. The exact wire contract and a copyable endpoint\nimplementation live in [docs/spec/connectors.md](../../docs/spec/connectors.md) and the Agent Kit\nauthoring-workflow reference (\"Delegated downstream auth\"). `noodle auth doctor` reports each declared\nexchange endpoint.\n\n## Validate\n\n```bash\nnoodle auth doctor examples/customer-auth/src/server.ts\nnoodle validate examples/customer-auth/src/server.ts\n```\n\nAgainst a deployed customer-protected environment, set a short-lived real customer token only in\n`NOODLE_CUSTOMER_TOKEN` and add `--live --org <org> --app <app> --env <env>`. The live doctor performs\ncredential exchanges without invoking either business tool.\n\n## Run locally\n\n```bash\nnoodle dev examples/customer-auth/src/server.ts --app noodleseed-customer-auth\n```\n\n## Configuration\n\nThe embedded assistant uses a customer-supplied OpenAI Chat Completions-compatible endpoint. Configure its\nmanaged values at the Noodle deployment environment; none of these values belongs in the customer web\napplication environment, and the API key never reaches the browser:\n\n```bash\nnoodle variables set ASSISTANT_MODEL_BASE_URL https://model.example.com/v1 --scope env\nnoodle variables set ASSISTANT_MODEL your-model --scope env\nnoodle secrets set ASSISTANT_MODEL_API_KEY --scope env\nnoodle variables set FIREBASE_PROJECT_ID your-firebase-project --scope env\nnoodle variables set FIREBASE_WEB_API_KEY your-firebase-web-api-key --scope env\nnoodle variables set FIREBASE_AUTH_DOMAIN your-firebase-project.firebaseapp.com --scope env\nnoodle check --target embedded-assistant src/server.ts\n```\n\nAssistant origins are exact. Production embedding origins must use HTTPS; plain HTTP is accepted only for\nloopback development origins such as `http://localhost:3000`, `http://127.0.0.1:3000`, or\n`http://[::1]:3000`. `noodle dev` serves the MCP project, not that separate embedding application.\n\nThe assistant's panel, launcher, status header, composer, and message treatment are configured through the\nbounded `presentation` object in `src/server.ts`. The Atlas-style product treatment is the supported\ncustomization ceiling. These primitives derive their colors from the shared server `branding` block and\nrequire no edits to `@noodleseed/assistant`; raw HTML, CSS, inline SVG, renderer class names, and callbacks\nare intentionally not accepted in deployment configuration.\n\nCreate the backend credential after deployment. The CLI writes it to a mode-0600 file and never prints the\nsecret:\n\n```bash\nnoodle assistant clients create --name web --org noodleseed --app customer-auth --env prod\n```\n\nOnly the Noodle service URL, assistant client ID, and assistant client secret belong in the authenticated\ncustomer backend. The model URL, model name, and model API key remain managed by the Noodle deployment.\n\nThe customer's authenticated backend calls `createAssistantSession(...)` from\n`@noodleseed/assistant/server`, passing the already-verified user and browser origin. The browser then uses\nthe returned short-lived session through the managed Web Component/React renderer or a customer-owned UI:\n\n```bash\npnpm add @noodleseed/assistant\n```\n\n```tsx\nimport { NoodleAssistant } from '@noodleseed/assistant/react';\n\n<NoodleAssistant\n sessionEndpoint=\"/api/noodle-assistant/session\"\n theme={resolvedTheme}\n onSessionExpired={() => console.info('Assistant session renewed')}\n/>;\n```\n\n`resolvedTheme` is the application's current `'light' | 'dark'` value. Use `theme=\"auto\"` only when the\nbrowser operating-system preference is intentionally authoritative.\n\nFor an entirely application-owned React renderer, use the renderer-free hook. It creates no custom element\nand returns the AI SDK transcript plus the canonical client commands:\n\n```tsx\n'use client';\n\nimport { useEffect, useState } from 'react';\nimport { NoodleAppView } from '@noodleseed/assistant/react';\nimport { useNoodleAssistant } from '@noodleseed/assistant/react/client';\n\nexport function CustomerAssistant({\n principalKey,\n resolvedTheme,\n}: {\n principalKey: string;\n resolvedTheme: 'light' | 'dark';\n}) {\n const [draft, setDraft] = useState('');\n const { client, messages, status, error } = useNoodleAssistant({\n sessionEndpoint: '/api/noodle-assistant/session',\n principalKey,\n });\n const busy = status === 'submitted' || status === 'streaming';\n const settle = (operation: Promise<void>) => {\n void operation.catch(() => {\n // The hook exposes this same structured failure through `error`.\n });\n };\n\n return (\n <section aria-label=\"Assistant\" aria-busy={busy}>\n {messages.map((message) => (\n <article key={message.id} data-role={message.role}>\n {message.parts.map((part, index) => {\n if (part.type === 'text') return <p key={index}>{part.text}</p>;\n if (part.type === 'data-confirmation') {\n const review = part.data;\n return (\n <section key={review.id} aria-label=\"Review proposed action\">\n <h3>{review.title ?? 'Review proposed action'}</h3>\n {review.description ? <p>{review.description}</p> : null}\n <pre aria-label=\"Proposed action arguments\">\n {JSON.stringify(review.arguments ?? {}, null, 2)}\n </pre>\n <button\n disabled={busy || review.status !== 'pending'}\n onClick={() => settle(client.respond(review.id, { action: 'accept' }))}\n >\n Confirm\n </button>\n <button\n disabled={busy || review.status !== 'pending'}\n onClick={() => settle(client.respond(review.id, { action: 'decline' }))}\n >\n Don't proceed\n </button>\n </section>\n );\n }\n if (part.type === 'data-input-request') {\n const request = part.data;\n return (\n <section key={request.id} aria-label=\"Assistant needs input\">\n <p>{request.message}</p>\n <p>This renderer has not implemented the requested form.</p>\n <button\n disabled={busy || request.status !== 'pending'}\n onClick={() => settle(client.respond(request.id, { action: 'decline' }))}\n >\n Cancel request\n </button>\n </section>\n );\n }\n if (part.type === 'data-tool-result') {\n return (\n <pre key={part.data.id} aria-label={`${part.data.tool} result`}>\n {JSON.stringify(part.data.result, null, 2)}\n </pre>\n );\n }\n if (part.type === 'data-view') {\n return (\n <NoodleAppView\n key={`${part.data.id}:${part.data.resourceUri}`}\n client={client}\n view={part.data}\n theme={resolvedTheme}\n />\n );\n }\n return <p key={index}>Unsupported assistant content.</p>;\n })}\n </article>\n ))}\n {error ? <p role=\"alert\">{error.message}</p> : null}\n <form\n onSubmit={(event) => {\n event.preventDefault();\n const message = draft.trim();\n if (!message) return;\n setDraft('');\n settle(client.sendMessage(message));\n }}\n >\n <input\n aria-label=\"Message\"\n value={draft}\n onChange={(event) => setDraft(event.currentTarget.value)}\n />\n {busy ? (\n <button type=\"button\" onClick={() => client.abort()}>\n Stop\n </button>\n ) : (\n <button type=\"submit\">Send</button>\n )}\n </form>\n </section>\n );\n}\n```\n\n`principalKey` stays in the browser. Change it whenever the authenticated user or tenant changes; the hook\nthen aborts and clears the prior session and transcript. The sample fails closed on input requests until its\nfallback is replaced with a form generated from `requestedSchema`. A production renderer must show the\ncomplete confirmation review and both decisions. For `data-view`, map `resourceUri` or `tool` and the\nbounded/redacted result to a component already trusted by this application only when intentionally replacing\nthe linked App with a native UI. Otherwise use `NoodleAppView`; JSON result data is not the App UI. Its\nsemantic lifecycle identity is the client plus `view.id` plus `view.resourceUri`, so parent payload/callback\nrerenders keep the iframe and only a different view or unmount tears down the bridge.\nNever inject `part.data.html`, assign it to `srcdoc`, fetch a `ui://` URI, or reproduce the bridge directly. Pages with a\nContent-Security-Policy must include the Noodle service origin in both `connect-src` and `frame-src`.\n\nBefore the production-equivalent host build, run the presence-only handoff check:\n\n```sh\nnoodle assistant embed --check --json\n```\n\nAdd application-owned delegated-exchange requirements with repeatable `--require-env NAME` flags. The JSON\nreports required and missing names, CSP status, and post-deploy probes without returning environment values\nor writing scaffold files. Map the names through the production secret manager, CI environment, and any\nsecret allowlist; regenerate existing framework-owned environment binding types before the build. Default\nDevtools/model exercises to synthetic data, and obtain approval before sending real connector data to an\nexternal model.\n\nAfter deployment, verify the public delegated exchange without extracting a customer bearer token or invoking\na business operation:\n\n```sh\nnoodle assistant doctor --user-id <real-test-user> --origin \"$PUBLIC_APP_ORIGIN\" --org <org> --app <app> --env <env>\n```\n\nIf the application deliberately sends a first turn on mount, do not combine a persistent \"sent\" ref with a\nmount effect. React Strict Mode can abort that provisional request and then suppress the stable remount.\nSchedule the send after the provisional cleanup and settle its promise:\n\n```tsx\nuseEffect(() => {\n let active = true;\n queueMicrotask(() => {\n if (active) settle(client.sendMessage(initialMessage));\n });\n return () => {\n active = false;\n };\n}, [client, initialMessage]);\n```\n\nFor a chat-first custom host, raw `tool_started` supplies the direct call `id` and technical tool name. Map\nknown tools to concise application copy and use a neutral fallback. Reserve a stable `role=\"status\"` region\nfor thinking, tool activity, and the view skeleton; switch to the ready `NoodleAppView` on `view_available`\nor to `role=\"alert\"` on error. Decorative skeleton shapes stay hidden from assistive technology, and shimmer\nor transition motion is disabled under `prefers-reduced-motion`.\n\nUse `${view.id}:${view.resourceUri}` as transport identity. Different call IDs are distinct invocations and\nmust not be deduplicated generically. If this application intentionally owns one current panel for a known\nresource, declare an application-owned slot for that resource and replace only that slot.\n\nOutside React, subscribe to the DOM-free client directly. It exposes the same conversation as headless AI\nSDK `UIMessage` state, including typed confirmation, input, tool-result, and linked-view parts:\n\n```ts\nimport { createAssistantClient } from '@noodleseed/assistant/client';\n\nconst assistant = createAssistantClient({\n sessionEndpoint: '/api/noodle-assistant/session',\n});\n\nassistant.subscribeChat((state) => {\n renderUIMessageState(state);\n for (const message of state.messages) {\n for (const part of message.parts) {\n if (part.type === 'data-confirmation' && part.data.status === 'pending') {\n renderConfirmation(part.data, (response) => assistant.respond(part.data.id, response));\n }\n }\n }\n});\n```\n\n`theme=\"auto\"` follows the browser operating-system preference, not a SaaS-owned theme toggle. Pass the\napplication's resolved `light`/`dark` theme to both `NoodleAssistant` and `NoodleAppView`; later updates\nreach mounted MCP Apps without remounting them. CSS custom properties inherit through the assistant host, so\ntyped appearance roles may reuse existing application tokens with `var(--app-token)`. The server-level\n`branding` block is inherited by both MCP App widgets and the assistant; documented `--ns-assistant-*`\nsemantic CSS variables remain the final integration escape hatch. There is no second assistant branding\ndeclaration.\nThe end-user UI contains only customer branding.\nText streams progressively. Expired turns re-exchange through the authenticated backend and retry once;\nconsent-bound tool confirmations never replay automatically.\n\nThe Firebase project ID is required because Firebase ID tokens use the project ID as the token audience and\nissuer suffix. The runtime verifies `aud` against the project ID and `iss` against\n`https://securetoken.google.com/<projectId>`.\n\nThe Firebase Web API key and auth domain are public Firebase browser configuration. They let the Noodle\nCloud-hosted bridge initialize Firebase Auth for this customer project; they are not server secrets. Keep\nthem out of source with `variable(...)`, restrict the Firebase key to the expected browser origins and APIs,\nand use `secret(...)` only for credentials that must never reach a browser.\n\nThe `noodleseed_app_api` connector currently points at the NoodleSeed.com dev app surface:\n\n```text\nhttps://dev.noodleseed.com\n```\n\nWhen the customer app moves from `dev.noodleseed.com` to `app.noodleseed.com`, update the connector's\n`noodleseedApiOrigin` constant to the production API origin that serves the same paths.\n\nThe connector uses delegated Firebase customer credentials. During the customer OAuth bridge, Noodle Seed\nverifies the Firebase ID token, stores the Firebase refresh token through the credential broker, and refreshes\na Firebase ID token when the connector calls the NoodleSeed.com app API. The broker then exchanges that ID\ntoken for the app's existing Next.js session cookie. There is no shared `NOODLESEED_APP_API_TOKEN` for this\nexample.\n\nFirebase Auth must list `cloud.noodleseed.dev` as an authorized domain before browser sign-in works in\nproduction.\n\n## Deploy customer-protected to Noodle Seed Cloud\n\n```bash\nnoodle deploy examples/customer-auth/src/server.ts \\\n --org noodleseed \\\n --app customer-auth \\\n --env prod \\\n --access customers\n```\n\nEndpoint:\n\n```text\nhttps://cloud.noodleseed.dev/o/noodleseed/customer-auth/mcp\n```\n\n## MCP Primitives\n\n- Tool `list_my_organizations`: calls `GET /api/organizations` and returns the organizations the signed-in\n customer is a member of. Takes no arguments; the org set is scoped by the verified customer session.\n- Tool `list_org_apps`: calls `GET /api/organizations/{org_id}/apps` for one organization `org_id`.\n\n## Auth boundary\n\nFirebase ID-token verification is handled by Noodle Seed's generic Firebase bridge adapter during OAuth\nissuance. The MCP client receives a Noodle-issued, resource-bound access token marked as a Firebase customer\nidentity; raw Firebase tokens and inbound MCP bearer tokens are never forwarded to tools, connectors,\nwidgets, or downstream systems.\n\nThe connector-backed tools use the credential broker to turn the signed-in Firebase customer session into the\nsame session-cookie credential that the existing NoodleSeed.com Next.js API already expects. The inbound MCP\nbearer token is never used as an app API credential.\n" },
52
+ { relPath: "examples/customer-auth/README.md", content: "# Customer Auth - OIDC identity and customer-routed APIs\n\nThis curated example owns the customer/end-user authentication capability slot. It proves that a SaaS app\ncan protect an MCP endpoint with direct OIDC, retain role/scope-based tool authorization, and route ordinary\nread-only connector calls to the API origin selected by the verified customer's identity provider.\n\nIt also owns the customer-branded embedded-assistant presentation showcase. Embedded sessions lack\ndirect/federated MCP OIDC endpoint claims, so these routed tools fail with `connector_route_unavailable`;\nstatic connectors still support embedded delegated exchange. Exercise routed tools through the MCP endpoint.\n\nThe public developer entrypoint is [`src/server.ts`](src/server.ts). It exposes a deliberately small MCP\nsurface for organization discovery:\n\n- `list_my_organizations` lists the NoodleSeed.com organizations the signed-in customer belongs to (no\n arguments — the org set comes from the verified customer session).\n- `list_org_apps` lists apps for one of those organizations through that tenant's API. It is visible and\n callable only when the verified customer has the `org_apps:read` scope and either the `org_admin` or\n `org_member` role.\n\nThe two tools chain: `list_my_organizations` surfaces the `org_id`s the customer can act on, and\n`list_org_apps` takes one of those `org_id`s. Tool code remains independent of the selected origin.\n\n## Declare the customer endpoint\n\n`customerEndpoint` names one private routing authority and bounds the origins an IdP may select:\n\n```ts\nconst customerApi = customerEndpoint('customer_api', {\n allowedHttpsHostSuffixes: ['api.noodleseed.dev'],\n});\n```\n\nUse either non-empty `allowedHttpsHostSuffixes` or non-empty `allowedHttpsOrigins`, never both. Exact-origin\npolicies may include a non-default port. Suffix policies match only the exact hostname or dot-boundary\nsubdomains on port 443. A routed connector must not add `allowedOrigins`; its endpoint policy is the egress\nallowlist.\n\nThe connector uses that declaration as its normal base URL. Its token endpoint remains a fixed, independently\nvalidated HTTPS URL:\n\n```ts\nconst api = connector('noodleseed_app_api')\n .version('1.0.0')\n .http({\n baseUrl: customerApi,\n auth: {\n kind: 'delegatedTokenExchange',\n tokenUrl: 'https://id.noodleseed.dev/oauth/token',\n clientId: variable('CUSTOMER_API_CLIENT_ID'),\n clientSecret: secret('CUSTOMER_API_CLIENT_SECRET'),\n scopes: ['organizations:read', 'org_apps:read'],\n audience: 'noodleseed-customer-api',\n },\n operations: {\n // read operations...\n },\n });\n```\n\n## Map the endpoint from verified OIDC\n\nThe IdP claim contains the complete base URL, including an optional base path. Routing is separate from the\npublic `${user}` expression scope:\n\n```ts\nauth: customerAuth.oidc({\n issuer: 'https://id.noodleseed.dev',\n audience: 'https://org.cloud.noodleseed.dev/app/mcp',\n claims: {\n id: 'sub',\n email: 'email',\n name: 'name',\n orgs: 'permissions.orgs',\n roles: 'permissions.roles',\n scopes: 'permissions.scopes',\n },\n routing: {\n endpoints: {\n customer_api: { claim: 'tenant.api_base_url' },\n },\n },\n}),\n```\n\nFor federated OIDC, put the same endpoint map on every issuer. Claim paths may differ, but each issuer must\nmap every endpoint the app uses:\n\n```ts\nauth: customerAuth.federatedOidc({\n issuers: [\n {\n issuer: 'https://id.customer-a.com',\n audience: 'https://org.cloud.noodleseed.dev/app/mcp',\n routing: {\n endpoints: {\n customer_api: { claim: 'tenant.api_base_url' },\n },\n },\n },\n {\n issuer: 'https://login.customer-b.com',\n audience: 'https://org.cloud.noodleseed.dev/app/mcp',\n routing: {\n endpoints: {\n customer_api: { claim: 'organization.routes.customer_api' },\n },\n },\n },\n ],\n}),\n```\n\nAt runtime, Noodle Seed validates both the configured audience and exact MCP resource, projects the route\ninto private request state, applies its policy, and freezes it for the call. Missing, malformed, or\ndisallowed claims return `connector_route_unavailable` before credential lookup or connector egress.\nResolved URLs never enter artifacts, `${user}`, logs, model output, widgets, confirmation review, broker cache\nkeys, or delegated exchange assertions.\n\nThis release permits routed reads in tools, including declared nested calls. Routed actions fail with\n`customer_endpoint_action_unsupported`; routed resources, prompts, and ambient context fail with\n`customer_endpoint_surface_unsupported`.\n\nThe application developer owns the direct/federated authorization server. It must publish its path-inserted\nRFC 8414 document as direct HTTP 200 JSON with exact issuer and HTTPS authorization/token/registration/JWKS\nendpoints, authorization-code and refresh grants, PKCE S256, public-client auth method `none`, RFC 8707\nresource handling, and public signing keys. Access tokens must include the exact MCP resource audience; there\nis no audience fallback.\n\nRun `noodle auth doctor src/server.ts` before sharing. Its bounded, read-only probes never register a client.\nAdding the embedded assistant does not choose or rewrite MCP customer auth.\n\n## Per-tool authorization remains independent\n\nThe mapped `roles` and `scopes` paths are read only after OIDC verification. The restricted tool declares its\nrule beside the rest of its public contract:\n\n```ts\ntool('list_org_apps', {\n authorization: {\n requiredScopes: ['org_apps:read'],\n allowedRoles: ['org_admin', 'org_member'],\n },\n // input, output, and fulfilment...\n});\n```\n\nEvery required scope must be present and at least one allowed role must match. When both lists are declared,\nboth conditions apply. Route availability never changes `tools/list`: discovery remains based only on\nroles/scopes. A restricted tool is omitted for an ineligible customer and a guessed direct call still fails\nclosed.\n\nTool code calls the connector normally:\n\n```ts\nfulfil({ input, connectors }) {\n const apps = connectors.app_api.listOrgApps({\n org_id: input.org_id,\n skip: input.skip,\n limit: input.limit,\n });\n\n return { result: apps.result };\n}\n```\n\nThe broker exchanges a short-lived, platform-signed assertion at the fixed token endpoint and caches the\nresult by caller, connector, scopes, and a route fingerprint. The assertion carries only the route key and\nfingerprint, never the URL. The MCP access token is never forwarded to the customer API. The exchange wire\ncontract lives in [docs/spec/connectors.md](../../docs/spec/connectors.md).\n\nFirebase and Microsoft remain supported managed adapters; their provider-specific contracts and tests live\nin [docs/spec/auth-and-policy.md](../../docs/spec/auth-and-policy.md) and the SharePoint flagship.\n\n## Validate\n\n```bash\nnoodle auth doctor examples/customer-auth/src/server.ts\nnoodle validate examples/customer-auth/src/server.ts\n```\n\nAgainst a deployed customer-protected environment, set a short-lived real customer token only in\n`NOODLE_CUSTOMER_TOKEN` and add `--live --org <org> --app <app> --env <env>`. The live doctor performs\ncredential exchanges without invoking either business tool.\n\n## Run locally\n\n```bash\nnoodle dev examples/customer-auth/src/server.ts --app noodleseed-customer-auth\n```\n\n## Configuration\n\nThe embedded assistant uses a customer-supplied OpenAI Chat Completions-compatible endpoint. Configure its\nmanaged values at the Noodle deployment environment; none of these values belongs in the customer web\napplication environment, and the API key never reaches the browser:\n\nThe assistant session carries a verified user, tenant, deployment, roles, and scopes, but not the IdP's\n`tenant.api_base_url` claim. These routed operations are MCP-only; do not copy the route into page context,\nsession claims, tool input, or model instructions.\n\n```bash\nnoodle variables set ASSISTANT_MODEL_BASE_URL https://model.example.com/v1 --scope env\nnoodle variables set ASSISTANT_MODEL your-model --scope env\nnoodle secrets set ASSISTANT_MODEL_API_KEY --scope env\nnoodle variables set CUSTOMER_API_CLIENT_ID your-broker-client-id --scope env\nnoodle secrets set CUSTOMER_API_CLIENT_SECRET --scope env\nnoodle check --target embedded-assistant src/server.ts\n```\n\nAssistant origins are exact. Production embedding origins must use HTTPS; plain HTTP is accepted only for\nloopback development origins such as `http://localhost:3000`, `http://127.0.0.1:3000`, or\n`http://[::1]:3000`. `noodle dev` serves the MCP project, not that separate embedding application.\n\nThe bounded `presentation` object configures the panel, launcher, header, composer, and messages. Its\nprimitives derive colors from shared server `branding`; raw HTML, CSS, inline SVG, renderer classes, and\ncallbacks are not accepted.\n\nCreate the backend credential after deployment. The CLI writes it to a mode-0600 file and never prints the\nsecret:\n\n```bash\nnoodle assistant clients create --name web --org noodleseed --app customer-auth --env prod\n```\n\nOnly the Noodle service URL, assistant client ID, and assistant client secret belong in the authenticated\ncustomer backend. The model URL, model name, and model API key remain managed by the Noodle deployment.\n\nThe customer's authenticated backend calls `createAssistantSession(...)` from\n`@noodleseed/assistant/server`, passing the already-verified user and browser origin. The browser then uses\nthe returned short-lived session through the managed Web Component/React renderer or a customer-owned UI:\n\n```bash\npnpm add @noodleseed/assistant\n```\n\n```tsx\nimport { NoodleAssistant } from '@noodleseed/assistant/react';\n\n<NoodleAssistant\n sessionEndpoint=\"/api/noodle-assistant/session\"\n theme={resolvedTheme}\n onSessionExpired={() => console.info('Assistant session renewed')}\n/>;\n```\n\n`resolvedTheme` is the application's current `'light' | 'dark'` value. Use `theme=\"auto\"` only when the\nbrowser operating-system preference is intentionally authoritative.\n\nFor an entirely application-owned React renderer, use the renderer-free hook. It creates no custom element\nand returns the AI SDK transcript plus the canonical client commands:\n\n```tsx\n'use client';\n\nimport { useEffect, useState } from 'react';\nimport { NoodleAppView } from '@noodleseed/assistant/react';\nimport { useNoodleAssistant } from '@noodleseed/assistant/react/client';\n\nexport function CustomerAssistant({\n principalKey,\n resolvedTheme,\n}: {\n principalKey: string;\n resolvedTheme: 'light' | 'dark';\n}) {\n const [draft, setDraft] = useState('');\n const { client, messages, status, error } = useNoodleAssistant({\n sessionEndpoint: '/api/noodle-assistant/session',\n principalKey,\n });\n const busy = status === 'submitted' || status === 'streaming';\n const settle = (operation: Promise<void>) => {\n void operation.catch(() => {\n // The hook exposes this same structured failure through `error`.\n });\n };\n\n return (\n <section aria-label=\"Assistant\" aria-busy={busy}>\n {messages.map((message) => (\n <article key={message.id} data-role={message.role}>\n {message.parts.map((part, index) => {\n if (part.type === 'text') return <p key={index}>{part.text}</p>;\n if (part.type === 'data-confirmation') {\n const review = part.data;\n return (\n <section key={review.id} aria-label=\"Review proposed action\">\n <h3>{review.title ?? 'Review proposed action'}</h3>\n {review.description ? <p>{review.description}</p> : null}\n <pre aria-label=\"Proposed action arguments\">\n {JSON.stringify(review.arguments ?? {}, null, 2)}\n </pre>\n <button\n disabled={busy || review.status !== 'pending'}\n onClick={() => settle(client.respond(review.id, { action: 'accept' }))}\n >\n Confirm\n </button>\n <button\n disabled={busy || review.status !== 'pending'}\n onClick={() => settle(client.respond(review.id, { action: 'decline' }))}\n >\n Don't proceed\n </button>\n </section>\n );\n }\n if (part.type === 'data-input-request') {\n const request = part.data;\n return (\n <section key={request.id} aria-label=\"Assistant needs input\">\n <p>{request.message}</p>\n <p>This renderer has not implemented the requested form.</p>\n <button\n disabled={busy || request.status !== 'pending'}\n onClick={() => settle(client.respond(request.id, { action: 'decline' }))}\n >\n Cancel request\n </button>\n </section>\n );\n }\n if (part.type === 'data-tool-result') {\n return (\n <pre key={part.data.id} aria-label={`${part.data.tool} result`}>\n {JSON.stringify(part.data.result, null, 2)}\n </pre>\n );\n }\n if (part.type === 'data-view') {\n return (\n <NoodleAppView\n key={`${part.data.id}:${part.data.resourceUri}`}\n client={client}\n view={part.data}\n theme={resolvedTheme}\n />\n );\n }\n return <p key={index}>Unsupported assistant content.</p>;\n })}\n </article>\n ))}\n {error ? <p role=\"alert\">{error.message}</p> : null}\n <form\n onSubmit={(event) => {\n event.preventDefault();\n const message = draft.trim();\n if (!message) return;\n setDraft('');\n settle(client.sendMessage(message));\n }}\n >\n <input\n aria-label=\"Message\"\n value={draft}\n onChange={(event) => setDraft(event.currentTarget.value)}\n />\n {busy ? (\n <button type=\"button\" onClick={() => client.abort()}>\n Stop\n </button>\n ) : (\n <button type=\"submit\">Send</button>\n )}\n </form>\n </section>\n );\n}\n```\n\n`principalKey` stays in the browser. Change it whenever the authenticated user or tenant changes; the hook\nthen aborts and clears the prior session and transcript. The sample fails closed on input requests until its\nfallback is replaced with a form generated from `requestedSchema`. A production renderer must show the\ncomplete confirmation review and both decisions. For `data-view`, map `resourceUri` or `tool` and the\nbounded/redacted result to a component already trusted by this application only when intentionally replacing\nthe linked App with a native UI. Otherwise use `NoodleAppView`; JSON result data is not the App UI. Its\nsemantic lifecycle identity is the client plus `view.id` plus `view.resourceUri`, so parent payload/callback\nrerenders keep the iframe and only a different view or unmount tears down the bridge.\nNever inject `part.data.html`, assign it to `srcdoc`, fetch a `ui://` URI, or reproduce the bridge directly. Pages with a\nContent-Security-Policy must include the Noodle service origin in both `connect-src` and `frame-src`.\n\nBefore the production-equivalent host build, run the presence-only handoff check:\n\n```sh\nnoodle assistant embed --check --json\n```\n\nAdd application-owned delegated-exchange requirements with repeatable `--require-env NAME` flags. The JSON\nreports required and missing names, CSP status, and post-deploy probes without returning environment values\nor writing scaffold files. Map the names through the production secret manager, CI environment, and any\nsecret allowlist; regenerate existing framework-owned environment binding types before the build. Default\nDevtools/model exercises to synthetic data, and obtain approval before sending real connector data to an\nexternal model.\n\nAfter deployment, use the assistant doctor to verify the embed client, model, and static session boundary:\n\n```sh\nnoodle assistant doctor --user-id <real-test-user> --origin \"$PUBLIC_APP_ORIGIN\" --org <org> --app <app> --env <env>\n```\n\nThis does not add an OIDC customer route. Routed operations succeed only through a direct/federated\ncustomer-authenticated MCP request with an allowed endpoint claim.\n\nIf the application deliberately sends a first turn on mount, do not combine a persistent \"sent\" ref with a\nmount effect. React Strict Mode can abort that provisional request and then suppress the stable remount.\nSchedule the send after the provisional cleanup and settle its promise:\n\n```tsx\nuseEffect(() => {\n let active = true;\n queueMicrotask(() => {\n if (active) settle(client.sendMessage(initialMessage));\n });\n return () => {\n active = false;\n };\n}, [client, initialMessage]);\n```\n\nFor a chat-first custom host, raw `tool_started` supplies the direct call `id` and technical tool name. Map\nknown tools to concise application copy and use a neutral fallback. Reserve a stable `role=\"status\"` region\nfor thinking, tool activity, and the view skeleton; switch to the ready `NoodleAppView` on `view_available`\nor to `role=\"alert\"` on error. Decorative skeleton shapes stay hidden from assistive technology, and shimmer\nor transition motion is disabled under `prefers-reduced-motion`.\n\nUse `${view.id}:${view.resourceUri}` as transport identity. Different call IDs are distinct invocations and\nmust not be deduplicated generically. If this application intentionally owns one current panel for a known\nresource, declare an application-owned slot for that resource and replace only that slot.\n\nOutside React, subscribe to the DOM-free client directly. It exposes the same conversation as headless AI\nSDK `UIMessage` state, including typed confirmation, input, tool-result, and linked-view parts:\n\n```ts\nimport { createAssistantClient } from '@noodleseed/assistant/client';\n\nconst assistant = createAssistantClient({\n sessionEndpoint: '/api/noodle-assistant/session',\n});\n\nassistant.subscribeChat((state) => {\n renderUIMessageState(state);\n for (const message of state.messages) {\n for (const part of message.parts) {\n if (part.type === 'data-confirmation' && part.data.status === 'pending') {\n renderConfirmation(part.data, (response) => assistant.respond(part.data.id, response));\n }\n }\n }\n});\n```\n\n`theme=\"auto\"` follows the operating-system preference, not a SaaS-owned toggle. Pass the resolved\n`light`/`dark` theme to `NoodleAssistant` and `NoodleAppView`; updates reach mounted MCP Apps without a\nremount. CSS custom properties inherit through the host, and documented `--ns-assistant-*` variables remain\nthe final integration escape hatch. Server `branding` is shared by widgets and the assistant; there is no\nsecond branding declaration. Text streams progressively. Expired turns re-exchange and retry once;\nconfirmations never replay automatically.\n\nThe customer IdP must place the full tenant API base URL in `tenant.api_base_url`. For example, one verified\ncustomer may receive `https://customer-a.api.noodleseed.dev/v1` and another\n`https://customer-b.api.noodleseed.dev/v1`; both satisfy the declared suffix policy. Application code,\ndeployment variables, and connector arguments do not select the tenant route.\n\n`CUSTOMER_API_CLIENT_ID` and `CUSTOMER_API_CLIENT_SECRET` authenticate only the broker to the fixed exchange\nendpoint. They are not customer API bearer tokens. The exchange endpoint verifies the platform-signed\nsubject assertion and mints a short-lived token scoped to the signed-in user and route binding.\n\n## Deploy customer-protected to Noodle Seed Cloud\n\n```bash\nnoodle deploy examples/customer-auth/src/server.ts \\\n --org noodleseed \\\n --app customer-auth \\\n --env prod \\\n --access customers\n```\n\nEndpoint:\n\n```text\nhttps://cloud.noodleseed.dev/o/noodleseed/customer-auth/mcp\n```\n\n## MCP Primitives\n\n- Tool `list_my_organizations`: calls `GET /api/organizations` and returns the organizations the signed-in\n customer is a member of. Takes no arguments; the org set is scoped by the verified customer session.\n- Tool `list_org_apps`: calls `GET /api/organizations/{org_id}/apps` for one organization `org_id`.\n\n## Auth boundary\n\nNoodle Seed verifies the configured OIDC issuer, audience, and exact MCP resource before reading identity or\nrouting claims. Public caller identity contains the user/role/scope projection; the customer route remains\nprivate request state.\n\nConnector-backed tools ask the broker for a route-bound delegated credential; only the endpoint key and\nfingerprint enter broker cache/single-flight state or the assertion. The route claim and inbound MCP bearer\ntoken never reach tools, connectors, widgets, model output, or downstream systems.\n" },
53
53
  { relPath: "examples/customer-auth/noodle.json", content: "{\n \"entrypoint\": \"src/server.ts\",\n \"name\": \"customer-auth\"\n}\n" },
54
54
  { relPath: "examples/customer-auth/package.json", content: "{\n \"name\": \"customer-auth\",\n \"version\": \"0.1.0\",\n \"private\": true,\n \"type\": \"module\",\n \"scripts\": {\n \"test\": \"vitest run\",\n \"validate\": \"noodle validate\",\n \"dev\": \"noodle dev\",\n \"deploy\": \"noodle deploy\"\n },\n \"devDependencies\": {\n \"@noodleseed/one\": \"latest\",\n \"vitest\": \"latest\"\n }\n}\n" },
55
- { relPath: "examples/customer-auth/src/server.ts", content: "import {\n annotations,\n connector,\n customerAuth,\n embeddedAssistant,\n openAICompatible,\n secret,\n server,\n tool,\n variable,\n z,\n} from '@noodleseed/one';\n\nconst noodleseedApiOrigin = 'https://dev.noodleseed.com';\n\nconst noodleseedApi = connector('noodleseed_app_api')\n .version('1.0.0')\n .http({\n baseUrl: noodleseedApiOrigin,\n allowedOrigins: [noodleseedApiOrigin],\n auth: {\n kind: 'delegatedSessionCookie',\n provider: 'firebase',\n sessionUrl: `${noodleseedApiOrigin}/api/auth/session`,\n tokenField: 'idToken',\n },\n operations: {\n list_org_apps: {\n type: 'read',\n method: 'GET',\n path: '/api/organizations/${args.org_id}/apps',\n query: ['skip', 'limit'],\n input: z.object({\n org_id: z.string(),\n skip: z.number().optional(),\n limit: z.number().optional(),\n }),\n output: z.object({ result: z.unknown().optional() }),\n response: {\n result: '${response}',\n },\n },\n list_organizations: {\n type: 'read',\n method: 'GET',\n path: '/api/organizations',\n output: z.object({ organizations: z.array(z.unknown()).optional() }),\n response: {\n organizations: '${response.organizations}',\n },\n },\n },\n });\n\nexport default server(\n 'noodleseed_customer_auth',\n {\n title: 'NoodleSeed.com Customer Auth',\n version: '1.0.0',\n branding: {\n name: 'Noodle Seed Assistant',\n accent: '#E85D24',\n surface: '#FFFFFF',\n surfaceDark: '#171310',\n colorScheme: 'auto',\n theme: {\n light: { accentText: '#FFFFFF', text: '#1C1714' },\n dark: { accent: '#FF8A4C', accentText: '#1C100A', text: '#FFF8F2' },\n },\n },\n use: { app_api: noodleseedApi },\n auth: customerAuth.firebase({\n projectId: variable('FIREBASE_PROJECT_ID'),\n apiKey: variable('FIREBASE_WEB_API_KEY'),\n authDomain: variable('FIREBASE_AUTH_DOMAIN'),\n user: {\n id: 'sub',\n email: 'email',\n name: 'name',\n tenant: 'firebase.tenant',\n orgs: 'claims.orgs',\n roles: 'claims.roles',\n scopes: 'claims.scopes',\n },\n }),\n instructions:\n 'Customer-authenticated demo. Firebase proves the customer identity, while read-only NoodleSeed.com API calls use broker-managed delegated Firebase customer credentials.',\n assistant: embeddedAssistant({\n model: openAICompatible({\n baseUrl: variable('ASSISTANT_MODEL_BASE_URL'),\n model: variable('ASSISTANT_MODEL'),\n apiKey: secret('ASSISTANT_MODEL_API_KEY'),\n }),\n // Production origins are exact HTTPS; http://localhost:<port> is allowed for local development.\n allowedOrigins: [\n 'https://app.noodleseed.com',\n 'https://dev.noodleseed.com',\n 'http://localhost:3000',\n ],\n layout: { mode: 'floating', position: 'bottom-right', panelWidth: 420 },\n labels: {\n welcomeHeading: 'How can I help with Noodle Seed?',\n composerPlaceholder: 'Ask about your apps…',\n },\n presentation: {\n panel: { surface: 'glass', elevation: 'soft', border: 'subtle' },\n launcher: { icon: 'brand-mark', status: 'session', effect: 'pulse' },\n header: {\n mark: 'status',\n badge: { text: 'Workspace online', tone: 'success', indicator: true },\n },\n composer: { leadingIcon: 'brand-mark', shape: 'pill' },\n },\n suggestedPrompts: ['Show my organizations', 'List the apps in my organization'],\n }),\n },\n [\n tool('list_org_apps', {\n title: 'List organization apps',\n description: 'List NoodleSeed.com apps for an organization from the dev app API.',\n authorization: {\n requiredScopes: ['org_apps:read'],\n allowedRoles: ['org_admin', 'org_member'],\n },\n input: z.object({\n org_id: z.string().meta({ title: 'Organization' }),\n skip: z.number().int().min(0).optional().meta({ title: 'Starting item' }),\n limit: z.number().int().min(1).max(100).optional().meta({ title: 'Maximum results' }),\n }),\n output: z.object({\n result: z.unknown(),\n }),\n annotations: annotations.readOnly(),\n fulfil({ input, connectors }) {\n const apps = connectors.app_api.listOrgApps({\n org_id: input.org_id,\n skip: input.skip,\n limit: input.limit,\n });\n return {\n result: apps.result,\n };\n },\n }),\n tool('list_my_organizations', {\n title: 'List my organizations',\n description: 'List the NoodleSeed.com organizations the signed-in customer belongs to.',\n contextProvider: true,\n input: z.object({}),\n // The dev app API returns every organization for the signed-in customer in one response, with no\n // page parameter to pass through, so the bound is declared on the shape. A customer belongs to a\n // handful of organizations; `noodle check` reports an unbounded list as\n // `tool_design_output_bounds`.\n output: z.object({\n organizations: z.array(z.unknown()).max(100),\n }),\n annotations: annotations.readOnly(),\n fulfil({ connectors }) {\n const organizations = connectors.app_api.listOrganizations();\n return {\n organizations: organizations.organizations,\n };\n },\n }),\n ],\n);\n" },
56
- { relPath: "examples/customer-auth/test/server.test.ts", content: "import { describe, expect, it } from 'vitest';\nimport app from '../src/server.js';\n\ndescribe('customer-auth example', () => {\n it('exports a customer-authenticated, customer-branded embedded assistant', async () => {\n expect(typeof app.toManifest).toBe('function');\n const manifest = await app.toManifest();\n expect(manifest.server.assistant).toMatchObject({\n model: { kind: 'openai-compatible', apiKey: 'ASSISTANT_MODEL_API_KEY' },\n layout: { mode: 'floating' },\n presentation: {\n panel: { surface: 'glass', elevation: 'soft', border: 'subtle' },\n launcher: { icon: 'brand-mark', status: 'session', effect: 'pulse' },\n header: { mark: 'status', badge: { text: 'Workspace online', tone: 'success' } },\n },\n });\n expect(\n manifest.server.assistant?.allowedOrigins.every(\n (origin) => origin.startsWith('https://') || origin.startsWith('http://localhost:'),\n ),\n ).toBe(true);\n expect(manifest.server.branding).toMatchObject({\n name: 'Noodle Seed Assistant',\n colorScheme: 'auto',\n });\n expect(manifest.server.auth).toMatchObject({\n kind: 'bridge',\n provider: 'firebase',\n projectId: '${env.FIREBASE_PROJECT_ID}',\n apiKey: '${env.FIREBASE_WEB_API_KEY}',\n authDomain: '${env.FIREBASE_AUTH_DOMAIN}',\n user: {\n roles: 'claims.roles',\n scopes: 'claims.scopes',\n },\n });\n expect(manifest.tools.find((tool) => tool.name === 'list_org_apps')?.authorization).toEqual({\n requiredScopes: ['org_apps:read'],\n allowedRoles: ['org_admin', 'org_member'],\n });\n expect(\n manifest.tools.find((tool) => tool.name === 'list_my_organizations')?.authorization,\n ).toBeUndefined();\n });\n});\n" },
55
+ { relPath: "examples/customer-auth/src/server.ts", content: "import {\n annotations,\n connector,\n customerAuth,\n customerEndpoint,\n embeddedAssistant,\n openAICompatible,\n secret,\n server,\n tool,\n variable,\n z,\n} from '@noodleseed/one';\n\nconst customerApi = customerEndpoint('customer_api', {\n allowedHttpsHostSuffixes: ['api.noodleseed.dev'],\n});\n\nconst noodleseedApi = connector('noodleseed_app_api')\n .version('1.0.0')\n .http({\n baseUrl: customerApi,\n auth: {\n kind: 'delegatedTokenExchange',\n tokenUrl: 'https://id.noodleseed.dev/oauth/token',\n clientId: variable('CUSTOMER_API_CLIENT_ID'),\n clientSecret: secret('CUSTOMER_API_CLIENT_SECRET'),\n scopes: ['organizations:read', 'org_apps:read'],\n audience: 'noodleseed-customer-api',\n },\n operations: {\n list_org_apps: {\n type: 'read',\n method: 'GET',\n path: '/api/organizations/${args.org_id}/apps',\n query: ['skip', 'limit'],\n input: z.object({\n org_id: z.string(),\n skip: z.number().optional(),\n limit: z.number().optional(),\n }),\n output: z.object({ result: z.unknown().optional() }),\n response: {\n result: '${response}',\n },\n },\n list_organizations: {\n type: 'read',\n method: 'GET',\n path: '/api/organizations',\n output: z.object({ organizations: z.array(z.unknown()).optional() }),\n response: {\n organizations: '${response.organizations}',\n },\n },\n },\n });\n\nexport default server(\n 'noodleseed_customer_auth',\n {\n title: 'NoodleSeed.com Customer Auth',\n version: '1.0.0',\n branding: {\n name: 'Noodle Seed Assistant',\n accent: '#E85D24',\n surface: '#FFFFFF',\n surfaceDark: '#171310',\n colorScheme: 'auto',\n theme: {\n light: { accentText: '#FFFFFF', text: '#1C1714' },\n dark: { accent: '#FF8A4C', accentText: '#1C100A', text: '#FFF8F2' },\n },\n },\n use: { app_api: noodleseedApi },\n auth: customerAuth.oidc({\n issuer: 'https://id.noodleseed.dev',\n audience: 'https://org.cloud.noodleseed.dev/app/mcp',\n claims: {\n id: 'sub',\n email: 'email',\n name: 'name',\n orgs: 'permissions.orgs',\n roles: 'permissions.roles',\n scopes: 'permissions.scopes',\n },\n routing: {\n endpoints: {\n customer_api: { claim: 'tenant.api_base_url' },\n },\n },\n }),\n instructions:\n 'Direct/federated MCP OIDC demo. The customer IdP proves identity and privately selects the tenant API base URL for read-only MCP calls, while the broker supplies delegated credentials.',\n assistant: embeddedAssistant({\n model: openAICompatible({\n baseUrl: variable('ASSISTANT_MODEL_BASE_URL'),\n model: variable('ASSISTANT_MODEL'),\n apiKey: secret('ASSISTANT_MODEL_API_KEY'),\n }),\n // Production origins are exact HTTPS; http://localhost:<port> is allowed for local development.\n allowedOrigins: [\n 'https://app.noodleseed.com',\n 'https://dev.noodleseed.com',\n 'http://localhost:3000',\n ],\n layout: { mode: 'floating', position: 'bottom-right', panelWidth: 420 },\n labels: {\n welcomeHeading: 'How can I help with Noodle Seed?',\n composerPlaceholder: 'Ask about your apps…',\n },\n presentation: {\n panel: { surface: 'glass', elevation: 'soft', border: 'subtle' },\n launcher: { icon: 'brand-mark', status: 'session', effect: 'pulse' },\n header: {\n mark: 'status',\n badge: { text: 'Workspace online', tone: 'success', indicator: true },\n },\n composer: { leadingIcon: 'brand-mark', shape: 'pill' },\n },\n suggestedPrompts: ['Explain how to connect this customer-authenticated MCP server'],\n }),\n },\n [\n tool('list_org_apps', {\n title: 'List organization apps',\n description: 'List NoodleSeed.com apps for an organization from its customer API.',\n authorization: {\n requiredScopes: ['org_apps:read'],\n allowedRoles: ['org_admin', 'org_member'],\n },\n input: z.object({\n org_id: z.string().meta({ title: 'Organization' }),\n skip: z.number().int().min(0).optional().meta({ title: 'Starting item' }),\n limit: z.number().int().min(1).max(100).optional().meta({ title: 'Maximum results' }),\n }),\n output: z.object({\n result: z.unknown(),\n }),\n annotations: annotations.readOnly(),\n fulfil({ input, connectors }) {\n const apps = connectors.app_api.listOrgApps({\n org_id: input.org_id,\n skip: input.skip,\n limit: input.limit,\n });\n return {\n result: apps.result,\n };\n },\n }),\n tool('list_my_organizations', {\n title: 'List my organizations',\n description: 'List the NoodleSeed.com organizations the signed-in customer belongs to.',\n contextProvider: true,\n input: z.object({}),\n // The customer API returns every organization for the signed-in customer in one response, with no\n // page parameter to pass through, so the bound is declared on the shape. A customer belongs to a\n // handful of organizations; `noodle check` reports an unbounded list as\n // `tool_design_output_bounds`.\n output: z.object({\n organizations: z.array(z.unknown()).max(100),\n }),\n annotations: annotations.readOnly(),\n fulfil({ connectors }) {\n const organizations = connectors.app_api.listOrganizations();\n return {\n organizations: organizations.organizations,\n };\n },\n }),\n ],\n);\n" },
56
+ { relPath: "examples/customer-auth/test/server.test.ts", content: "import { describe, expect, it } from 'vitest';\nimport app from '../src/server.js';\n\ndescribe('customer-auth example', () => {\n it('exports a customer-authenticated, customer-branded embedded assistant', async () => {\n expect(typeof app.toManifest).toBe('function');\n const manifest = await app.toManifest();\n expect(manifest.server.assistant).toMatchObject({\n model: { kind: 'openai-compatible', apiKey: 'ASSISTANT_MODEL_API_KEY' },\n layout: { mode: 'floating' },\n presentation: {\n panel: { surface: 'glass', elevation: 'soft', border: 'subtle' },\n launcher: { icon: 'brand-mark', status: 'session', effect: 'pulse' },\n header: { mark: 'status', badge: { text: 'Workspace online', tone: 'success' } },\n },\n });\n expect(\n manifest.server.assistant?.allowedOrigins.every(\n (origin) => origin.startsWith('https://') || origin.startsWith('http://localhost:'),\n ),\n ).toBe(true);\n expect(manifest.server.branding).toMatchObject({\n name: 'Noodle Seed Assistant',\n colorScheme: 'auto',\n });\n expect(manifest.server.auth).toEqual({\n kind: 'oidc',\n issuer: 'https://id.noodleseed.dev',\n audience: 'https://org.cloud.noodleseed.dev/app/mcp',\n claims: {\n id: 'sub',\n email: 'email',\n name: 'name',\n orgs: 'permissions.orgs',\n roles: 'permissions.roles',\n scopes: 'permissions.scopes',\n },\n routing: {\n endpoints: {\n customer_api: { claim: 'tenant.api_base_url' },\n },\n },\n });\n const catalog = app.toConnectorCatalog();\n expect(catalog?.connectors).toHaveLength(1);\n expect(catalog?.connectors[0]?.http).toMatchObject({\n baseUrl: {\n kind: 'customerEndpoint',\n name: 'customer_api',\n policy: { allowedHttpsHostSuffixes: ['api.noodleseed.dev'] },\n },\n auth: {\n kind: 'delegatedTokenExchange',\n tokenUrl: 'https://id.noodleseed.dev/oauth/token',\n clientId: '${env.CUSTOMER_API_CLIENT_ID}',\n clientSecret: 'CUSTOMER_API_CLIENT_SECRET',\n },\n });\n expect(\n Object.values(catalog?.connectors[0]?.http?.operations ?? {}).every(\n (operation) => operation.type === 'read',\n ),\n ).toBe(true);\n expect(catalog?.connectors[0]?.http).not.toHaveProperty('allowedOrigins');\n expect(JSON.stringify({ manifest, catalog })).not.toContain('tenant-a.api.noodleseed.dev');\n expect(manifest.tools.find((tool) => tool.name === 'list_org_apps')?.authorization).toEqual({\n requiredScopes: ['org_apps:read'],\n allowedRoles: ['org_admin', 'org_member'],\n });\n expect(\n manifest.tools.find((tool) => tool.name === 'list_my_organizations')?.authorization,\n ).toBeUndefined();\n });\n});\n" },
57
57
  { relPath: "examples/food-ordering/README.md", content: "# Food Ordering\n\n**Owns:** The flagship consumer ordering MCP App example: React view authoring, app-only helper tools,\ncaller-scoped cart state handles, invocation context, model-visible widget state/lifecycle, packaged image\nassets, portable structured elicitation, checkout handoff policy, host actions, CSP/permissions metadata,\nand widget preview coverage.\n\nFood Ordering is a generic, synthetic version of a live marketplace ordering app. It lets a user search\nstores, browse menus, customize an item, build a multi-line cart, review the order, and hand off checkout to\nan allowlisted example domain. It does not use real restaurant APIs, real checkout, customer credentials, or\nprivate customer data.\n\n## What It Shows\n\n| Capability | Example |\n| :--- | :--- |\n| Public entry tool | `open_ordering` returns structured fallback content and renders the React widget |\n| App-only helper tools | `search_stores`, `load_menu`, `load_item`, `read_cart`, `sync_cart`, `prepare_checkout`; mutating widget-owned helpers use `confirm: false` (equivalent to omission) and execute directly because action hints alone never gate |\n| Durable cart state | `server(..., { state: { handles: { cart } }, use: { state } })` with caller scope and revision checks |\n| React app runtime kit | `@noodleseed/one/react` supplies app flow, shell/nav/view, async state, form, quantity, choice, and handoff primitives |\n| Multi-step widget flow | One React shell navigates stores, menu, item customization, cart, review, and handoff views through `useAppFlow` |\n| Invocation context | `server.context` sets locale/time-zone defaults, derives an ambient service area/date, and makes the same snapshot available to tools and the reserved `noodle_context` MCP adapter |\n| Structured missing input | `plan_order` uses `ctx.elicit` to collect a fulfilment method and date through embedded/headless forms, standard bidirectional elicitation, a linked MCP App form, or an exact structured conversational retry on stateless hosts |\n| Model-visible widget state | `useUpdateModelContext` publishes one cohesive replacement snapshot when supported; `useWidgetLifecycle` auto-publishes mounted/cancelled/dismissed and reports author-owned submitted milestones for future context (not host-presentation proof), while the user-triggered submit pairs `useSendFollowUpMessage` for an immediate reply |\n| Handoff | `handoff.allowedDomains` allows only `https://orders.example.com` checkout URLs |\n| Progressive enhancement | Non-Apps hosts still receive stores, featured items, and a readable fallback summary |\n| Fail-closed hydration | The React view treats only the unhydrated, pre-result `{}` envelope as pending; a hydrated empty success remains distinct. It surfaces `isError`, validates required records and identifiers, and withholds ordering actions from malformed results |\n\nThe example is intentionally richer than the generated starter, but each inline view still follows the\nsame default: one immediate purpose, one primary action, at most one subordinate action, and progressive\ndisclosure for the rest. Preview it at 280px before adding navigation or local CSS; loading, empty, stale,\nerror/retry, and success states must remain readable without nested vertical scrolling.\n\nLike the comprehensive default `noodle init my-app` scaffold, this flagship keeps the server feature-rich\nwhile making each individual widget view focused; server capability breadth and screen density are separate.\nThe compiled initial widget should normally remain under the 1 MiB performance recommendation; Noodle Seed's\nhard ceilings are 10 MiB per compiled widget and 20 MiB across one deployment. Run `noodle check` to see raw\nand gzip-estimated sizes. Deploy requests are gzip-compressed as one stream so repeated self-contained React\nruntime bytes deduplicate on the wire without a cross-tenant CDN. Keep menu images or large live datasets in assets/resources and app-only tools\nrather than embedding them into the initial HTML bundle.\n\n## Local Author Loop\n\n```sh\nnoodle validate\nnoodle test\nnoodle dev\n```\n\nIn another terminal:\n\n```sh\nnoodle tools list\nnoodle tools call open_ordering --args '{\"customer\":\"Asha\",\"query\":\"noodles\"}'\nnoodle tools call summarize_ordering_options --args '{}'\n```\n\nWhen a developer finalizes visual feedback in the local Design experience, a coding agent can inspect the\nlatest project-local brief without a path or session id:\n\n```sh\nnoodle design inspect --latest --json\n```\n\nThe agent should locate the captured elements in this example's authored React source, preserve the listed\nbehavior and accessibility constraints, and verify every acceptance check before changing unrelated UI.\n\nFor Apps metadata conformance, start `noodle dev`, copy the loopback MCP endpoint, then run:\n\n```sh\nnpx @mcpjam/cli@latest apps conformance --url http://127.0.0.1:<port>/o/demo/food-ordering/mcp --quiet --format json\n```\n\n## Client Setup\n\nUse the CLI to print the exact setup flow for your MCP client:\n\n```sh\nnoodle connect claude\nnoodle connect chatgpt\nnoodle connect inspector\n```\n\n## Deploy\n\n```sh\nnoodle deploy --org demo --app food-ordering --env prod --access owner-only\nnoodle open\n```\n\nThat one deploy command preflights the complete target, creates a missing app/environment, and verifies\nhosted readiness. If it is interrupted, rerun the same command to resume the unfinished operation without a\nduplicate deployment. Use `--access org-members` for an org-wide internal demo. This example has no\nconnector secrets and does not include tokens, caller-key mechanisms, or `.env.noodle` values.\n\n## Demo Assets\n\nThe packaged demo images live under `assets/` and are public web assets when deployed. The current app uses\n`assets/noodle-bowl.jpg` as the server branding image.\n\nImage sources:\n\n- `assets/noodle-bowl.jpg` — Unsplash photo\n [`IRv8V9Hb8gI`](https://unsplash.com/photos/IRv8V9Hb8gI), downloaded from Unsplash.\n- `assets/lentil-soup.jpg` — Unsplash image\n [`photo-1510431198580-7727c9fa1e3a`](https://images.unsplash.com/photo-1510431198580-7727c9fa1e3a), downloaded from Unsplash.\n- `assets/mint-lemonade.jpg` — Unsplash photo\n [`X7Nx327NtuA`](https://unsplash.com/photos/X7Nx327NtuA) by Imad 786.\n\nUnsplash photos are free to use under the [Unsplash License](https://unsplash.com/license); attribution is\nnot required, but source notes are kept here for provenance.\n" },
58
58
  { relPath: "examples/food-ordering/noodle.json", content: "{\n \"entrypoint\": \"src/server.ts\",\n \"name\": \"food-ordering\",\n \"template\": \"widget\"\n}\n" },
59
59
  { relPath: "examples/food-ordering/package.json", content: "{\n \"name\": \"food-ordering\",\n \"version\": \"0.1.0\",\n \"private\": true,\n \"type\": \"module\",\n \"scripts\": {\n \"test\": \"vitest run test\",\n \"validate\": \"noodle validate\",\n \"dev\": \"noodle dev\",\n \"deploy\": \"noodle deploy\"\n },\n \"devDependencies\": {\n \"@vitejs/plugin-react\": \"latest\",\n \"@noodleseed/one\": \"latest\",\n \"@types/react\": \"latest\",\n \"@types/react-dom\": \"latest\",\n \"react\": \"latest\",\n \"react-dom\": \"latest\",\n \"vite\": \"latest\",\n \"vitest\": \"latest\"\n }\n}\n" },
@@ -1 +1 @@
1
- {"version":3,"file":"example-files.js","sourceRoot":"","sources":["../../src/generated/example-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"example-files.js","sourceRoot":"","sources":["../../src/generated/example-files.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/generated/surface.ts"],"names":[],"mappings":"AAIA,qGAAqG;AACrG,eAAO,MAAM,YAAY,EAAE,SAAS,MAAM,EA4DzC,CAAC;AAEF,8FAA8F;AAC9F,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAuBxC,CAAC;AAEF,iGAAiG;AACjG,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAqDhD,CAAC;AAEF,oGAAoG;AACpG,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAaxC,CAAC"}
1
+ {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/generated/surface.ts"],"names":[],"mappings":"AAIA,qGAAqG;AACrG,eAAO,MAAM,YAAY,EAAE,SAAS,MAAM,EA4DzC,CAAC;AAEF,8FAA8F;AAC9F,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAwBxC,CAAC;AAEF,iGAAiG;AACjG,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EA6DhD,CAAC;AAEF,oGAAoG;AACpG,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAaxC,CAAC"}
@@ -72,6 +72,7 @@ export const SDK_EXPORTS = [
72
72
  'connection',
73
73
  'connector',
74
74
  'customerAuth',
75
+ 'customerEndpoint',
75
76
  'embeddedAssistant',
76
77
  'externalExchange',
77
78
  'gmailConnector',
@@ -140,6 +141,14 @@ export const COMPILE_ERROR_CODES = [
140
141
  'unsupported_credential_profile',
141
142
  'credential_scope_mismatch',
142
143
  'credential_audience_mismatch',
144
+ 'customer_endpoint_auth_required',
145
+ 'customer_endpoint_mapping_required',
146
+ 'customer_endpoint_unknown_mapping',
147
+ 'customer_endpoint_bridge_unsupported',
148
+ 'customer_endpoint_action_unsupported',
149
+ 'customer_endpoint_surface_unsupported',
150
+ 'customer_endpoint_credential_source_unsupported',
151
+ 'customer_endpoint_policy_conflict',
143
152
  'unused_connector_alias',
144
153
  'arg_mismatch',
145
154
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/generated/surface.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,6EAA6E;AAC7E,iGAAiG;AAEjG,qGAAqG;AACrG,MAAM,CAAC,MAAM,YAAY,GAAsB;IAC7C,MAAM;IACN,SAAS;IACT,UAAU;IACV,UAAU;IACV,OAAO;IACP,QAAQ;IACR,MAAM;IACN,OAAO;IACP,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,OAAO;IACP,MAAM;IACN,OAAO;IACP,WAAW;IACX,SAAS;IACT,KAAK;IACL,UAAU;IACV,QAAQ;IACR,OAAO;IACP,SAAS;IACT,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,eAAe;IACf,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,SAAS;IACT,OAAO;IACP,UAAU;IACV,SAAS;IACT,SAAS;IACT,QAAQ;IACR,MAAM;IACN,MAAM;IACN,aAAa;IACb,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,MAAM;IACN,MAAM;IACN,SAAS;IACT,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,SAAS;IACT,WAAW;CACZ,CAAC;AAEF,8FAA8F;AAC9F,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C,aAAa;IACb,OAAO;IACP,MAAM;IACN,mBAAmB;IACnB,YAAY;IACZ,WAAW;IACX,cAAc;IACd,mBAAmB;IACnB,kBAAkB;IAClB,gBAAgB;IAChB,wBAAwB;IACxB,gBAAgB;IAChB,eAAe;IACf,kBAAkB;IAClB,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,UAAU;IACV,MAAM;IACN,GAAG;CACJ,CAAC;AAEF,iGAAiG;AACjG,MAAM,CAAC,MAAM,mBAAmB,GAAsB;IACpD,0BAA0B;IAC1B,kBAAkB;IAClB,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,eAAe;IACf,8BAA8B;IAC9B,6BAA6B;IAC7B,uBAAuB;IACvB,cAAc;IACd,oBAAoB;IACpB,oBAAoB;IACpB,qBAAqB;IACrB,oBAAoB;IACpB,mBAAmB;IACnB,uBAAuB;IACvB,2BAA2B;IAC3B,qBAAqB;IACrB,kBAAkB;IAClB,kBAAkB;IAClB,eAAe;IACf,mBAAmB;IACnB,oBAAoB;IACpB,4BAA4B;IAC5B,0BAA0B;IAC1B,2BAA2B;IAC3B,mBAAmB;IACnB,wBAAwB;IACxB,oBAAoB;IACpB,kBAAkB;IAClB,wBAAwB;IACxB,0BAA0B;IAC1B,kBAAkB;IAClB,qBAAqB;IACrB,4BAA4B;IAC5B,uBAAuB;IACvB,wBAAwB;IACxB,6BAA6B;IAC7B,uBAAuB;IACvB,6BAA6B;IAC7B,eAAe;IACf,gCAAgC;IAChC,oBAAoB;IACpB,yBAAyB;IACzB,0BAA0B;IAC1B,mBAAmB;IACnB,4BAA4B;IAC5B,gCAAgC;IAChC,2BAA2B;IAC3B,8BAA8B;IAC9B,wBAAwB;IACxB,cAAc;CACf,CAAC;AAEF,oGAAoG;AACpG,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C,aAAa;IACb,aAAa;IACb,cAAc;IACd,WAAW;IACX,aAAa;IACb,uBAAuB;IACvB,iBAAiB;IACjB,wBAAwB;IACxB,uBAAuB;IACvB,oBAAoB;IACpB,YAAY;IACZ,YAAY;CACb,CAAC"}
1
+ {"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/generated/surface.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,6EAA6E;AAC7E,iGAAiG;AAEjG,qGAAqG;AACrG,MAAM,CAAC,MAAM,YAAY,GAAsB;IAC7C,MAAM;IACN,SAAS;IACT,UAAU;IACV,UAAU;IACV,OAAO;IACP,QAAQ;IACR,MAAM;IACN,OAAO;IACP,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,OAAO;IACP,MAAM;IACN,OAAO;IACP,WAAW;IACX,SAAS;IACT,KAAK;IACL,UAAU;IACV,QAAQ;IACR,OAAO;IACP,SAAS;IACT,MAAM;IACN,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,eAAe;IACf,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,SAAS;IACT,OAAO;IACP,UAAU;IACV,SAAS;IACT,SAAS;IACT,QAAQ;IACR,MAAM;IACN,MAAM;IACN,aAAa;IACb,SAAS;IACT,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,UAAU;IACV,MAAM;IACN,MAAM;IACN,SAAS;IACT,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,SAAS;IACT,WAAW;CACZ,CAAC;AAEF,8FAA8F;AAC9F,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C,aAAa;IACb,OAAO;IACP,MAAM;IACN,mBAAmB;IACnB,YAAY;IACZ,WAAW;IACX,cAAc;IACd,kBAAkB;IAClB,mBAAmB;IACnB,kBAAkB;IAClB,gBAAgB;IAChB,wBAAwB;IACxB,gBAAgB;IAChB,eAAe;IACf,kBAAkB;IAClB,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,UAAU;IACV,MAAM;IACN,GAAG;CACJ,CAAC;AAEF,iGAAiG;AACjG,MAAM,CAAC,MAAM,mBAAmB,GAAsB;IACpD,0BAA0B;IAC1B,kBAAkB;IAClB,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,eAAe;IACf,8BAA8B;IAC9B,6BAA6B;IAC7B,uBAAuB;IACvB,cAAc;IACd,oBAAoB;IACpB,oBAAoB;IACpB,qBAAqB;IACrB,oBAAoB;IACpB,mBAAmB;IACnB,uBAAuB;IACvB,2BAA2B;IAC3B,qBAAqB;IACrB,kBAAkB;IAClB,kBAAkB;IAClB,eAAe;IACf,mBAAmB;IACnB,oBAAoB;IACpB,4BAA4B;IAC5B,0BAA0B;IAC1B,2BAA2B;IAC3B,mBAAmB;IACnB,wBAAwB;IACxB,oBAAoB;IACpB,kBAAkB;IAClB,wBAAwB;IACxB,0BAA0B;IAC1B,kBAAkB;IAClB,qBAAqB;IACrB,4BAA4B;IAC5B,uBAAuB;IACvB,wBAAwB;IACxB,6BAA6B;IAC7B,uBAAuB;IACvB,6BAA6B;IAC7B,eAAe;IACf,gCAAgC;IAChC,oBAAoB;IACpB,yBAAyB;IACzB,0BAA0B;IAC1B,mBAAmB;IACnB,4BAA4B;IAC5B,gCAAgC;IAChC,2BAA2B;IAC3B,8BAA8B;IAC9B,iCAAiC;IACjC,oCAAoC;IACpC,mCAAmC;IACnC,sCAAsC;IACtC,sCAAsC;IACtC,uCAAuC;IACvC,iDAAiD;IACjD,mCAAmC;IACnC,wBAAwB;IACxB,cAAc;CACf,CAAC;AAEF,oGAAoG;AACpG,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C,aAAa;IACb,aAAa;IACb,cAAc;IACd,WAAW;IACX,aAAa;IACb,uBAAuB;IACvB,iBAAiB;IACjB,wBAAwB;IACxB,uBAAuB;IACvB,oBAAoB;IACpB,YAAY;IACZ,YAAY;CACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-bundle.d.ts","sourceRoot":"","sources":["../src/plugin-bundle.ts"],"names":[],"mappings":"AA6BA,oGAAoG;AACpG,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,oFAAoF;AACpF,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAC7C,kGAAkG;AAClG,eAAO,MAAM,kBAAkB,0BAA0B,CAAC;AAW1D;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,QAI8B,CAAC;AASvE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,8FAA8F;IAC9F,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,4FAA4F;IAC5F,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,kGAAkG;IAClG,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,6BAA6B,CAAC,EAAE,MAAM,CAAC;CACjD;AAqHD,yGAAyG;AACzG,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,mBAAwB,GAAG,SAAS,gBAAgB,EAAE,CA2DjG;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,GAAE,mBAAwB,GAChC,SAAS,gBAAgB,EAAE,CAoD7B;AA2DD,qGAAqG;AACrG,wBAAgB,qBAAqB,CACnC,OAAO,GAAE,mBAAwB,GAChC,SAAS,gBAAgB,EAAE,CA6B7B"}
1
+ {"version":3,"file":"plugin-bundle.d.ts","sourceRoot":"","sources":["../src/plugin-bundle.ts"],"names":[],"mappings":"AA8BA,oGAAoG;AACpG,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,oFAAoF;AACpF,eAAO,MAAM,gBAAgB,eAAe,CAAC;AAC7C,kGAAkG;AAClG,eAAO,MAAM,kBAAkB,0BAA0B,CAAC;AAW1D;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,QAI8B,CAAC;AASvE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,8FAA8F;IAC9F,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,4FAA4F;IAC5F,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,kGAAkG;IAClG,QAAQ,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,6BAA6B,CAAC,EAAE,MAAM,CAAC;CACjD;AA4HD,yGAAyG;AACzG,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,mBAAwB,GAAG,SAAS,gBAAgB,EAAE,CA2DjG;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,GAAE,mBAAwB,GAChC,SAAS,gBAAgB,EAAE,CAoD7B;AA2DD,qGAAqG;AACrG,wBAAgB,qBAAqB,CACnC,OAAO,GAAE,mBAAwB,GAChC,SAAS,gBAAgB,EAAE,CA6B7B"}
@@ -12,6 +12,7 @@ import { createPluginCompatibility, renderPluginCompatibilityJson, } from './plu
12
12
  import { renderPluginLauncher } from './plugin-launcher.js';
13
13
  import { renderClaudeDeveloperMcpConfig, renderCodexDeveloperMcpConfig, renderCursorDeveloperMcpConfig, renderPluginHostManifests, } from './plugin-manifests.js';
14
14
  import { renderPluginMarketplaceDocs } from './plugin-marketplace-docs.js';
15
+ import { PLUGIN_WINDOWS_SUPPORT } from './plugin-platform-support.js';
15
16
  import { renderChatGptSubmission, renderClaudeSubmission, renderCursorSubmission, renderSubmissionReadme, } from './plugin-submission.js';
16
17
  /** The plugin identifier — matches the skill name so the defer-to-project rule reads coherently. */
17
18
  export const PLUGIN_NAME = 'noodle-seed';
@@ -53,6 +54,7 @@ function bootstrapRouterBody() {
53
54
  '## Cold start (no project yet)',
54
55
  '',
55
56
  '1. **Use supported plugin functions.** Call the typed `noodle-readiness` tools yourself. They own the compatible CLI and isolated host profile. Never resolve, display, or ask the user to run an internal launcher, private installation path, shell wrapper, or global CLI install.',
57
+ ` - On Windows, the supported shell is ${PLUGIN_WINDOWS_SUPPORT.supportedShell}. If the host is running in native PowerShell, Command Prompt, or Git Bash, stop and give the single fallback \`${PLUGIN_WINDOWS_SUPPORT.installCommand}\`; do not expose an internal plugin path.`,
56
58
  '2. **Scaffold or reconcile.**',
57
59
  ' - New or empty directory: call `noodle-readiness.setup_project` with `mode: "initialize"` — the public fallback is `noodle init`.',
58
60
  ' - Existing project: call `noodle-readiness.setup_project` with `mode: "reconcile"` instead of overwriting unrelated files — the public fallback is `noodle setup --write`.',
@@ -111,6 +113,12 @@ function pluginReadme(compatibility) {
111
113
  'These values are generated and released as one verified compatibility set. Do not edit them',
112
114
  'inside an installed plugin.',
113
115
  '',
116
+ '## Supported platforms',
117
+ '',
118
+ `Run the plugin on macOS or from ${PLUGIN_WINDOWS_SUPPORT.supportedShell} with Linux Node.js and npm.`,
119
+ `Native ${PLUGIN_WINDOWS_SUPPORT.unsupportedShells} are unsupported; from PowerShell, run \`${PLUGIN_WINDOWS_SUPPORT.installCommand}\`,`,
120
+ 'then install and run the coding-agent host inside Ubuntu.',
121
+ '',
114
122
  '## Trust boundary',
115
123
  '',
116
124
  '- The private plugin bootstrap may download the exact CLI package from the npm registry on first use.',
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-bundle.js","sourceRoot":"","sources":["../src/plugin-bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-bundle.js","sourceRoot":"","sources":["../src/plugin-bundle.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,mGAAmG;AACnG,oGAAoG;AACpG,uGAAuG;AACvG,YAAY;AACZ,gGAAgG;AAChG,iGAAiG;AACjG,mGAAmG;AACnG,oBAAoB;AACpB,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EACL,yBAAyB,EACzB,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAC9B,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAEhC,oGAAoG;AACpG,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;AACzC,oFAAoF;AACpF,MAAM,CAAC,MAAM,gBAAgB,GAAG,YAAY,CAAC;AAC7C,kGAAkG;AAClG,MAAM,CAAC,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAE1D,MAAM,QAAQ,GAAG,wBAAwB,CAAC;AAC1C,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,EAAW,CAAC;AAC/D,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,aAAa,EAAW,CAAC;AAE/C,MAAM,kBAAkB,GACtB,+FAA+F;IAC/F,gGAAgG;IAChG,wEAAwE,CAAC;AAE3E;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GACtC,gGAAgG;IAChG,8FAA8F;IAC9F,gGAAgG;IAChG,oEAAoE,CAAC;AAEvE,8FAA8F;AAC9F,MAAM,eAAe,GAAsB;IACzC,8CAA8C;IAC9C,uCAAuC;IACvC,mCAAmC;CACpC,CAAC;AAyBF,SAAS,mBAAmB;IAC1B,OAAO;QACL,yBAAyB;QACzB,EAAE;QACF,weAAwe;QACxe,EAAE;QACF,qCAAqC;QACrC,EAAE;QACF,2WAA2W;QAC3W,EAAE;QACF,gCAAgC;QAChC,EAAE;QACF,uRAAuR;QACvR,2CAA2C,sBAAsB,CAAC,cAAc,mHAAmH,sBAAsB,CAAC,cAAc,4CAA4C;QACpR,+BAA+B;QAC/B,sIAAsI;QACtI,+KAA+K;QAC/K,mOAAmO;QACnO,EAAE;QACF,qiBAAqiB;QACriB,EAAE;QACF,uBAAuB;QACvB,EAAE;QACF,4UAA4U;QAC5U,EAAE;QACF,WAAW;QACX,EAAE;QACF,2RAA2R;QAC3R,sPAAsP;QACtP,0HAA0H;QAC1H,mFAAmF;QACnF,sPAAsP;KACvP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAe;IAC3C,MAAM,IAAI,GAAG,mBAAmB,EAAE,CAAC;IACnC,OAAO;QACL,KAAK;QACL,SAAS,WAAW,EAAE;QACtB,gBAAgB,2BAA2B,EAAE;QAC7C,KAAK;QACL,EAAE;QACF,6BAA6B,OAAO,SAAS,WAAW,CAAC,IAAI,CAAC,MAAM;QACpE,EAAE;QACF,IAAI;QACJ,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,IAAI,CAAC,KAAc;IAC1B,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;AAC/C,CAAC;AAED,SAAS,YAAY,CAAC,aAA2D;IAC/E,IAAI,aAAa,CAAC,aAAa,KAAK,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO;QACL,sBAAsB;QACtB,EAAE;QACF,+FAA+F;QAC/F,2FAA2F;QAC3F,8FAA8F;QAC9F,EAAE;QACF,4BAA4B;QAC5B,EAAE;QACF,uBAAuB,aAAa,CAAC,aAAa,IAAI;QACtD,kBAAkB,aAAa,CAAC,eAAe,IAAI;QACnD,4BAA4B,aAAa,CAAC,UAAU,IAAI;QACxD,uBAAuB,aAAa,CAAC,6BAA6B,IAAI;QACtE,EAAE;QACF,6FAA6F;QAC7F,6BAA6B;QAC7B,EAAE;QACF,wBAAwB;QACxB,EAAE;QACF,mCAAmC,sBAAsB,CAAC,cAAc,8BAA8B;QACtG,UAAU,sBAAsB,CAAC,iBAAiB,4CAA4C,sBAAsB,CAAC,cAAc,KAAK;QACxI,2DAA2D;QAC3D,EAAE;QACF,mBAAmB;QACnB,EAAE;QACF,uGAAuG;QACvG,gGAAgG;QAChG,uCAAuC;QACvC,4FAA4F;QAC5F,wBAAwB;QACxB,mGAAmG;QACnG,6BAA6B;QAC7B,EAAE;QACF,+IAA+I;QAC/I,EAAE;QACF,aAAa;QACb,EAAE;QACF,wGAAwG;QACxG,+DAA+D;QAC/D,gIAAgI;QAChI,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,aAA2D;IAClF,IAAI,aAAa,CAAC,aAAa,KAAK,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IACD,OAAO;QACL,oBAAoB;QACpB,EAAE;QACF,MAAM,aAAa,CAAC,aAAa,EAAE;QACnC,EAAE;QACF,8BAA8B,aAAa,CAAC,eAAe,IAAI;QAC/D,gCAAgC,aAAa,CAAC,UAAU,IAAI;QAC5D,sBAAsB,aAAa,CAAC,6BAA6B,IAAI;QACrE,2BAA2B,aAAa,CAAC,iBAAiB,IAAI;QAC9D,EAAE;QACF,2FAA2F;QAC3F,uCAAuC;QACvC,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,yGAAyG;AACzG,MAAM,UAAU,kBAAkB,CAAC,UAA+B,EAAE;IAClE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,iBAAiB,CAAC;IACrD,MAAM,aAAa,GAAG,yBAAyB,CAAC;QAC9C,aAAa,EAAE,OAAO;QACtB,GAAG,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC;QAC9F,GAAG,CAAC,OAAO,CAAC,iBAAiB,KAAK,SAAS;YACzC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACrD,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;QAC7D,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;QAC/E,GAAG,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC;QAC9F,GAAG,CAAC,OAAO,CAAC,6BAA6B,KAAK,SAAS;YACrD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,6BAA6B,EAAE,OAAO,CAAC,6BAA6B,EAAE,CAAC;KAC9E,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,yBAAyB,CAAC;QAC9C,IAAI,EAAE,WAAW;QACjB,OAAO;QACP,WAAW,EAAE,kBAAkB;QAC/B,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,QAAQ;QAClB,UAAU,EAAE,2CAA2C;QACvD,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC;QAChF,cAAc,EAAE,eAAe;KAChC,CAAC,CAAC;IACH,OAAO;QACL,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC3E,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,EAAE;QACjE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,CAAC,aAAa,CAAC,EAAE;QAC3D;YACE,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,IAAI,CAAC,8BAA8B,CAAC,aAAa,CAAC,CAAC;SAC7D;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC;SAC5D;QACD;YACE,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,IAAI,CAAC,8BAA8B,CAAC,aAAa,CAAC,CAAC;SAC7D;QACD;YACE,IAAI,EAAE,kCAAkC;YACxC,OAAO,EAAE,6BAA6B,CAAC,aAAa,CAAC;SACtD;QACD;YACE,IAAI,EAAE,uBAAuB;YAC7B,OAAO,EAAE,oBAAoB,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE,CAAC;SAC7F;QACD,EAAE,IAAI,EAAE,UAAU,WAAW,WAAW,EAAE,OAAO,EAAE,oBAAoB,CAAC,OAAO,CAAC,EAAE;QAClF;YACE,IAAI,EAAE,UAAU,WAAW,4BAA4B;YACvD,OAAO,EAAE,oBAAoB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE,CAAC;SACvF;QACD;YACE,IAAI,EAAE,UAAU,WAAW,mCAAmC;YAC9D,OAAO,EAAE,oBAAoB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE,CAAC;SACxF;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,UAA+B,EAAE;IAEjC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,iBAAiB,CAAC;IACrD,MAAM,aAAa,GAAG;QACpB,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,kBAAkB;QAC/B,OAAO;QACP,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,YAAY;QACrB,QAAQ,EAAE,iBAAiB;KAC5B,CAAC;IACF,OAAO;QACL;YACE,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,IAAI,CAAC;gBACZ,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,iDAAiD;gBAC9D,OAAO,EAAE,CAAC,EAAE,GAAG,aAAa,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;aAC5D,CAAC;SACH;QACD;YACE,IAAI,EAAE,kCAAkC;YACxC,OAAO,EAAE,IAAI,CAAC;gBACZ,IAAI,EAAE,gBAAgB;gBACtB,SAAS,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE;gBACzC,OAAO,EAAE;oBACP;wBACE,GAAG,aAAa;wBAChB,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE;wBACrD,MAAM,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE;wBACnE,QAAQ,EAAE,iBAAiB;qBAC5B;iBACF;aACF,CAAC;SACH;QACD;YACE,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,IAAI,CAAC;gBACZ,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE,KAAK;gBACZ,QAAQ,EAAE,EAAE,WAAW,EAAE,iDAAiD,EAAE;gBAC5E,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,WAAW;wBACjB,MAAM,EAAE,qBAAqB;wBAC7B,WAAW,EAAE,kBAAkB;qBAChC;iBACF;aACF,CAAC;SACH;KACF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe;IACxC,OAAO;QACL,uBAAuB;QACvB,EAAE;QACF,6FAA6F;QAC7F,iBAAiB,WAAW,oEAAoE;QAChG,8FAA8F;QAC9F,EAAE;QACF,YAAY;QACZ,EAAE;QACF,iBAAiB;QACjB,EAAE;QACF,SAAS;QACT,gDAAgD;QAChD,mBAAmB,WAAW,IAAI,gBAAgB,EAAE;QACpD,KAAK;QACL,EAAE;QACF,WAAW;QACX,EAAE;QACF,SAAS;QACT,qDAAqD;QACrD,oBAAoB,WAAW,IAAI,gBAAgB,EAAE;QACrD,KAAK;QACL,EAAE;QACF,YAAY;QACZ,EAAE;QACF,sFAAsF;QACtF,KAAK,WAAW,kFAAkF;QAClG,EAAE;QACF,iFAAiF;QACjF,EAAE;QACF,sBAAsB;QACtB,EAAE;QACF,6HAA6H;QAC7H,EAAE;QACF,iBAAiB;QACjB,EAAE;QACF,gBAAgB,WAAW,+DAA+D;QAC1F,kGAAkG;QAClG,gFAAgF;QAChF,EAAE;QACF,WAAW;QACX,EAAE;QACF,wCAAwC;QACxC,wCAAwC;QACxC,gEAAgE;QAChE,8CAA8C;QAC9C,EAAE;QACF,0BAA0B;QAC1B,EAAE;QACF,iEAAiE,OAAO,uBAAuB;QAC/F,yFAAyF;QACzF,gDAAgD;QAChD,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,qBAAqB,CACnC,UAA+B,EAAE;IAEjC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,iBAAiB,CAAC;IACrD,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,iBAAiB,CAAC;IACrE,OAAO;QACL,GAAG,yBAAyB,CAAC,OAAO,CAAC;QACrC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,CAAC,eAAe,CAAC,EAAE;QAClE,GAAG,2BAA2B,CAAC;YAC7B,OAAO;YACP,UAAU,EAAE,WAAW;YACvB,eAAe,EAAE,gBAAgB;SAClC,CAAC;QACF,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,sBAAsB,EAAE,EAAE;QACnE;YACE,IAAI,EAAE,wCAAwC;YAC9C,OAAO,EAAE,IAAI,CAAC,uBAAuB,EAAE,CAAC;SACzC;QACD;YACE,IAAI,EAAE,6CAA6C;YACnD,OAAO,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC;SACxC;QACD;YACE,IAAI,EAAE,0CAA0C;YAChD,OAAO,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC;SACxC;QACD,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5C,IAAI,EAAE,WAAW,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE;YAC3C,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-launcher.d.ts","sourceRoot":"","sources":["../src/plugin-launcher.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEpE,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAQD,8FAA8F;AAC9F,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,GAAG,MAAM,CA4EjF"}
1
+ {"version":3,"file":"plugin-launcher.d.ts","sourceRoot":"","sources":["../src/plugin-launcher.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEpE,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAQD,8FAA8F;AAC9F,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,GAAG,MAAM,CAkGjF"}