@noodleseed/one 0.17.0 → 0.18.1

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 (180) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +3 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/alerts-ops.d.ts +2 -0
  5. package/dist/commands/alerts-ops.d.ts.map +1 -0
  6. package/dist/commands/alerts-ops.js +249 -0
  7. package/dist/commands/alerts-ops.js.map +1 -0
  8. package/dist/commands/analytics-ops.d.ts +13 -0
  9. package/dist/commands/analytics-ops.d.ts.map +1 -1
  10. package/dist/commands/analytics-ops.js +5 -2
  11. package/dist/commands/analytics-ops.js.map +1 -1
  12. package/dist/commands/catalog-data-resources.d.ts.map +1 -1
  13. package/dist/commands/catalog-data-resources.js +45 -0
  14. package/dist/commands/catalog-data-resources.js.map +1 -1
  15. package/dist/commands/github-ops.d.ts.map +1 -1
  16. package/dist/commands/github-ops.js +24 -4
  17. package/dist/commands/github-ops.js.map +1 -1
  18. package/dist/commands/github-runs-ops.d.ts +32 -0
  19. package/dist/commands/github-runs-ops.d.ts.map +1 -0
  20. package/dist/commands/github-runs-ops.js +132 -0
  21. package/dist/commands/github-runs-ops.js.map +1 -0
  22. package/dist/commands/mcp-apps.js +27 -0
  23. package/dist/commands/mcp-apps.js.map +1 -1
  24. package/dist/prompts.d.ts.map +1 -1
  25. package/dist/prompts.js +1 -3
  26. package/dist/prompts.js.map +1 -1
  27. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.d.ts.map +1 -1
  28. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js +5 -0
  29. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js.map +1 -1
  30. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  31. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +1 -0
  32. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  33. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.d.ts.map +1 -1
  34. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.js +3 -1
  35. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.js.map +1 -1
  36. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  37. package/node_modules/@noodle-borg/authoring/dist/recording.js +18 -23
  38. package/node_modules/@noodle-borg/authoring/dist/recording.js.map +1 -1
  39. package/node_modules/@noodle-borg/authoring/dist/server.d.ts +4 -1
  40. package/node_modules/@noodle-borg/authoring/dist/server.d.ts.map +1 -1
  41. package/node_modules/@noodle-borg/authoring/dist/server.js +3 -1
  42. package/node_modules/@noodle-borg/authoring/dist/server.js.map +1 -1
  43. package/node_modules/@noodle-borg/compiler/dist/artifact/types.d.ts +2 -0
  44. package/node_modules/@noodle-borg/compiler/dist/artifact/types.d.ts.map +1 -1
  45. package/node_modules/@noodle-borg/compiler/dist/compile.js +1 -1
  46. package/node_modules/@noodle-borg/compiler/dist/compile.js.map +1 -1
  47. package/node_modules/@noodle-borg/compiler/dist/manifest/schema.d.ts +1 -0
  48. package/node_modules/@noodle-borg/compiler/dist/manifest/schema.d.ts.map +1 -1
  49. package/node_modules/@noodle-borg/compiler/dist/manifest/schema.js +6 -0
  50. package/node_modules/@noodle-borg/compiler/dist/manifest/schema.js.map +1 -1
  51. package/node_modules/@noodle-borg/compiler/dist/widget-compile-helpers.d.ts +3 -1
  52. package/node_modules/@noodle-borg/compiler/dist/widget-compile-helpers.d.ts.map +1 -1
  53. package/node_modules/@noodle-borg/compiler/dist/widget-compile-helpers.js +7 -1
  54. package/node_modules/@noodle-borg/compiler/dist/widget-compile-helpers.js.map +1 -1
  55. package/node_modules/@noodle-borg/compiler/dist/widget-emit.d.ts.map +1 -1
  56. package/node_modules/@noodle-borg/compiler/dist/widget-emit.js +3 -1
  57. package/node_modules/@noodle-borg/compiler/dist/widget-emit.js.map +1 -1
  58. package/node_modules/@noodle-borg/protocol/dist/mapping.d.ts +3 -1
  59. package/node_modules/@noodle-borg/protocol/dist/mapping.d.ts.map +1 -1
  60. package/node_modules/@noodle-borg/protocol/dist/mapping.js +9 -3
  61. package/node_modules/@noodle-borg/protocol/dist/mapping.js.map +1 -1
  62. package/node_modules/@noodle-borg/protocol/dist/sdk-server.js +1 -1
  63. package/node_modules/@noodle-borg/protocol/dist/sdk-server.js.map +1 -1
  64. package/node_modules/@noodle-borg/protocol/dist/widget/react-bridge-bootstrap.d.ts +1 -1
  65. package/node_modules/@noodle-borg/protocol/dist/widget/react-bridge-bootstrap.d.ts.map +1 -1
  66. package/node_modules/@noodle-borg/protocol/dist/widget/react-bridge-bootstrap.js +1 -1
  67. package/node_modules/@noodle-borg/service/dist/alert-evaluator.d.ts +57 -0
  68. package/node_modules/@noodle-borg/service/dist/alert-evaluator.d.ts.map +1 -0
  69. package/node_modules/@noodle-borg/service/dist/alert-evaluator.js +158 -0
  70. package/node_modules/@noodle-borg/service/dist/alert-evaluator.js.map +1 -0
  71. package/node_modules/@noodle-borg/service/dist/alert-webhook.d.ts +72 -0
  72. package/node_modules/@noodle-borg/service/dist/alert-webhook.d.ts.map +1 -0
  73. package/node_modules/@noodle-borg/service/dist/alert-webhook.js +138 -0
  74. package/node_modules/@noodle-borg/service/dist/alert-webhook.js.map +1 -0
  75. package/node_modules/@noodle-borg/service/dist/github/pending-installations.d.ts +15 -8
  76. package/node_modules/@noodle-borg/service/dist/github/pending-installations.d.ts.map +1 -1
  77. package/node_modules/@noodle-borg/service/dist/github/pending-installations.js +16 -9
  78. package/node_modules/@noodle-borg/service/dist/github/pending-installations.js.map +1 -1
  79. package/node_modules/@noodle-borg/service/dist/index.d.ts +10 -2
  80. package/node_modules/@noodle-borg/service/dist/index.d.ts.map +1 -1
  81. package/node_modules/@noodle-borg/service/dist/index.js +9 -1
  82. package/node_modules/@noodle-borg/service/dist/index.js.map +1 -1
  83. package/node_modules/@noodle-borg/service/dist/options.d.ts +20 -1
  84. package/node_modules/@noodle-borg/service/dist/options.d.ts.map +1 -1
  85. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.d.ts +28 -0
  86. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.d.ts.map +1 -0
  87. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.js +50 -0
  88. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.js.map +1 -0
  89. package/node_modules/@noodle-borg/service/dist/routes/alerts.d.ts +39 -0
  90. package/node_modules/@noodle-borg/service/dist/routes/alerts.d.ts.map +1 -0
  91. package/node_modules/@noodle-borg/service/dist/routes/alerts.js +204 -0
  92. package/node_modules/@noodle-borg/service/dist/routes/alerts.js.map +1 -0
  93. package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts +149 -0
  94. package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts.map +1 -1
  95. package/node_modules/@noodle-borg/service/dist/routes/contracts.js +81 -0
  96. package/node_modules/@noodle-borg/service/dist/routes/contracts.js.map +1 -1
  97. package/node_modules/@noodle-borg/service/dist/routes/github-connection.js +1 -1
  98. package/node_modules/@noodle-borg/service/dist/routes/github-connection.js.map +1 -1
  99. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.d.ts +2 -1
  100. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.d.ts.map +1 -1
  101. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.js +37 -2
  102. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.js.map +1 -1
  103. package/node_modules/@noodle-borg/service/dist/routes/github-runs.d.ts +8 -0
  104. package/node_modules/@noodle-borg/service/dist/routes/github-runs.d.ts.map +1 -0
  105. package/node_modules/@noodle-borg/service/dist/routes/github-runs.js +33 -0
  106. package/node_modules/@noodle-borg/service/dist/routes/github-runs.js.map +1 -0
  107. package/node_modules/@noodle-borg/service/dist/routes/github-setup.d.ts +1 -1
  108. package/node_modules/@noodle-borg/service/dist/routes/github-setup.d.ts.map +1 -1
  109. package/node_modules/@noodle-borg/service/dist/routes/github-setup.js +3 -3
  110. package/node_modules/@noodle-borg/service/dist/routes/github-setup.js.map +1 -1
  111. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.d.ts +29 -0
  112. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.d.ts.map +1 -0
  113. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.js +355 -0
  114. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.js.map +1 -0
  115. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.d.ts +27 -0
  116. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.d.ts.map +1 -0
  117. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.js +61 -0
  118. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.js.map +1 -0
  119. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts +20 -1
  120. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts.map +1 -1
  121. package/node_modules/@noodle-borg/service/dist/routes/paths.js +54 -0
  122. package/node_modules/@noodle-borg/service/dist/routes/paths.js.map +1 -1
  123. package/node_modules/@noodle-borg/service/dist/serve.d.ts.map +1 -1
  124. package/node_modules/@noodle-borg/service/dist/serve.js +42 -1
  125. package/node_modules/@noodle-borg/service/dist/serve.js.map +1 -1
  126. package/node_modules/@noodle-borg/service/dist/service.d.ts.map +1 -1
  127. package/node_modules/@noodle-borg/service/dist/service.js +37 -53
  128. package/node_modules/@noodle-borg/service/dist/service.js.map +1 -1
  129. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.d.ts +21 -0
  130. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.d.ts.map +1 -0
  131. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.js +115 -0
  132. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.js.map +1 -0
  133. package/node_modules/@noodle-borg/service/dist/store/alert-rules.d.ts +108 -0
  134. package/node_modules/@noodle-borg/service/dist/store/alert-rules.d.ts.map +1 -0
  135. package/node_modules/@noodle-borg/service/dist/store/alert-rules.js +181 -0
  136. package/node_modules/@noodle-borg/service/dist/store/alert-rules.js.map +1 -0
  137. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.d.ts +1 -0
  138. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.d.ts.map +1 -1
  139. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.js +4 -0
  140. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.js.map +1 -1
  141. package/node_modules/@noodle-borg/service/dist/store/github-connections.d.ts +1 -0
  142. package/node_modules/@noodle-borg/service/dist/store/github-connections.d.ts.map +1 -1
  143. package/node_modules/@noodle-borg/service/dist/store/github-connections.js +4 -0
  144. package/node_modules/@noodle-borg/service/dist/store/github-connections.js.map +1 -1
  145. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.d.ts +22 -0
  146. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.d.ts.map +1 -0
  147. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.js +116 -0
  148. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.js.map +1 -0
  149. package/node_modules/@noodle-borg/service/dist/store/github-runs.d.ts +51 -0
  150. package/node_modules/@noodle-borg/service/dist/store/github-runs.d.ts.map +1 -0
  151. package/node_modules/@noodle-borg/service/dist/store/github-runs.js +158 -0
  152. package/node_modules/@noodle-borg/service/dist/store/github-runs.js.map +1 -0
  153. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.d.ts +19 -0
  154. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.d.ts.map +1 -0
  155. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.js +46 -0
  156. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.js.map +1 -0
  157. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.d.ts +26 -0
  158. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.d.ts.map +1 -0
  159. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.js +142 -0
  160. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.js.map +1 -0
  161. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.d.ts +9 -0
  162. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.d.ts.map +1 -0
  163. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.js +113 -0
  164. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.js.map +1 -0
  165. package/node_modules/@noodle-borg/service/dist/store/postgres-github.d.ts +1 -0
  166. package/node_modules/@noodle-borg/service/dist/store/postgres-github.d.ts.map +1 -1
  167. package/node_modules/@noodle-borg/service/dist/store/postgres-github.js +7 -2
  168. package/node_modules/@noodle-borg/service/dist/store/postgres-github.js.map +1 -1
  169. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.d.ts.map +1 -1
  170. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js +49 -0
  171. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js.map +1 -1
  172. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts +9 -2
  173. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts.map +1 -1
  174. package/node_modules/@noodle-borg/service/dist/store/postgres.js +17 -1
  175. package/node_modules/@noodle-borg/service/dist/store/postgres.js.map +1 -1
  176. package/node_modules/@noodle-borg/service/dist/store.d.ts +104 -0
  177. package/node_modules/@noodle-borg/service/dist/store.d.ts.map +1 -1
  178. package/node_modules/@noodle-borg/service/dist/store.js +2 -0
  179. package/node_modules/@noodle-borg/service/dist/store.js.map +1 -1
  180. package/package.json +2 -2
@@ -11,12 +11,18 @@ export function withAssetResourceDomain(uiMeta, assetOrigin) {
11
11
  },
12
12
  };
13
13
  }
14
- export function openAiWidgetCsp(uiMeta) {
14
+ export function openAiWidgetCsp(uiMeta, redirectDomains = []) {
15
15
  const resourceDomains = uiMeta?.csp?.resourceDomains ?? [];
16
16
  const connectDomains = uiMeta?.csp?.connectDomains ?? [];
17
+ const frameDomains = uiMeta?.csp?.frameDomains ?? [];
17
18
  const csp = {
18
19
  ...(resourceDomains.length > 0 ? { resource_domains: [...new Set(resourceDomains)] } : {}),
19
20
  ...(connectDomains.length > 0 ? { connect_domains: [...new Set(connectDomains)] } : {}),
21
+ ...(frameDomains.length > 0 ? { frame_domains: [...new Set(frameDomains)] } : {}),
22
+ // `_meta.ui.csp` has no redirect concept; `redirect_domains` on the legacy key is what lets
23
+ // ChatGPT open `openExternal` targets without the safe-link warning. Derived from the app's
24
+ // `handoff.allowedDomains` so external-link targets are declared exactly once.
25
+ ...(redirectDomains.length > 0 ? { redirect_domains: [...new Set(redirectDomains)] } : {}),
20
26
  };
21
27
  return Object.keys(csp).length > 0 ? csp : undefined;
22
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"widget-compile-helpers.js","sourceRoot":"","sources":["../src/widget-compile-helpers.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,uBAAuB,CACrC,MAAgC,EAChC,WAA+B;IAE/B,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IAC7C,MAAM,QAAQ,GAAG,MAAM,EAAE,GAAG,EAAE,eAAe,IAAI,EAAE,CAAC;IACpD,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACjE,OAAO;QACL,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;QACjB,GAAG,EAAE;YACH,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC;YACtB,eAAe;SAChB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,MAAgC;IAEhC,MAAM,eAAe,GAAG,MAAM,EAAE,GAAG,EAAE,eAAe,IAAI,EAAE,CAAC;IAC3D,MAAM,cAAc,GAAG,MAAM,EAAE,GAAG,EAAE,cAAc,IAAI,EAAE,CAAC;IACzD,MAAM,GAAG,GAAG;QACV,GAAG,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxF,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"widget-compile-helpers.js","sourceRoot":"","sources":["../src/widget-compile-helpers.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,uBAAuB,CACrC,MAAgC,EAChC,WAA+B;IAE/B,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IAC7C,MAAM,QAAQ,GAAG,MAAM,EAAE,GAAG,EAAE,eAAe,IAAI,EAAE,CAAC;IACpD,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACjE,OAAO;QACL,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;QACjB,GAAG,EAAE;YACH,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC;YACtB,eAAe;SAChB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,MAAgC,EAChC,kBAAqC,EAAE;IASvC,MAAM,eAAe,GAAG,MAAM,EAAE,GAAG,EAAE,eAAe,IAAI,EAAE,CAAC;IAC3D,MAAM,cAAc,GAAG,MAAM,EAAE,GAAG,EAAE,cAAc,IAAI,EAAE,CAAC;IACzD,MAAM,YAAY,GAAG,MAAM,EAAE,GAAG,EAAE,YAAY,IAAI,EAAE,CAAC;IACrD,MAAM,GAAG,GAAG;QACV,GAAG,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,4FAA4F;QAC5F,4FAA4F;QAC5F,+EAA+E;QAC/E,GAAG,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3F,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"widget-emit.d.ts","sourceRoot":"","sources":["../src/widget-emit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAEpB,MAAM,sBAAsB,CAAC;AAE9B,yGAAyG;AACzG,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,wBAAgB,UAAU,CACxB,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAChD,OAAO,GAAE;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAA;CAAO,GACvF,MAAM,CAMR;AAYD;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAC/C,YAAY,GAAG,SAAS,CAgB1B"}
1
+ {"version":3,"file":"widget-emit.d.ts","sourceRoot":"","sources":["../src/widget-emit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAEpB,MAAM,sBAAsB,CAAC;AAE9B,yGAAyG;AACzG,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,wBAAgB,UAAU,CACxB,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAChD,OAAO,GAAE;IAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAA;CAAO,GACvF,MAAM,CAMR;AAYD;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAC/C,YAAY,GAAG,SAAS,CAmB1B"}
@@ -34,10 +34,12 @@ export function resourceUiMeta(widget) {
34
34
  const hasPermissions = permissions !== undefined && Object.keys(permissions).length > 0;
35
35
  const prefersBorder = widget.view !== undefined ? false : undefined;
36
36
  const cleanPermissions = permissions === undefined ? undefined : cleanPermissionRecord(permissions);
37
- if (!hasCsp && !hasPermissions && prefersBorder === undefined)
37
+ if (!hasCsp && !hasPermissions && prefersBorder === undefined && widget.domain === undefined) {
38
38
  return undefined;
39
+ }
39
40
  return {
40
41
  ...(csp && hasCsp ? { csp } : {}),
42
+ ...(widget.domain !== undefined ? { domain: widget.domain } : {}),
41
43
  ...(cleanPermissions && Object.keys(cleanPermissions).length > 0
42
44
  ? { permissions: cleanPermissions }
43
45
  : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"widget-emit.js","sourceRoot":"","sources":["../src/widget-emit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"widget-emit.js","sourceRoot":"","sources":["../src/widget-emit.ts"],"names":[],"mappings":"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"}
@@ -89,6 +89,8 @@ export interface ResourceContent {
89
89
  readonly mimeType?: string;
90
90
  readonly text?: string;
91
91
  readonly blob?: string;
92
+ /** The owning resource's `_meta` (hosts read widget CSP/domain here on `resources/read`). */
93
+ readonly _meta?: Readonly<Record<string, unknown>>;
92
94
  }
93
95
  export interface ReadResourceResult {
94
96
  readonly contents: readonly ResourceContent[];
@@ -103,7 +105,7 @@ export declare function mapResourceTemplatesList(artifact: RuntimeArtifact): Res
103
105
  * text content with the resource's mime type; an object with `text` or `blob` → that content verbatim;
104
106
  * anything else → a JSON-serialized text content.
105
107
  */
106
- export declare function mapResourceContents(uri: string, mimeType: string | undefined, output: unknown): ReadResourceResult;
108
+ export declare function mapResourceContents(uri: string, mimeType: string | undefined, output: unknown, meta?: Readonly<Record<string, unknown>>): ReadResourceResult;
107
109
  export interface PromptArgumentDescriptor {
108
110
  readonly name: string;
109
111
  readonly description?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"mapping.d.ts","sourceRoot":"","sources":["../src/mapping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,YAAY,EACZ,eAAe,EAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAY,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGjE;;;;;GAKG;AAEH,4DAA4D;AAC5D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,0GAA0G;IAC1G,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,iEAAiE;AACjE,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,SAAS,WAAW,EAAE,CAAC;IACzC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED,oGAAoG;AACpG,MAAM,MAAM,eAAe,GACvB;IAAE,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAA;CAAE,GACpC;IAAE,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAA;CAAE,CAAC;AAE3C,2GAA2G;AAC3G,wBAAgB,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,CAS1D;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,eAAe,CAEvE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,eAAe,CAgB9D;AA0BD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAEjE;AA2DD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,CAQxE;AAID,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,8FAA8F;IAC9F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACnD;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,iBAAiB,EAAE,SAAS,0BAA0B,EAAE,CAAC;CACnE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;CAC/C;AAWD,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,mBAAmB,CAK/E;AAED,qFAAqF;AACrF,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,eAAe,GAAG,2BAA2B,CAK/F;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,MAAM,EAAE,OAAO,GACd,kBAAkB,CAqBpB;AAID,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAC;CAC1D;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,SAAS,aAAa,EAAE,CAAC;CAC7C;AAED,6DAA6D;AAC7D,wBAAgB,cAAc,CAAC,QAAQ,EAAE,eAAe,GAAG,iBAAiB,CAgB3E;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,eAAe,CAGxF"}
1
+ {"version":3,"file":"mapping.d.ts","sourceRoot":"","sources":["../src/mapping.ts"],"names":[],"mappings":"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"}
@@ -158,13 +158,17 @@ export function mapResourceTemplatesList(artifact) {
158
158
  * text content with the resource's mime type; an object with `text` or `blob` → that content verbatim;
159
159
  * anything else → a JSON-serialized text content.
160
160
  */
161
- export function mapResourceContents(uri, mimeType, output) {
161
+ export function mapResourceContents(uri, mimeType, output, meta) {
162
162
  const value = unwrap(output);
163
+ // Hosts read widget capability metadata (`ui.csp`, `ui.domain`, `openai/widgetCSP`) from the read
164
+ // contents item, not only the resources/list entry — ChatGPT treats a read result without it as
165
+ // "CSP not set" — so the resource's `_meta` rides on every contents item.
166
+ const withMeta = (content) => meta !== undefined ? { ...content, _meta: meta } : content;
163
167
  // For an MCP Apps widget (`text/html;profile=mcp-app`), inject the ext-apps client bridge into the body
164
168
  // so the host renders it (a no-op for every other mime type). See ./widget/inject.ts.
165
169
  const withMime = (text) => {
166
170
  const body = injectWidgetBridge(mimeType, text);
167
- return mimeType !== undefined ? { uri, mimeType, text: body } : { uri, text: body };
171
+ return withMeta(mimeType !== undefined ? { uri, mimeType, text: body } : { uri, text: body });
168
172
  };
169
173
  if (typeof value === 'string')
170
174
  return { contents: [withMime(value)] };
@@ -175,7 +179,9 @@ export function mapResourceContents(uri, mimeType, output) {
175
179
  if (typeof o.blob === 'string') {
176
180
  const mt = typeof o.mimeType === 'string' ? o.mimeType : mimeType;
177
181
  return {
178
- contents: [mt !== undefined ? { uri, mimeType: mt, blob: o.blob } : { uri, blob: o.blob }],
182
+ contents: [
183
+ withMeta(mt !== undefined ? { uri, mimeType: mt, blob: o.blob } : { uri, blob: o.blob }),
184
+ ],
179
185
  };
180
186
  }
181
187
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mapping.js","sourceRoot":"","sources":["../src/mapping.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mapping.js","sourceRoot":"","sources":["../src/mapping.ts"],"names":[],"mappings":"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"}
@@ -115,7 +115,7 @@ function registerResources(server, artifact, deps, context) {
115
115
  });
116
116
  throw new McpError(ErrorCode.InternalError, result.error.message);
117
117
  }
118
- const mapped = mapResourceContents(uri, resource.mimeType, result.output);
118
+ const mapped = mapResourceContents(uri, resource.mimeType, result.output, resource._meta);
119
119
  notify(context, {
120
120
  method: 'resources/read',
121
121
  resourceName: resource.name,
@@ -1 +1 @@
1
- {"version":3,"file":"sdk-server.js","sourceRoot":"","sources":["../src/sdk-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk-server.js","sourceRoot":"","sources":["../src/sdk-server.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  /** React helper bridge source injected into the shared widget bootstrap. */
2
- export declare const WIDGET_REACT_BRIDGE_SOURCE = "\n function notifyReact(eventName) {\n globalThis.__noodleReactVersion = (globalThis.__noodleReactVersion || 0) + 1;\n try { globalThis.dispatchEvent(new CustomEvent(eventName)); } catch (e) {}\n }\n function installReactBridge() {\n globalThis.__noodleReactBridge = {\n getToolResult: () => ({ structuredContent: globalThis.__noodleData || {} }),\n getViewState: () => stateData(),\n setWidgetState: (patch) => setState(patch || {}),\n getLayout: () => {\n const context = (app.getHostContext && app.getHostContext()) || globalThis.__noodleLayout || {};\n return {\n theme: context.theme === 'dark' ? 'dark' : 'light',\n displayMode: context.displayMode === 'fullscreen' ? 'fullscreen' : 'inline',\n ...(context.locale ? { locale: context.locale } : {}),\n };\n },\n callServerTool: (request) => app.callServerTool({\n name: request && request.name,\n arguments: request ? request.arguments : undefined,\n }),\n openExternal: (url) => app.openLink({ href: String(url || '') }),\n sendFollowUpMessage: (message) => app.sendMessage({ prompt: String((message && message.prompt) || '') }),\n };\n notifyReact('noodle:bridge');\n }\n";
2
+ export declare const WIDGET_REACT_BRIDGE_SOURCE = "\n function notifyReact(eventName) {\n globalThis.__noodleReactVersion = (globalThis.__noodleReactVersion || 0) + 1;\n try { globalThis.dispatchEvent(new CustomEvent(eventName)); } catch (e) {}\n }\n function installReactBridge() {\n globalThis.__noodleReactBridge = {\n getToolResult: () => ({ structuredContent: globalThis.__noodleData || {} }),\n getViewState: () => stateData(),\n setWidgetState: (patch) => setState(patch || {}),\n getLayout: () => {\n const context = (app.getHostContext && app.getHostContext()) || globalThis.__noodleLayout || {};\n return {\n theme: context.theme === 'dark' ? 'dark' : 'light',\n displayMode: context.displayMode === 'fullscreen' ? 'fullscreen' : 'inline',\n ...(context.locale ? { locale: context.locale } : {}),\n };\n },\n callServerTool: (request) => app.callServerTool({\n name: request && request.name,\n arguments: request ? request.arguments : undefined,\n }),\n openExternal: (url) => app.openLink({ url: String(url || '') }),\n sendFollowUpMessage: (message) => app.sendMessage({ prompt: String((message && message.prompt) || '') }),\n };\n notifyReact('noodle:bridge');\n }\n";
3
3
  //# sourceMappingURL=react-bridge-bootstrap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react-bridge-bootstrap.d.ts","sourceRoot":"","sources":["../../src/widget/react-bridge-bootstrap.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,eAAO,MAAM,0BAA0B,4uCA2BtC,CAAC"}
1
+ {"version":3,"file":"react-bridge-bootstrap.d.ts","sourceRoot":"","sources":["../../src/widget/react-bridge-bootstrap.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,eAAO,MAAM,0BAA0B,2uCA2BtC,CAAC"}
@@ -21,7 +21,7 @@ export const WIDGET_REACT_BRIDGE_SOURCE = `
21
21
  name: request && request.name,
22
22
  arguments: request ? request.arguments : undefined,
23
23
  }),
24
- openExternal: (url) => app.openLink({ href: String(url || '') }),
24
+ openExternal: (url) => app.openLink({ url: String(url || '') }),
25
25
  sendFollowUpMessage: (message) => app.sendMessage({ prompt: String((message && message.prompt) || '') }),
26
26
  };
27
27
  notifyReact('noodle:bridge');
@@ -0,0 +1,57 @@
1
+ import type { RequestEventStore } from '@noodle-borg/module';
2
+ import { type Logger } from '@noodle-borg/transport-http';
3
+ import { type AlertWebhookDelivery, type AlertWebhookPayload } from './alert-webhook.js';
4
+ import { type RequestMetrics } from './request-event-metrics.js';
5
+ import type { AlertMetric, AlertRuleStore } from './store/alert-rules.js';
6
+ /**
7
+ * Periodic alert-rule evaluator (E2, ADR 0130), modeled on `ArchiveSweeper`: a throttled
8
+ * `maybeSweep()` (boot + a `serveService` interval timer) drives `sweepNow()`, which evaluates
9
+ * every ENABLED rule against its own window of the tenant's request-event stream using the same
10
+ * `aggregateRequestEvents` the metrics route serves — one aggregation, no duplicate math.
11
+ *
12
+ * EDGE-TRIGGERED: a rule fires on the non-breaching → breaching transition, and re-fires while
13
+ * still breaching only after `cooldownMinutes` since the last fire. Delivery is a single attempt;
14
+ * a failed delivery still stamps `lastFiredAt` so the sweep never becomes a retry loop (retries/
15
+ * backoff are an explicit E3 deferral). Firing state persists so edge-triggering survives restarts.
16
+ *
17
+ * Logging is closed-vocabulary + rule id + HTTP status only — the webhook URL is sensitive and
18
+ * never appears in any log line.
19
+ *
20
+ * Instance scope: the sweep is per-instance (in-flight-guarded and throttled locally). On a
21
+ * multi-instance deployment two instances can each fire the same breach once before the shared
22
+ * firing state persists — a duplicate notification, never lost/corrupted state. A cross-instance
23
+ * atomic fire claim is an explicit E3 deferral (ADR 0130).
24
+ */
25
+ export declare const ALERT_EVALUATION_INTERVAL_MS = 60000;
26
+ /** The observed value a rule compares against its threshold, per metric. */
27
+ export declare function observedMetricValue(metric: AlertMetric, metrics: RequestMetrics): number;
28
+ export interface AlertEvaluatorOptions {
29
+ readonly alertRules: AlertRuleStore;
30
+ readonly requestEvents: RequestEventStore;
31
+ /** Dev/test-only loopback webhook carve-out, threaded to the delivery policy. Default false. */
32
+ readonly allowLoopbackWebhooks?: boolean;
33
+ /** Injectable delivery seam for tests. Default {@link deliverAlertWebhook}. */
34
+ readonly deliver?: (url: string, payload: AlertWebhookPayload, options: {
35
+ readonly allowLoopback: boolean;
36
+ }) => Promise<AlertWebhookDelivery>;
37
+ /** Injectable clock for deterministic edge-trigger/cooldown tests. Default `new Date()`. */
38
+ readonly clock?: () => Date;
39
+ readonly logger?: Logger;
40
+ /** Throttle for {@link maybeSweep}. Default {@link ALERT_EVALUATION_INTERVAL_MS}. */
41
+ readonly intervalMs?: number;
42
+ }
43
+ export declare class AlertEvaluator {
44
+ #private;
45
+ constructor(options: AlertEvaluatorOptions);
46
+ /**
47
+ * Throttled, fire-and-forget sweep (the serve-time interval calls this): never throws, and
48
+ * never overlaps — a sweep that outlives the interval (slow store/webhook timeouts) must not
49
+ * race a second sweep into double-delivering the same breach before state persists.
50
+ */
51
+ maybeSweep(): void;
52
+ sweepNow(): Promise<{
53
+ readonly evaluated: number;
54
+ readonly fired: number;
55
+ }>;
56
+ }
57
+ //# sourceMappingURL=alert-evaluator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-evaluator.d.ts","sourceRoot":"","sources":["../src/alert-evaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,KAAK,MAAM,EAAc,MAAM,6BAA6B,CAAC;AACtE,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EAGzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,KAAK,EAAE,WAAW,EAAmB,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE3F;;;;;;;;;;;;;;;;;;GAkBG;AAEH,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAInD,4EAA4E;AAC5E,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,GAAG,MAAM,CAWxF;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;IAC1C,gGAAgG;IAChG,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC,+EAA+E;IAC/E,QAAQ,CAAC,OAAO,CAAC,EAAE,CACjB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE;QAAE,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;KAAE,KACzC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnC,4FAA4F;IAC5F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,qFAAqF;IACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,cAAc;;gBAWb,OAAO,EAAE,qBAAqB;IAY1C;;;;OAIG;IACH,UAAU,IAAI,IAAI;IAsBZ,QAAQ,IAAI,OAAO,CAAC;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAyElF"}
@@ -0,0 +1,158 @@
1
+ import { noopLogger } from '@noodle-borg/transport-http';
2
+ import { buildAlertWebhookPayload, deliverAlertWebhook, } from './alert-webhook.js';
3
+ import { aggregateRequestEvents } from './request-event-metrics.js';
4
+ /**
5
+ * Periodic alert-rule evaluator (E2, ADR 0130), modeled on `ArchiveSweeper`: a throttled
6
+ * `maybeSweep()` (boot + a `serveService` interval timer) drives `sweepNow()`, which evaluates
7
+ * every ENABLED rule against its own window of the tenant's request-event stream using the same
8
+ * `aggregateRequestEvents` the metrics route serves — one aggregation, no duplicate math.
9
+ *
10
+ * EDGE-TRIGGERED: a rule fires on the non-breaching → breaching transition, and re-fires while
11
+ * still breaching only after `cooldownMinutes` since the last fire. Delivery is a single attempt;
12
+ * a failed delivery still stamps `lastFiredAt` so the sweep never becomes a retry loop (retries/
13
+ * backoff are an explicit E3 deferral). Firing state persists so edge-triggering survives restarts.
14
+ *
15
+ * Logging is closed-vocabulary + rule id + HTTP status only — the webhook URL is sensitive and
16
+ * never appears in any log line.
17
+ *
18
+ * Instance scope: the sweep is per-instance (in-flight-guarded and throttled locally). On a
19
+ * multi-instance deployment two instances can each fire the same breach once before the shared
20
+ * firing state persists — a duplicate notification, never lost/corrupted state. A cross-instance
21
+ * atomic fire claim is an explicit E3 deferral (ADR 0130).
22
+ */
23
+ export const ALERT_EVALUATION_INTERVAL_MS = 60_000;
24
+ /** Same bounded read as the metrics route (`METRICS_SCAN_LIMIT`). */
25
+ const EVAL_SCAN_LIMIT = 50_000;
26
+ /** The observed value a rule compares against its threshold, per metric. */
27
+ export function observedMetricValue(metric, metrics) {
28
+ switch (metric) {
29
+ case 'error_share':
30
+ return metrics.errors.errorRate;
31
+ case 'error_count':
32
+ return metrics.errors.toolErrors + metrics.errors.mcpErrors;
33
+ case 'calls':
34
+ return metrics.totals.requests;
35
+ case 'p95_ms':
36
+ return metrics.latency.p95Ms;
37
+ }
38
+ }
39
+ export class AlertEvaluator {
40
+ #alertRules;
41
+ #requestEvents;
42
+ #allowLoopback;
43
+ #deliver;
44
+ #clock;
45
+ #logger;
46
+ #intervalMs;
47
+ #lastSweepStartedAt;
48
+ #sweepInFlight = false;
49
+ constructor(options) {
50
+ this.#alertRules = options.alertRules;
51
+ this.#requestEvents = options.requestEvents;
52
+ this.#allowLoopback = options.allowLoopbackWebhooks === true;
53
+ this.#deliver =
54
+ options.deliver ??
55
+ ((url, payload, deliverOptions) => deliverAlertWebhook(url, payload, deliverOptions));
56
+ this.#clock = options.clock ?? (() => new Date());
57
+ this.#logger = options.logger ?? noopLogger;
58
+ this.#intervalMs = options.intervalMs ?? ALERT_EVALUATION_INTERVAL_MS;
59
+ }
60
+ /**
61
+ * Throttled, fire-and-forget sweep (the serve-time interval calls this): never throws, and
62
+ * never overlaps — a sweep that outlives the interval (slow store/webhook timeouts) must not
63
+ * race a second sweep into double-delivering the same breach before state persists.
64
+ */
65
+ maybeSweep() {
66
+ if (this.#sweepInFlight)
67
+ return;
68
+ const now = this.#clock().getTime();
69
+ if (this.#lastSweepStartedAt !== undefined &&
70
+ now - this.#lastSweepStartedAt < this.#intervalMs) {
71
+ return;
72
+ }
73
+ this.#lastSweepStartedAt = now;
74
+ this.#sweepInFlight = true;
75
+ void this.sweepNow()
76
+ .catch((error) => {
77
+ this.#logger.warn('alert.sweep.failed', {
78
+ message: error instanceof Error ? error.message : String(error),
79
+ });
80
+ })
81
+ .finally(() => {
82
+ this.#sweepInFlight = false;
83
+ });
84
+ }
85
+ async sweepNow() {
86
+ const rules = await this.#alertRules.listEnabledAlertRules();
87
+ let fired = 0;
88
+ for (const rule of rules) {
89
+ try {
90
+ if (await this.#evaluateRule(rule))
91
+ fired += 1;
92
+ }
93
+ catch (error) {
94
+ // One bad rule (store fault, throwing delivery seam) must not starve the others. Store
95
+ // errors never carry the webhook URL; delivery outcomes are closed codes by construction.
96
+ this.#logger.warn('alert.evaluate.failed', {
97
+ ruleId: rule.id,
98
+ message: error instanceof Error ? error.name : 'unknown',
99
+ });
100
+ }
101
+ }
102
+ return { evaluated: rules.length, fired };
103
+ }
104
+ async #evaluateRule(rule) {
105
+ const now = this.#clock();
106
+ const since = new Date(now.getTime() - rule.windowMinutes * 60_000).toISOString();
107
+ const events = await this.#requestEvents.list({
108
+ org: rule.orgSlug,
109
+ app: rule.appSlug,
110
+ env: rule.environment,
111
+ since,
112
+ limit: EVAL_SCAN_LIMIT,
113
+ });
114
+ const observed = observedMetricValue(rule.metric, aggregateRequestEvents(events));
115
+ const breaching = observed >= rule.threshold;
116
+ const transition = breaching && !rule.breaching;
117
+ const cooldownElapsed = rule.lastFiredAt === undefined ||
118
+ now.getTime() - Date.parse(rule.lastFiredAt) >= rule.cooldownMinutes * 60_000;
119
+ const shouldFire = transition || (breaching && rule.breaching && cooldownElapsed);
120
+ if (shouldFire) {
121
+ const firedAt = now.toISOString();
122
+ const payload = buildAlertWebhookPayload(rule, 'breach', observed, firedAt);
123
+ const outcome = await this.#deliver(rule.webhookUrl, payload, {
124
+ allowLoopback: this.#allowLoopback,
125
+ });
126
+ if (outcome.delivered) {
127
+ this.#logger.info('alert.webhook.delivered', {
128
+ ruleId: rule.id,
129
+ status: outcome.status ?? 0,
130
+ });
131
+ }
132
+ else {
133
+ this.#logger.warn('alert.webhook.failed', {
134
+ ruleId: rule.id,
135
+ reason: outcome.reason ?? 'unknown',
136
+ ...(outcome.status !== undefined ? { status: outcome.status } : {}),
137
+ });
138
+ }
139
+ // Stamp the fire regardless of delivery outcome: a single attempt, never a retry loop (E3).
140
+ await this.#alertRules.updateAlertFiringState(rule.id, {
141
+ breaching: true,
142
+ lastObserved: observed,
143
+ lastFiredAt: firedAt,
144
+ });
145
+ return true;
146
+ }
147
+ if (breaching !== rule.breaching) {
148
+ // Recovery (or a breach the fire path above already covers): persist the edge so the next
149
+ // crossing is a fresh transition. `lastFiredAt` is preserved by omission.
150
+ await this.#alertRules.updateAlertFiringState(rule.id, {
151
+ breaching,
152
+ lastObserved: observed,
153
+ });
154
+ }
155
+ return false;
156
+ }
157
+ }
158
+ //# sourceMappingURL=alert-evaluator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-evaluator.js","sourceRoot":"","sources":["../src/alert-evaluator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import { type DnsLookup } from '@noodle-borg/connector-http';
2
+ import type { AlertMetric, AlertRuleRecord } from './store/alert-rules.js';
3
+ /**
4
+ * Alert webhook delivery (E2, ADR 0130): a single POST attempt with a bounded timeout through the
5
+ * shared SSRF guard (`guardedFetch` pins DNS resolutions to public unicast addresses — the same
6
+ * anti-rebinding layer the HTTP connector uses). No retries, no backoff queue (deferred to E3).
7
+ *
8
+ * The webhook URL is SENSITIVE (it may embed capability tokens). Nothing this module returns or
9
+ * throws carries the URL, its host, or an upstream error message: outcomes are closed-vocabulary
10
+ * reason codes plus the HTTP status, safe to log verbatim.
11
+ */
12
+ export declare const ALERT_WEBHOOK_SCHEMA_VERSION = 1;
13
+ export interface AlertWebhookPayload {
14
+ readonly schemaVersion: typeof ALERT_WEBHOOK_SCHEMA_VERSION;
15
+ readonly event: 'breach' | 'test';
16
+ readonly org: string;
17
+ readonly app: string;
18
+ readonly env: string;
19
+ readonly rule: {
20
+ readonly id: string;
21
+ readonly name?: string;
22
+ readonly metric: AlertMetric;
23
+ readonly threshold: number;
24
+ readonly windowMinutes: number;
25
+ readonly comparison: '>=';
26
+ };
27
+ readonly observed: number;
28
+ readonly firedAt: string;
29
+ }
30
+ export declare function buildAlertWebhookPayload(rule: AlertRuleRecord, event: 'breach' | 'test', observed: number, firedAt: string): AlertWebhookPayload;
31
+ /** Closed-vocabulary outcome — safe to log and to return to callers (never carries the URL). */
32
+ export interface AlertWebhookDelivery {
33
+ readonly delivered: boolean;
34
+ readonly status?: number;
35
+ readonly reason?: 'invalid_url' | 'egress_blocked' | 'timeout' | 'network_error' | 'http_error';
36
+ }
37
+ export interface WebhookUrlPolicy {
38
+ /**
39
+ * Development/test-only carve-out: allow `http://localhost`, `http://127.0.0.1`, and `[::1]`
40
+ * targets (mirrors `customerVerifierAllowInsecureLocalhost`). Off in production: webhooks are
41
+ * https-only and literal private/reserved IPs are rejected outright.
42
+ */
43
+ readonly allowLoopback: boolean;
44
+ }
45
+ export type WebhookUrlValidation = {
46
+ ok: true;
47
+ url: URL;
48
+ } | {
49
+ ok: false;
50
+ error: string;
51
+ };
52
+ /**
53
+ * Policy validation for a webhook URL, applied at rule create/test time AND re-applied on every
54
+ * delivery (defense in depth for stored rules). Error messages are generic policy text — they
55
+ * never echo the URL, host, or credentials back.
56
+ */
57
+ export declare function validateAlertWebhookUrl(raw: string, policy: WebhookUrlPolicy): WebhookUrlValidation;
58
+ export interface DeliverAlertWebhookOptions {
59
+ readonly allowLoopback?: boolean;
60
+ /** Whole-attempt bound. Default 10s. */
61
+ readonly timeoutMs?: number;
62
+ /** Injectable DNS resolver for SSRF tests (threaded into the guarded agent). */
63
+ readonly lookup?: DnsLookup;
64
+ }
65
+ /**
66
+ * Single-attempt webhook POST. Loopback targets (dev carve-out) use the plain platform fetch —
67
+ * the pinned lookup would reject loopback resolutions by design; everything else goes through
68
+ * {@link guardedFetch}. Redirects are not followed (a redirect could re-point the request at an
69
+ * unguarded literal-IP target); a 3xx reports as an ordinary non-2xx outcome.
70
+ */
71
+ export declare function deliverAlertWebhook(rawUrl: string, payload: AlertWebhookPayload, options?: DeliverAlertWebhookOptions): Promise<AlertWebhookDelivery>;
72
+ //# sourceMappingURL=alert-webhook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert-webhook.d.ts","sourceRoot":"","sources":["../src/alert-webhook.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAiC,MAAM,6BAA6B,CAAC;AAC5F,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE3E;;;;;;;;GAQG;AAEH,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAI9C,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,aAAa,EAAE,OAAO,4BAA4B,CAAC;IAC5D,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE;QACb,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;QAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;KAC3B,CAAC;IACF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,QAAQ,GAAG,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,mBAAmB,CAkBrB;AAED,gGAAgG;AAChG,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,gBAAgB,GAAG,SAAS,GAAG,eAAe,GAAG,YAAY,CAAC;CACjG;AAED,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,MAAM,oBAAoB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,GAAG,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzF;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,gBAAgB,GACvB,oBAAoB,CAmCtB;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,wCAAwC;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,gFAAgF;IAChF,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,mBAAmB,EAC5B,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,oBAAoB,CAAC,CAkC/B"}