@noodleseed/one 0.16.0 → 0.18.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 (348) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +52 -5
  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/apps-ops.d.ts +17 -0
  13. package/dist/commands/apps-ops.d.ts.map +1 -0
  14. package/dist/commands/apps-ops.js +285 -0
  15. package/dist/commands/apps-ops.js.map +1 -0
  16. package/dist/commands/archive-ops.js +2 -2
  17. package/dist/commands/archive-ops.js.map +1 -1
  18. package/dist/commands/catalog-data-config.d.ts +9 -0
  19. package/dist/commands/catalog-data-config.d.ts.map +1 -0
  20. package/dist/commands/catalog-data-config.js +67 -0
  21. package/dist/commands/catalog-data-config.js.map +1 -0
  22. package/dist/commands/catalog-data-core.d.ts +13 -0
  23. package/dist/commands/catalog-data-core.d.ts.map +1 -0
  24. package/dist/commands/catalog-data-core.js +354 -0
  25. package/dist/commands/catalog-data-core.js.map +1 -0
  26. package/dist/commands/catalog-data-resources.d.ts +8 -0
  27. package/dist/commands/catalog-data-resources.d.ts.map +1 -0
  28. package/dist/commands/catalog-data-resources.js +551 -0
  29. package/dist/commands/catalog-data-resources.js.map +1 -0
  30. package/dist/commands/catalog-dispatch.d.ts +15 -0
  31. package/dist/commands/catalog-dispatch.d.ts.map +1 -0
  32. package/dist/commands/catalog-dispatch.js +95 -0
  33. package/dist/commands/catalog-dispatch.js.map +1 -0
  34. package/dist/commands/catalog-render.d.ts +28 -0
  35. package/dist/commands/catalog-render.d.ts.map +1 -0
  36. package/dist/commands/catalog-render.js +142 -0
  37. package/dist/commands/catalog-render.js.map +1 -0
  38. package/dist/commands/catalog-types.d.ts +46 -0
  39. package/dist/commands/catalog-types.d.ts.map +1 -0
  40. package/dist/commands/catalog-types.js +7 -0
  41. package/dist/commands/catalog-types.js.map +1 -0
  42. package/dist/commands/catalog.d.ts +30 -0
  43. package/dist/commands/catalog.d.ts.map +1 -0
  44. package/dist/commands/catalog.js +108 -0
  45. package/dist/commands/catalog.js.map +1 -0
  46. package/dist/commands/commands-ops.d.ts +2 -0
  47. package/dist/commands/commands-ops.d.ts.map +1 -0
  48. package/dist/commands/commands-ops.js +19 -0
  49. package/dist/commands/commands-ops.js.map +1 -0
  50. package/dist/commands/deploy-ops.d.ts +45 -3
  51. package/dist/commands/deploy-ops.d.ts.map +1 -1
  52. package/dist/commands/deploy-ops.js +200 -227
  53. package/dist/commands/deploy-ops.js.map +1 -1
  54. package/dist/commands/deploy-status-ops.d.ts +13 -0
  55. package/dist/commands/deploy-status-ops.d.ts.map +1 -0
  56. package/dist/commands/deploy-status-ops.js +252 -0
  57. package/dist/commands/deploy-status-ops.js.map +1 -0
  58. package/dist/commands/deployments-ops.d.ts +30 -0
  59. package/dist/commands/deployments-ops.d.ts.map +1 -0
  60. package/dist/commands/deployments-ops.js +248 -0
  61. package/dist/commands/deployments-ops.js.map +1 -0
  62. package/dist/commands/envs-ops.d.ts +8 -0
  63. package/dist/commands/envs-ops.d.ts.map +1 -0
  64. package/dist/commands/envs-ops.js +240 -0
  65. package/dist/commands/envs-ops.js.map +1 -0
  66. package/dist/commands/github-ops.d.ts +15 -0
  67. package/dist/commands/github-ops.d.ts.map +1 -0
  68. package/dist/commands/github-ops.js +316 -0
  69. package/dist/commands/github-ops.js.map +1 -0
  70. package/dist/commands/github-runs-ops.d.ts +32 -0
  71. package/dist/commands/github-runs-ops.d.ts.map +1 -0
  72. package/dist/commands/github-runs-ops.js +132 -0
  73. package/dist/commands/github-runs-ops.js.map +1 -0
  74. package/dist/commands/github-shared.d.ts +60 -0
  75. package/dist/commands/github-shared.d.ts.map +1 -0
  76. package/dist/commands/github-shared.js +175 -0
  77. package/dist/commands/github-shared.js.map +1 -0
  78. package/dist/commands/org-admin.d.ts.map +1 -1
  79. package/dist/commands/org-admin.js +223 -43
  80. package/dist/commands/org-admin.js.map +1 -1
  81. package/dist/commands/output.d.ts +35 -0
  82. package/dist/commands/output.d.ts.map +1 -0
  83. package/dist/commands/output.js +34 -0
  84. package/dist/commands/output.js.map +1 -0
  85. package/dist/commands/resource-shared.d.ts +132 -0
  86. package/dist/commands/resource-shared.d.ts.map +1 -0
  87. package/dist/commands/resource-shared.js +159 -0
  88. package/dist/commands/resource-shared.js.map +1 -0
  89. package/dist/commands/session.d.ts +6 -9
  90. package/dist/commands/session.d.ts.map +1 -1
  91. package/dist/commands/session.js +42 -116
  92. package/dist/commands/session.js.map +1 -1
  93. package/dist/commands/shared.d.ts.map +1 -1
  94. package/dist/commands/shared.js +3 -91
  95. package/dist/commands/shared.js.map +1 -1
  96. package/dist/commands/target-picker.d.ts +44 -0
  97. package/dist/commands/target-picker.d.ts.map +1 -0
  98. package/dist/commands/target-picker.js +88 -0
  99. package/dist/commands/target-picker.js.map +1 -0
  100. package/dist/commands/update-ops.js +1 -1
  101. package/dist/diagnostics.d.ts +5 -0
  102. package/dist/diagnostics.d.ts.map +1 -1
  103. package/dist/diagnostics.js +1 -1
  104. package/dist/diagnostics.js.map +1 -1
  105. package/dist/doctor.d.ts.map +1 -1
  106. package/dist/doctor.js +33 -0
  107. package/dist/doctor.js.map +1 -1
  108. package/dist/fire.d.ts +94 -0
  109. package/dist/fire.d.ts.map +1 -0
  110. package/dist/fire.js +418 -0
  111. package/dist/fire.js.map +1 -0
  112. package/dist/flavor.d.ts +19 -0
  113. package/dist/flavor.d.ts.map +1 -0
  114. package/dist/flavor.js +95 -0
  115. package/dist/flavor.js.map +1 -0
  116. package/dist/project.js +2 -2
  117. package/dist/prompts.d.ts.map +1 -1
  118. package/dist/prompts.js +30 -17
  119. package/dist/prompts.js.map +1 -1
  120. package/dist/relative-time.d.ts +8 -0
  121. package/dist/relative-time.d.ts.map +1 -0
  122. package/dist/relative-time.js +29 -0
  123. package/dist/relative-time.js.map +1 -0
  124. package/dist/table.d.ts +47 -0
  125. package/dist/table.d.ts.map +1 -0
  126. package/dist/table.js +152 -0
  127. package/dist/table.js.map +1 -0
  128. package/dist/update-binary.js +1 -1
  129. package/dist/update-check.d.ts +1 -1
  130. package/dist/update-check.js +1 -1
  131. package/dist/update.js +1 -1
  132. package/dist/watch.d.ts +52 -0
  133. package/dist/watch.d.ts.map +1 -0
  134. package/dist/watch.js +177 -0
  135. package/dist/watch.js.map +1 -0
  136. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.d.ts.map +1 -1
  137. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js +28 -1
  138. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js.map +1 -1
  139. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  140. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +6 -0
  141. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  142. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  143. package/node_modules/@noodle-borg/authoring/dist/connectors.js +14 -0
  144. package/node_modules/@noodle-borg/authoring/dist/connectors.js.map +1 -1
  145. package/node_modules/@noodle-borg/authoring/dist/recording.js +18 -23
  146. package/node_modules/@noodle-borg/authoring/dist/recording.js.map +1 -1
  147. package/node_modules/@noodle-borg/connector-defs/dist/compile.js +9 -0
  148. package/node_modules/@noodle-borg/connector-defs/dist/compile.js.map +1 -1
  149. package/node_modules/@noodle-borg/openapi-import/dist/index.d.ts.map +1 -1
  150. package/node_modules/@noodle-borg/openapi-import/dist/index.js +3 -1
  151. package/node_modules/@noodle-borg/openapi-import/dist/index.js.map +1 -1
  152. package/node_modules/@noodle-borg/service/dist/alert-evaluator.d.ts +57 -0
  153. package/node_modules/@noodle-borg/service/dist/alert-evaluator.d.ts.map +1 -0
  154. package/node_modules/@noodle-borg/service/dist/alert-evaluator.js +158 -0
  155. package/node_modules/@noodle-borg/service/dist/alert-evaluator.js.map +1 -0
  156. package/node_modules/@noodle-borg/service/dist/alert-webhook.d.ts +72 -0
  157. package/node_modules/@noodle-borg/service/dist/alert-webhook.d.ts.map +1 -0
  158. package/node_modules/@noodle-borg/service/dist/alert-webhook.js +138 -0
  159. package/node_modules/@noodle-borg/service/dist/alert-webhook.js.map +1 -0
  160. package/node_modules/@noodle-borg/service/dist/github/app-client.d.ts +49 -0
  161. package/node_modules/@noodle-borg/service/dist/github/app-client.d.ts.map +1 -0
  162. package/node_modules/@noodle-borg/service/dist/github/app-client.js +23 -0
  163. package/node_modules/@noodle-borg/service/dist/github/app-client.js.map +1 -0
  164. package/node_modules/@noodle-borg/service/dist/github/install-nonce.d.ts +23 -0
  165. package/node_modules/@noodle-borg/service/dist/github/install-nonce.d.ts.map +1 -0
  166. package/node_modules/@noodle-borg/service/dist/github/install-nonce.js +57 -0
  167. package/node_modules/@noodle-borg/service/dist/github/install-nonce.js.map +1 -0
  168. package/node_modules/@noodle-borg/service/dist/github/pending-installations.d.ts +38 -0
  169. package/node_modules/@noodle-borg/service/dist/github/pending-installations.d.ts.map +1 -0
  170. package/node_modules/@noodle-borg/service/dist/github/pending-installations.js +41 -0
  171. package/node_modules/@noodle-borg/service/dist/github/pending-installations.js.map +1 -0
  172. package/node_modules/@noodle-borg/service/dist/index.d.ts +15 -1
  173. package/node_modules/@noodle-borg/service/dist/index.d.ts.map +1 -1
  174. package/node_modules/@noodle-borg/service/dist/index.js +15 -1
  175. package/node_modules/@noodle-borg/service/dist/index.js.map +1 -1
  176. package/node_modules/@noodle-borg/service/dist/options.d.ts +47 -1
  177. package/node_modules/@noodle-borg/service/dist/options.d.ts.map +1 -1
  178. package/node_modules/@noodle-borg/service/dist/registry-state.d.ts +28 -7
  179. package/node_modules/@noodle-borg/service/dist/registry-state.d.ts.map +1 -1
  180. package/node_modules/@noodle-borg/service/dist/registry-state.js +116 -3
  181. package/node_modules/@noodle-borg/service/dist/registry-state.js.map +1 -1
  182. package/node_modules/@noodle-borg/service/dist/registry.d.ts +14 -1
  183. package/node_modules/@noodle-borg/service/dist/registry.d.ts.map +1 -1
  184. package/node_modules/@noodle-borg/service/dist/registry.js +20 -45
  185. package/node_modules/@noodle-borg/service/dist/registry.js.map +1 -1
  186. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.d.ts +28 -0
  187. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.d.ts.map +1 -0
  188. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.js +50 -0
  189. package/node_modules/@noodle-borg/service/dist/routes/alerts-dispatch.js.map +1 -0
  190. package/node_modules/@noodle-borg/service/dist/routes/alerts.d.ts +39 -0
  191. package/node_modules/@noodle-borg/service/dist/routes/alerts.d.ts.map +1 -0
  192. package/node_modules/@noodle-borg/service/dist/routes/alerts.js +204 -0
  193. package/node_modules/@noodle-borg/service/dist/routes/alerts.js.map +1 -0
  194. package/node_modules/@noodle-borg/service/dist/routes/analytics-dispatch.d.ts +23 -0
  195. package/node_modules/@noodle-borg/service/dist/routes/analytics-dispatch.d.ts.map +1 -0
  196. package/node_modules/@noodle-borg/service/dist/routes/analytics-dispatch.js +53 -0
  197. package/node_modules/@noodle-borg/service/dist/routes/analytics-dispatch.js.map +1 -0
  198. package/node_modules/@noodle-borg/service/dist/routes/apps.d.ts +24 -0
  199. package/node_modules/@noodle-borg/service/dist/routes/apps.d.ts.map +1 -0
  200. package/node_modules/@noodle-borg/service/dist/routes/apps.js +72 -0
  201. package/node_modules/@noodle-borg/service/dist/routes/apps.js.map +1 -0
  202. package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts +465 -0
  203. package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts.map +1 -0
  204. package/node_modules/@noodle-borg/service/dist/routes/contracts.js +233 -0
  205. package/node_modules/@noodle-borg/service/dist/routes/contracts.js.map +1 -0
  206. package/node_modules/@noodle-borg/service/dist/routes/deployments.d.ts +12 -1
  207. package/node_modules/@noodle-borg/service/dist/routes/deployments.d.ts.map +1 -1
  208. package/node_modules/@noodle-borg/service/dist/routes/deployments.js +31 -2
  209. package/node_modules/@noodle-borg/service/dist/routes/deployments.js.map +1 -1
  210. package/node_modules/@noodle-borg/service/dist/routes/endpoint-enrichment.d.ts +17 -0
  211. package/node_modules/@noodle-borg/service/dist/routes/endpoint-enrichment.d.ts.map +1 -0
  212. package/node_modules/@noodle-borg/service/dist/routes/endpoint-enrichment.js +15 -0
  213. package/node_modules/@noodle-borg/service/dist/routes/endpoint-enrichment.js.map +1 -0
  214. package/node_modules/@noodle-borg/service/dist/routes/envs.d.ts +22 -0
  215. package/node_modules/@noodle-borg/service/dist/routes/envs.d.ts.map +1 -0
  216. package/node_modules/@noodle-borg/service/dist/routes/envs.js +46 -0
  217. package/node_modules/@noodle-borg/service/dist/routes/envs.js.map +1 -0
  218. package/node_modules/@noodle-borg/service/dist/routes/github-connection.d.ts +29 -0
  219. package/node_modules/@noodle-borg/service/dist/routes/github-connection.d.ts.map +1 -0
  220. package/node_modules/@noodle-borg/service/dist/routes/github-connection.js +202 -0
  221. package/node_modules/@noodle-borg/service/dist/routes/github-connection.js.map +1 -0
  222. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.d.ts +30 -0
  223. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.d.ts.map +1 -0
  224. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.js +95 -0
  225. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.js.map +1 -0
  226. package/node_modules/@noodle-borg/service/dist/routes/github-runs.d.ts +8 -0
  227. package/node_modules/@noodle-borg/service/dist/routes/github-runs.d.ts.map +1 -0
  228. package/node_modules/@noodle-borg/service/dist/routes/github-runs.js +33 -0
  229. package/node_modules/@noodle-borg/service/dist/routes/github-runs.js.map +1 -0
  230. package/node_modules/@noodle-borg/service/dist/routes/github-setup.d.ts +28 -0
  231. package/node_modules/@noodle-borg/service/dist/routes/github-setup.d.ts.map +1 -0
  232. package/node_modules/@noodle-borg/service/dist/routes/github-setup.js +80 -0
  233. package/node_modules/@noodle-borg/service/dist/routes/github-setup.js.map +1 -0
  234. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.d.ts +29 -0
  235. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.d.ts.map +1 -0
  236. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.js +355 -0
  237. package/node_modules/@noodle-borg/service/dist/routes/github-webhook.js.map +1 -0
  238. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.d.ts +27 -0
  239. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.d.ts.map +1 -0
  240. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.js +61 -0
  241. package/node_modules/@noodle-borg/service/dist/routes/org-admin-dispatch.js.map +1 -0
  242. package/node_modules/@noodle-borg/service/dist/routes/org-admin.d.ts +5 -0
  243. package/node_modules/@noodle-borg/service/dist/routes/org-admin.d.ts.map +1 -1
  244. package/node_modules/@noodle-borg/service/dist/routes/org-admin.js +13 -1
  245. package/node_modules/@noodle-borg/service/dist/routes/org-admin.js.map +1 -1
  246. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts +64 -1
  247. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts.map +1 -1
  248. package/node_modules/@noodle-borg/service/dist/routes/paths.js +170 -1
  249. package/node_modules/@noodle-borg/service/dist/routes/paths.js.map +1 -1
  250. package/node_modules/@noodle-borg/service/dist/routes/resource-read-dispatch.d.ts +33 -0
  251. package/node_modules/@noodle-borg/service/dist/routes/resource-read-dispatch.d.ts.map +1 -0
  252. package/node_modules/@noodle-borg/service/dist/routes/resource-read-dispatch.js +69 -0
  253. package/node_modules/@noodle-borg/service/dist/routes/resource-read-dispatch.js.map +1 -0
  254. package/node_modules/@noodle-borg/service/dist/serve.d.ts.map +1 -1
  255. package/node_modules/@noodle-borg/service/dist/serve.js +42 -1
  256. package/node_modules/@noodle-borg/service/dist/serve.js.map +1 -1
  257. package/node_modules/@noodle-borg/service/dist/service.d.ts.map +1 -1
  258. package/node_modules/@noodle-borg/service/dist/service.js +81 -82
  259. package/node_modules/@noodle-borg/service/dist/service.js.map +1 -1
  260. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.d.ts +21 -0
  261. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.d.ts.map +1 -0
  262. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.js +115 -0
  263. package/node_modules/@noodle-borg/service/dist/store/alert-rules-json-file.js.map +1 -0
  264. package/node_modules/@noodle-borg/service/dist/store/alert-rules.d.ts +108 -0
  265. package/node_modules/@noodle-borg/service/dist/store/alert-rules.d.ts.map +1 -0
  266. package/node_modules/@noodle-borg/service/dist/store/alert-rules.js +181 -0
  267. package/node_modules/@noodle-borg/service/dist/store/alert-rules.js.map +1 -0
  268. package/node_modules/@noodle-borg/service/dist/store/control-plane.d.ts +1 -0
  269. package/node_modules/@noodle-borg/service/dist/store/control-plane.d.ts.map +1 -1
  270. package/node_modules/@noodle-borg/service/dist/store/control-plane.js +3 -0
  271. package/node_modules/@noodle-borg/service/dist/store/control-plane.js.map +1 -1
  272. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.d.ts +24 -0
  273. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.d.ts.map +1 -0
  274. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.js +141 -0
  275. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.js.map +1 -0
  276. package/node_modules/@noodle-borg/service/dist/store/github-connections.d.ts +31 -0
  277. package/node_modules/@noodle-borg/service/dist/store/github-connections.d.ts.map +1 -0
  278. package/node_modules/@noodle-borg/service/dist/store/github-connections.js +120 -0
  279. package/node_modules/@noodle-borg/service/dist/store/github-connections.js.map +1 -0
  280. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.d.ts +22 -0
  281. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.d.ts.map +1 -0
  282. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.js +116 -0
  283. package/node_modules/@noodle-borg/service/dist/store/github-runs-json-file.js.map +1 -0
  284. package/node_modules/@noodle-borg/service/dist/store/github-runs.d.ts +51 -0
  285. package/node_modules/@noodle-borg/service/dist/store/github-runs.d.ts.map +1 -0
  286. package/node_modules/@noodle-borg/service/dist/store/github-runs.js +158 -0
  287. package/node_modules/@noodle-borg/service/dist/store/github-runs.js.map +1 -0
  288. package/node_modules/@noodle-borg/service/dist/store/in-memory.d.ts +32 -0
  289. package/node_modules/@noodle-borg/service/dist/store/in-memory.d.ts.map +1 -0
  290. package/node_modules/@noodle-borg/service/dist/store/in-memory.js +169 -0
  291. package/node_modules/@noodle-borg/service/dist/store/in-memory.js.map +1 -0
  292. package/node_modules/@noodle-borg/service/dist/store/json-file.d.ts +14 -1
  293. package/node_modules/@noodle-borg/service/dist/store/json-file.d.ts.map +1 -1
  294. package/node_modules/@noodle-borg/service/dist/store/json-file.js +54 -1
  295. package/node_modules/@noodle-borg/service/dist/store/json-file.js.map +1 -1
  296. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.d.ts +19 -0
  297. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.d.ts.map +1 -0
  298. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.js +46 -0
  299. package/node_modules/@noodle-borg/service/dist/store/pending-installations-postgres.js.map +1 -0
  300. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.d.ts +26 -0
  301. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.d.ts.map +1 -0
  302. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.js +142 -0
  303. package/node_modules/@noodle-borg/service/dist/store/postgres-alerts.js.map +1 -0
  304. package/node_modules/@noodle-borg/service/dist/store/postgres-apps.d.ts +11 -0
  305. package/node_modules/@noodle-borg/service/dist/store/postgres-apps.d.ts.map +1 -0
  306. package/node_modules/@noodle-borg/service/dist/store/postgres-apps.js +31 -0
  307. package/node_modules/@noodle-borg/service/dist/store/postgres-apps.js.map +1 -0
  308. package/node_modules/@noodle-borg/service/dist/store/postgres-config.d.ts +21 -0
  309. package/node_modules/@noodle-borg/service/dist/store/postgres-config.d.ts.map +1 -0
  310. package/node_modules/@noodle-borg/service/dist/store/postgres-config.js +80 -0
  311. package/node_modules/@noodle-borg/service/dist/store/postgres-config.js.map +1 -0
  312. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.d.ts +1 -0
  313. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.d.ts.map +1 -1
  314. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.js +6 -0
  315. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.js.map +1 -1
  316. package/node_modules/@noodle-borg/service/dist/store/postgres-envs.d.ts +7 -0
  317. package/node_modules/@noodle-borg/service/dist/store/postgres-envs.d.ts.map +1 -0
  318. package/node_modules/@noodle-borg/service/dist/store/postgres-envs.js +34 -0
  319. package/node_modules/@noodle-borg/service/dist/store/postgres-envs.js.map +1 -0
  320. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.d.ts +9 -0
  321. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.d.ts.map +1 -0
  322. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.js +113 -0
  323. package/node_modules/@noodle-borg/service/dist/store/postgres-github-runs.js.map +1 -0
  324. package/node_modules/@noodle-borg/service/dist/store/postgres-github.d.ts +13 -0
  325. package/node_modules/@noodle-borg/service/dist/store/postgres-github.d.ts.map +1 -0
  326. package/node_modules/@noodle-borg/service/dist/store/postgres-github.js +130 -0
  327. package/node_modules/@noodle-borg/service/dist/store/postgres-github.js.map +1 -0
  328. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.d.ts.map +1 -1
  329. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js +85 -0
  330. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js.map +1 -1
  331. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts +32 -2
  332. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts.map +1 -1
  333. package/node_modules/@noodle-borg/service/dist/store/postgres.js +72 -75
  334. package/node_modules/@noodle-borg/service/dist/store/postgres.js.map +1 -1
  335. package/node_modules/@noodle-borg/service/dist/store/records.d.ts +56 -3
  336. package/node_modules/@noodle-borg/service/dist/store/records.d.ts.map +1 -1
  337. package/node_modules/@noodle-borg/service/dist/store/records.js +158 -0
  338. package/node_modules/@noodle-borg/service/dist/store/records.js.map +1 -1
  339. package/node_modules/@noodle-borg/service/dist/store/validate.d.ts +2 -0
  340. package/node_modules/@noodle-borg/service/dist/store/validate.d.ts.map +1 -1
  341. package/node_modules/@noodle-borg/service/dist/store/validate.js +7 -0
  342. package/node_modules/@noodle-borg/service/dist/store/validate.js.map +1 -1
  343. package/node_modules/@noodle-borg/service/dist/store.d.ts +265 -17
  344. package/node_modules/@noodle-borg/service/dist/store.d.ts.map +1 -1
  345. package/node_modules/@noodle-borg/service/dist/store.js +10 -118
  346. package/node_modules/@noodle-borg/service/dist/store.js.map +1 -1
  347. package/node_modules/@noodle-borg/service/package.json +2 -1
  348. package/package.json +2 -2
@@ -0,0 +1,465 @@
1
+ /**
2
+ * Zod response contracts for the org/app read surface (`GET /v1/orgs/{org}`, `.../apps`,
3
+ * `.../apps/{app}`). Handlers `.parse()` their response payload through these before sending, so the
4
+ * wire shape can never silently drift from what's declared here. The golden fixtures under the
5
+ * repo-root `contract/v1/` directory assert the same schemas parse realistic sample payloads — the
6
+ * cross-package drift gate future CLI/console tests load the same fixtures against, so all three
7
+ * surfaces stay pinned to one contract.
8
+ */
9
+ import { z } from 'zod';
10
+ /** Mirrors {@link DeploymentSummary} (`../store.js`). */
11
+ export declare const DeploymentSummarySchema: z.ZodObject<{
12
+ deploymentId: z.ZodString;
13
+ orgSlug: z.ZodString;
14
+ appSlug: z.ZodString;
15
+ environment: z.ZodString;
16
+ serverVersion: z.ZodOptional<z.ZodString>;
17
+ active: z.ZodBoolean;
18
+ serverName: z.ZodString;
19
+ createdAt: z.ZodString;
20
+ createdByEmail: z.ZodOptional<z.ZodString>;
21
+ accessMode: z.ZodEnum<{
22
+ "owner-only": "owner-only";
23
+ "org-members": "org-members";
24
+ authenticated: "authenticated";
25
+ public: "public";
26
+ mixed: "mixed";
27
+ customers: "customers";
28
+ }>;
29
+ archivedAt: z.ZodOptional<z.ZodString>;
30
+ endpointUrl: z.ZodOptional<z.ZodString>;
31
+ }, z.core.$strict>;
32
+ /** Mirrors {@link OrgRecord} (`../store.js`) — the `GET /v1/orgs/{org}` response `data`. */
33
+ export declare const OrgSummarySchema: z.ZodObject<{
34
+ slug: z.ZodString;
35
+ displayName: z.ZodOptional<z.ZodString>;
36
+ createdAt: z.ZodString;
37
+ }, z.core.$strict>;
38
+ /** Mirrors {@link AppSummary} (`../store.js`). */
39
+ export declare const AppSummarySchema: z.ZodObject<{
40
+ orgSlug: z.ZodString;
41
+ appSlug: z.ZodString;
42
+ environments: z.ZodArray<z.ZodString>;
43
+ latest: z.ZodOptional<z.ZodObject<{
44
+ deploymentId: z.ZodString;
45
+ orgSlug: z.ZodString;
46
+ appSlug: z.ZodString;
47
+ environment: z.ZodString;
48
+ serverVersion: z.ZodOptional<z.ZodString>;
49
+ active: z.ZodBoolean;
50
+ serverName: z.ZodString;
51
+ createdAt: z.ZodString;
52
+ createdByEmail: z.ZodOptional<z.ZodString>;
53
+ accessMode: z.ZodEnum<{
54
+ "owner-only": "owner-only";
55
+ "org-members": "org-members";
56
+ authenticated: "authenticated";
57
+ public: "public";
58
+ mixed: "mixed";
59
+ customers: "customers";
60
+ }>;
61
+ archivedAt: z.ZodOptional<z.ZodString>;
62
+ endpointUrl: z.ZodOptional<z.ZodString>;
63
+ }, z.core.$strict>>;
64
+ accessMode: z.ZodOptional<z.ZodString>;
65
+ active: z.ZodBoolean;
66
+ archivedAt: z.ZodOptional<z.ZodString>;
67
+ createdAt: z.ZodString;
68
+ lastActivityAt: z.ZodOptional<z.ZodString>;
69
+ }, z.core.$strict>;
70
+ /** The full `GET /v1/orgs/{org}/apps` response body. */
71
+ export declare const AppsListResponseSchema: z.ZodObject<{
72
+ ok: z.ZodLiteral<true>;
73
+ data: z.ZodObject<{
74
+ apps: z.ZodArray<z.ZodObject<{
75
+ orgSlug: z.ZodString;
76
+ appSlug: z.ZodString;
77
+ environments: z.ZodArray<z.ZodString>;
78
+ latest: z.ZodOptional<z.ZodObject<{
79
+ deploymentId: z.ZodString;
80
+ orgSlug: z.ZodString;
81
+ appSlug: z.ZodString;
82
+ environment: z.ZodString;
83
+ serverVersion: z.ZodOptional<z.ZodString>;
84
+ active: z.ZodBoolean;
85
+ serverName: z.ZodString;
86
+ createdAt: z.ZodString;
87
+ createdByEmail: z.ZodOptional<z.ZodString>;
88
+ accessMode: z.ZodEnum<{
89
+ "owner-only": "owner-only";
90
+ "org-members": "org-members";
91
+ authenticated: "authenticated";
92
+ public: "public";
93
+ mixed: "mixed";
94
+ customers: "customers";
95
+ }>;
96
+ archivedAt: z.ZodOptional<z.ZodString>;
97
+ endpointUrl: z.ZodOptional<z.ZodString>;
98
+ }, z.core.$strict>>;
99
+ accessMode: z.ZodOptional<z.ZodString>;
100
+ active: z.ZodBoolean;
101
+ archivedAt: z.ZodOptional<z.ZodString>;
102
+ createdAt: z.ZodString;
103
+ lastActivityAt: z.ZodOptional<z.ZodString>;
104
+ }, z.core.$strict>>;
105
+ truncated: z.ZodBoolean;
106
+ }, z.core.$strict>;
107
+ }, z.core.$strict>;
108
+ /** The full `GET /v1/orgs/{org}/apps/{app}` response body (app inspect). */
109
+ export declare const AppResponseSchema: z.ZodObject<{
110
+ ok: z.ZodLiteral<true>;
111
+ data: z.ZodObject<{
112
+ orgSlug: z.ZodString;
113
+ appSlug: z.ZodString;
114
+ environments: z.ZodArray<z.ZodString>;
115
+ latest: z.ZodOptional<z.ZodObject<{
116
+ deploymentId: z.ZodString;
117
+ orgSlug: z.ZodString;
118
+ appSlug: z.ZodString;
119
+ environment: z.ZodString;
120
+ serverVersion: z.ZodOptional<z.ZodString>;
121
+ active: z.ZodBoolean;
122
+ serverName: z.ZodString;
123
+ createdAt: z.ZodString;
124
+ createdByEmail: z.ZodOptional<z.ZodString>;
125
+ accessMode: z.ZodEnum<{
126
+ "owner-only": "owner-only";
127
+ "org-members": "org-members";
128
+ authenticated: "authenticated";
129
+ public: "public";
130
+ mixed: "mixed";
131
+ customers: "customers";
132
+ }>;
133
+ archivedAt: z.ZodOptional<z.ZodString>;
134
+ endpointUrl: z.ZodOptional<z.ZodString>;
135
+ }, z.core.$strict>>;
136
+ accessMode: z.ZodOptional<z.ZodString>;
137
+ active: z.ZodBoolean;
138
+ archivedAt: z.ZodOptional<z.ZodString>;
139
+ createdAt: z.ZodString;
140
+ lastActivityAt: z.ZodOptional<z.ZodString>;
141
+ }, z.core.$strict>;
142
+ }, z.core.$strict>;
143
+ /** Mirrors {@link EnvSummary} (`../store.js`). */
144
+ export declare const EnvSummarySchema: z.ZodObject<{
145
+ orgSlug: z.ZodString;
146
+ appSlug: z.ZodString;
147
+ envName: z.ZodString;
148
+ latest: z.ZodOptional<z.ZodObject<{
149
+ deploymentId: z.ZodString;
150
+ orgSlug: z.ZodString;
151
+ appSlug: z.ZodString;
152
+ environment: z.ZodString;
153
+ serverVersion: z.ZodOptional<z.ZodString>;
154
+ active: z.ZodBoolean;
155
+ serverName: z.ZodString;
156
+ createdAt: z.ZodString;
157
+ createdByEmail: z.ZodOptional<z.ZodString>;
158
+ accessMode: z.ZodEnum<{
159
+ "owner-only": "owner-only";
160
+ "org-members": "org-members";
161
+ authenticated: "authenticated";
162
+ public: "public";
163
+ mixed: "mixed";
164
+ customers: "customers";
165
+ }>;
166
+ archivedAt: z.ZodOptional<z.ZodString>;
167
+ endpointUrl: z.ZodOptional<z.ZodString>;
168
+ }, z.core.$strict>>;
169
+ accessMode: z.ZodOptional<z.ZodString>;
170
+ active: z.ZodBoolean;
171
+ archivedAt: z.ZodOptional<z.ZodString>;
172
+ createdAt: z.ZodString;
173
+ lastActivityAt: z.ZodOptional<z.ZodString>;
174
+ deploymentCount: z.ZodNumber;
175
+ }, z.core.$strict>;
176
+ /** The full `GET /v1/orgs/{org}/apps/{app}/envs` response body. No pagination — env counts per app are small. */
177
+ export declare const EnvsListResponseSchema: z.ZodObject<{
178
+ ok: z.ZodLiteral<true>;
179
+ data: z.ZodObject<{
180
+ envs: z.ZodArray<z.ZodObject<{
181
+ orgSlug: z.ZodString;
182
+ appSlug: z.ZodString;
183
+ envName: z.ZodString;
184
+ latest: z.ZodOptional<z.ZodObject<{
185
+ deploymentId: z.ZodString;
186
+ orgSlug: z.ZodString;
187
+ appSlug: z.ZodString;
188
+ environment: z.ZodString;
189
+ serverVersion: z.ZodOptional<z.ZodString>;
190
+ active: z.ZodBoolean;
191
+ serverName: z.ZodString;
192
+ createdAt: z.ZodString;
193
+ createdByEmail: z.ZodOptional<z.ZodString>;
194
+ accessMode: z.ZodEnum<{
195
+ "owner-only": "owner-only";
196
+ "org-members": "org-members";
197
+ authenticated: "authenticated";
198
+ public: "public";
199
+ mixed: "mixed";
200
+ customers: "customers";
201
+ }>;
202
+ archivedAt: z.ZodOptional<z.ZodString>;
203
+ endpointUrl: z.ZodOptional<z.ZodString>;
204
+ }, z.core.$strict>>;
205
+ accessMode: z.ZodOptional<z.ZodString>;
206
+ active: z.ZodBoolean;
207
+ archivedAt: z.ZodOptional<z.ZodString>;
208
+ createdAt: z.ZodString;
209
+ lastActivityAt: z.ZodOptional<z.ZodString>;
210
+ deploymentCount: z.ZodNumber;
211
+ }, z.core.$strict>>;
212
+ }, z.core.$strict>;
213
+ }, z.core.$strict>;
214
+ /** The full `GET /v1/orgs/{org}/apps/{app}/envs/{env}` response body (env inspect). */
215
+ export declare const EnvResponseSchema: z.ZodObject<{
216
+ ok: z.ZodLiteral<true>;
217
+ data: z.ZodObject<{
218
+ orgSlug: z.ZodString;
219
+ appSlug: z.ZodString;
220
+ envName: z.ZodString;
221
+ latest: z.ZodOptional<z.ZodObject<{
222
+ deploymentId: z.ZodString;
223
+ orgSlug: z.ZodString;
224
+ appSlug: z.ZodString;
225
+ environment: z.ZodString;
226
+ serverVersion: z.ZodOptional<z.ZodString>;
227
+ active: z.ZodBoolean;
228
+ serverName: z.ZodString;
229
+ createdAt: z.ZodString;
230
+ createdByEmail: z.ZodOptional<z.ZodString>;
231
+ accessMode: z.ZodEnum<{
232
+ "owner-only": "owner-only";
233
+ "org-members": "org-members";
234
+ authenticated: "authenticated";
235
+ public: "public";
236
+ mixed: "mixed";
237
+ customers: "customers";
238
+ }>;
239
+ archivedAt: z.ZodOptional<z.ZodString>;
240
+ endpointUrl: z.ZodOptional<z.ZodString>;
241
+ }, z.core.$strict>>;
242
+ accessMode: z.ZodOptional<z.ZodString>;
243
+ active: z.ZodBoolean;
244
+ archivedAt: z.ZodOptional<z.ZodString>;
245
+ createdAt: z.ZodString;
246
+ lastActivityAt: z.ZodOptional<z.ZodString>;
247
+ deploymentCount: z.ZodNumber;
248
+ }, z.core.$strict>;
249
+ }, z.core.$strict>;
250
+ /** The full `GET /v1/orgs/{org}/deployments/{deploymentId}` response body (deployment inspect). */
251
+ export declare const DeploymentResponseSchema: z.ZodObject<{
252
+ ok: z.ZodLiteral<true>;
253
+ data: z.ZodObject<{
254
+ deploymentId: z.ZodString;
255
+ orgSlug: z.ZodString;
256
+ appSlug: z.ZodString;
257
+ environment: z.ZodString;
258
+ serverVersion: z.ZodOptional<z.ZodString>;
259
+ active: z.ZodBoolean;
260
+ serverName: z.ZodString;
261
+ createdAt: z.ZodString;
262
+ createdByEmail: z.ZodOptional<z.ZodString>;
263
+ accessMode: z.ZodEnum<{
264
+ "owner-only": "owner-only";
265
+ "org-members": "org-members";
266
+ authenticated: "authenticated";
267
+ public: "public";
268
+ mixed: "mixed";
269
+ customers: "customers";
270
+ }>;
271
+ archivedAt: z.ZodOptional<z.ZodString>;
272
+ endpointUrl: z.ZodOptional<z.ZodString>;
273
+ }, z.core.$strict>;
274
+ }, z.core.$strict>;
275
+ /** Mirrors {@link RepoConnectionRecord} (`../store.js`) — the GHD-1 GitHub repository connection. */
276
+ export declare const RepoConnectionSchema: z.ZodObject<{
277
+ githubRepositoryId: z.ZodNumber;
278
+ installationId: z.ZodNumber;
279
+ ownerLogin: z.ZodString;
280
+ repoName: z.ZodString;
281
+ defaultBranch: z.ZodString;
282
+ repoRoot: z.ZodOptional<z.ZodString>;
283
+ orgSlug: z.ZodString;
284
+ appSlug: z.ZodString;
285
+ enabled: z.ZodBoolean;
286
+ createdBySubject: z.ZodString;
287
+ createdAt: z.ZodString;
288
+ updatedAt: z.ZodString;
289
+ }, z.core.$strict>;
290
+ /** The full `GET`/`POST /v1/orgs/{org}/apps/{app}/github/connection` response body. */
291
+ export declare const GithubConnectionResponseSchema: z.ZodObject<{
292
+ ok: z.ZodLiteral<true>;
293
+ data: z.ZodObject<{
294
+ githubRepositoryId: z.ZodNumber;
295
+ installationId: z.ZodNumber;
296
+ ownerLogin: z.ZodString;
297
+ repoName: z.ZodString;
298
+ defaultBranch: z.ZodString;
299
+ repoRoot: z.ZodOptional<z.ZodString>;
300
+ orgSlug: z.ZodString;
301
+ appSlug: z.ZodString;
302
+ enabled: z.ZodBoolean;
303
+ createdBySubject: z.ZodString;
304
+ createdAt: z.ZodString;
305
+ updatedAt: z.ZodString;
306
+ }, z.core.$strict>;
307
+ }, z.core.$strict>;
308
+ /** One webhook-accepted deploy run (GHD-2) — mirrors `DeployRunRecord` in `../store.ts`. */
309
+ export declare const DeployRunSchema: z.ZodObject<{
310
+ runId: z.ZodString;
311
+ orgSlug: z.ZodString;
312
+ appSlug: z.ZodString;
313
+ envName: z.ZodString;
314
+ sourceEvent: z.ZodEnum<{
315
+ push: "push";
316
+ pull_request: "pull_request";
317
+ }>;
318
+ deliveryId: z.ZodString;
319
+ githubRepositoryId: z.ZodNumber;
320
+ commitSha: z.ZodString;
321
+ ref: z.ZodString;
322
+ prNumber: z.ZodOptional<z.ZodNumber>;
323
+ status: z.ZodEnum<{
324
+ queued: "queued";
325
+ building: "building";
326
+ deploying: "deploying";
327
+ deployed: "deployed";
328
+ failed: "failed";
329
+ canceled: "canceled";
330
+ superseded: "superseded";
331
+ }>;
332
+ blockedReason: z.ZodOptional<z.ZodString>;
333
+ deploymentId: z.ZodOptional<z.ZodString>;
334
+ actorLogin: z.ZodString;
335
+ errorSummary: z.ZodOptional<z.ZodString>;
336
+ createdAt: z.ZodString;
337
+ startedAt: z.ZodOptional<z.ZodString>;
338
+ finishedAt: z.ZodOptional<z.ZodString>;
339
+ }, z.core.$strict>;
340
+ /** The full `GET /v1/orgs/{org}/apps/{app}/github/runs` response body. */
341
+ export declare const GithubRunsListResponseSchema: z.ZodObject<{
342
+ ok: z.ZodLiteral<true>;
343
+ data: z.ZodObject<{
344
+ runs: z.ZodArray<z.ZodObject<{
345
+ runId: z.ZodString;
346
+ orgSlug: z.ZodString;
347
+ appSlug: z.ZodString;
348
+ envName: z.ZodString;
349
+ sourceEvent: z.ZodEnum<{
350
+ push: "push";
351
+ pull_request: "pull_request";
352
+ }>;
353
+ deliveryId: z.ZodString;
354
+ githubRepositoryId: z.ZodNumber;
355
+ commitSha: z.ZodString;
356
+ ref: z.ZodString;
357
+ prNumber: z.ZodOptional<z.ZodNumber>;
358
+ status: z.ZodEnum<{
359
+ queued: "queued";
360
+ building: "building";
361
+ deploying: "deploying";
362
+ deployed: "deployed";
363
+ failed: "failed";
364
+ canceled: "canceled";
365
+ superseded: "superseded";
366
+ }>;
367
+ blockedReason: z.ZodOptional<z.ZodString>;
368
+ deploymentId: z.ZodOptional<z.ZodString>;
369
+ actorLogin: z.ZodString;
370
+ errorSummary: z.ZodOptional<z.ZodString>;
371
+ createdAt: z.ZodString;
372
+ startedAt: z.ZodOptional<z.ZodString>;
373
+ finishedAt: z.ZodOptional<z.ZodString>;
374
+ }, z.core.$strict>>;
375
+ truncated: z.ZodBoolean;
376
+ }, z.core.$strict>;
377
+ }, z.core.$strict>;
378
+ /** The full `GET /v1/github/install-url` response body. */
379
+ export declare const GithubInstallUrlResponseSchema: z.ZodObject<{
380
+ ok: z.ZodLiteral<true>;
381
+ data: z.ZodObject<{
382
+ installUrl: z.ZodString;
383
+ state: z.ZodString;
384
+ }, z.core.$strict>;
385
+ }, z.core.$strict>;
386
+ /**
387
+ * The redacted public view of an alert rule (analytics alerting E2, ADR 0130). Deliberately has
388
+ * NO `webhookUrl` field and is `.strict()`: the sensitive URL structurally cannot pass this
389
+ * contract, so a would-be leak fails the parse (a 500) instead of reaching the wire. `webhook`
390
+ * carries only the redacted origin form (e.g. `https://hooks.example.com/…`).
391
+ */
392
+ export declare const AlertRuleSchema: z.ZodObject<{
393
+ id: z.ZodString;
394
+ name: z.ZodOptional<z.ZodString>;
395
+ metric: z.ZodEnum<{
396
+ error_share: "error_share";
397
+ error_count: "error_count";
398
+ calls: "calls";
399
+ p95_ms: "p95_ms";
400
+ }>;
401
+ threshold: z.ZodNumber;
402
+ windowMinutes: z.ZodNumber;
403
+ comparison: z.ZodLiteral<">=">;
404
+ webhook: z.ZodString;
405
+ enabled: z.ZodBoolean;
406
+ cooldownMinutes: z.ZodNumber;
407
+ breaching: z.ZodBoolean;
408
+ lastObserved: z.ZodOptional<z.ZodNumber>;
409
+ lastFiredAt: z.ZodOptional<z.ZodString>;
410
+ createdAt: z.ZodString;
411
+ updatedAt: z.ZodString;
412
+ }, z.core.$strict>;
413
+ /** The full `POST /v1/orgs/{org}/apps/{app}/envs/{env}/alerts` response body. */
414
+ export declare const AlertRuleResponseSchema: z.ZodObject<{
415
+ ok: z.ZodLiteral<true>;
416
+ data: z.ZodObject<{
417
+ id: z.ZodString;
418
+ name: z.ZodOptional<z.ZodString>;
419
+ metric: z.ZodEnum<{
420
+ error_share: "error_share";
421
+ error_count: "error_count";
422
+ calls: "calls";
423
+ p95_ms: "p95_ms";
424
+ }>;
425
+ threshold: z.ZodNumber;
426
+ windowMinutes: z.ZodNumber;
427
+ comparison: z.ZodLiteral<">=">;
428
+ webhook: z.ZodString;
429
+ enabled: z.ZodBoolean;
430
+ cooldownMinutes: z.ZodNumber;
431
+ breaching: z.ZodBoolean;
432
+ lastObserved: z.ZodOptional<z.ZodNumber>;
433
+ lastFiredAt: z.ZodOptional<z.ZodString>;
434
+ createdAt: z.ZodString;
435
+ updatedAt: z.ZodString;
436
+ }, z.core.$strict>;
437
+ }, z.core.$strict>;
438
+ /** The full `GET /v1/orgs/{org}/apps/{app}/envs/{env}/alerts` response body. */
439
+ export declare const AlertRulesListResponseSchema: z.ZodObject<{
440
+ ok: z.ZodLiteral<true>;
441
+ data: z.ZodObject<{
442
+ rules: z.ZodArray<z.ZodObject<{
443
+ id: z.ZodString;
444
+ name: z.ZodOptional<z.ZodString>;
445
+ metric: z.ZodEnum<{
446
+ error_share: "error_share";
447
+ error_count: "error_count";
448
+ calls: "calls";
449
+ p95_ms: "p95_ms";
450
+ }>;
451
+ threshold: z.ZodNumber;
452
+ windowMinutes: z.ZodNumber;
453
+ comparison: z.ZodLiteral<">=">;
454
+ webhook: z.ZodString;
455
+ enabled: z.ZodBoolean;
456
+ cooldownMinutes: z.ZodNumber;
457
+ breaching: z.ZodBoolean;
458
+ lastObserved: z.ZodOptional<z.ZodNumber>;
459
+ lastFiredAt: z.ZodOptional<z.ZodString>;
460
+ createdAt: z.ZodString;
461
+ updatedAt: z.ZodString;
462
+ }, z.core.$strict>>;
463
+ }, z.core.$strict>;
464
+ }, z.core.$strict>;
465
+ //# sourceMappingURL=contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/routes/contracts.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,yDAAyD;AACzD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;kBAezB,CAAC;AAEZ,4FAA4F;AAC5F,eAAO,MAAM,gBAAgB;;;;kBAMlB,CAAC;AAEZ,kDAAkD;AAClD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAYlB,CAAC;AAEZ,wDAAwD;AACxD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAUxB,CAAC;AAEZ,4EAA4E;AAC5E,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAKnB,CAAC;AAEZ,kDAAkD;AAClD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAalB,CAAC;AAEZ,iHAAiH;AACjH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBASxB,CAAC;AAEZ,uFAAuF;AACvF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAKnB,CAAC;AAEZ,mGAAmG;AACnG,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;kBAK1B,CAAC;AAEZ,qGAAqG;AACrG,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;kBAetB,CAAC;AAEZ,uFAAuF;AACvF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;kBAKhC,CAAC;AAEZ,4FAA4F;AAC5F,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA6BjB,CAAC;AAEZ,0EAA0E;AAC1E,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAU9B,CAAC;AAEZ,2DAA2D;AAC3D,eAAO,MAAM,8BAA8B;;;;;;kBAUhC,CAAC;AAEZ;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;kBAiBjB,CAAC;AAEZ,iFAAiF;AACjF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;kBAKzB,CAAC;AAEZ,gFAAgF;AAChF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;kBAK9B,CAAC"}
@@ -0,0 +1,233 @@
1
+ /**
2
+ * Zod response contracts for the org/app read surface (`GET /v1/orgs/{org}`, `.../apps`,
3
+ * `.../apps/{app}`). Handlers `.parse()` their response payload through these before sending, so the
4
+ * wire shape can never silently drift from what's declared here. The golden fixtures under the
5
+ * repo-root `contract/v1/` directory assert the same schemas parse realistic sample payloads — the
6
+ * cross-package drift gate future CLI/console tests load the same fixtures against, so all three
7
+ * surfaces stay pinned to one contract.
8
+ */
9
+ import { z } from 'zod';
10
+ const ACCESS_MODES = [
11
+ 'owner-only',
12
+ 'org-members',
13
+ 'public',
14
+ 'mixed',
15
+ 'customers',
16
+ 'authenticated',
17
+ ];
18
+ /** Mirrors {@link DeploymentSummary} (`../store.js`). */
19
+ export const DeploymentSummarySchema = z
20
+ .object({
21
+ deploymentId: z.string(),
22
+ orgSlug: z.string(),
23
+ appSlug: z.string(),
24
+ environment: z.string(),
25
+ serverVersion: z.string().optional(),
26
+ active: z.boolean(),
27
+ serverName: z.string(),
28
+ createdAt: z.string(),
29
+ createdByEmail: z.string().optional(),
30
+ accessMode: z.enum(ACCESS_MODES),
31
+ archivedAt: z.string().optional(),
32
+ endpointUrl: z.string().optional(),
33
+ })
34
+ .strict();
35
+ /** Mirrors {@link OrgRecord} (`../store.js`) — the `GET /v1/orgs/{org}` response `data`. */
36
+ export const OrgSummarySchema = z
37
+ .object({
38
+ slug: z.string(),
39
+ displayName: z.string().optional(),
40
+ createdAt: z.string(),
41
+ })
42
+ .strict();
43
+ /** Mirrors {@link AppSummary} (`../store.js`). */
44
+ export const AppSummarySchema = z
45
+ .object({
46
+ orgSlug: z.string(),
47
+ appSlug: z.string(),
48
+ environments: z.array(z.string()),
49
+ latest: DeploymentSummarySchema.optional(),
50
+ accessMode: z.string().optional(),
51
+ active: z.boolean(),
52
+ archivedAt: z.string().optional(),
53
+ createdAt: z.string(),
54
+ lastActivityAt: z.string().optional(),
55
+ })
56
+ .strict();
57
+ /** The full `GET /v1/orgs/{org}/apps` response body. */
58
+ export const AppsListResponseSchema = z
59
+ .object({
60
+ ok: z.literal(true),
61
+ data: z
62
+ .object({
63
+ apps: z.array(AppSummarySchema),
64
+ truncated: z.boolean(),
65
+ })
66
+ .strict(),
67
+ })
68
+ .strict();
69
+ /** The full `GET /v1/orgs/{org}/apps/{app}` response body (app inspect). */
70
+ export const AppResponseSchema = z
71
+ .object({
72
+ ok: z.literal(true),
73
+ data: AppSummarySchema,
74
+ })
75
+ .strict();
76
+ /** Mirrors {@link EnvSummary} (`../store.js`). */
77
+ export const EnvSummarySchema = z
78
+ .object({
79
+ orgSlug: z.string(),
80
+ appSlug: z.string(),
81
+ envName: z.string(),
82
+ latest: DeploymentSummarySchema.optional(),
83
+ accessMode: z.string().optional(),
84
+ active: z.boolean(),
85
+ archivedAt: z.string().optional(),
86
+ createdAt: z.string(),
87
+ lastActivityAt: z.string().optional(),
88
+ deploymentCount: z.number().int().nonnegative(),
89
+ })
90
+ .strict();
91
+ /** The full `GET /v1/orgs/{org}/apps/{app}/envs` response body. No pagination — env counts per app are small. */
92
+ export const EnvsListResponseSchema = z
93
+ .object({
94
+ ok: z.literal(true),
95
+ data: z
96
+ .object({
97
+ envs: z.array(EnvSummarySchema),
98
+ })
99
+ .strict(),
100
+ })
101
+ .strict();
102
+ /** The full `GET /v1/orgs/{org}/apps/{app}/envs/{env}` response body (env inspect). */
103
+ export const EnvResponseSchema = z
104
+ .object({
105
+ ok: z.literal(true),
106
+ data: EnvSummarySchema,
107
+ })
108
+ .strict();
109
+ /** The full `GET /v1/orgs/{org}/deployments/{deploymentId}` response body (deployment inspect). */
110
+ export const DeploymentResponseSchema = z
111
+ .object({
112
+ ok: z.literal(true),
113
+ data: DeploymentSummarySchema,
114
+ })
115
+ .strict();
116
+ /** Mirrors {@link RepoConnectionRecord} (`../store.js`) — the GHD-1 GitHub repository connection. */
117
+ export const RepoConnectionSchema = z
118
+ .object({
119
+ githubRepositoryId: z.number().int().positive(),
120
+ installationId: z.number().int().positive(),
121
+ ownerLogin: z.string(),
122
+ repoName: z.string(),
123
+ defaultBranch: z.string(),
124
+ repoRoot: z.string().optional(),
125
+ orgSlug: z.string(),
126
+ appSlug: z.string(),
127
+ enabled: z.boolean(),
128
+ createdBySubject: z.string(),
129
+ createdAt: z.string(),
130
+ updatedAt: z.string(),
131
+ })
132
+ .strict();
133
+ /** The full `GET`/`POST /v1/orgs/{org}/apps/{app}/github/connection` response body. */
134
+ export const GithubConnectionResponseSchema = z
135
+ .object({
136
+ ok: z.literal(true),
137
+ data: RepoConnectionSchema,
138
+ })
139
+ .strict();
140
+ /** One webhook-accepted deploy run (GHD-2) — mirrors `DeployRunRecord` in `../store.ts`. */
141
+ export const DeployRunSchema = z
142
+ .object({
143
+ runId: z.string(),
144
+ orgSlug: z.string(),
145
+ appSlug: z.string(),
146
+ envName: z.string(),
147
+ sourceEvent: z.enum(['push', 'pull_request']),
148
+ deliveryId: z.string(),
149
+ githubRepositoryId: z.number().int().positive(),
150
+ commitSha: z.string(),
151
+ ref: z.string(),
152
+ prNumber: z.number().int().positive().optional(),
153
+ status: z.enum([
154
+ 'queued',
155
+ 'building',
156
+ 'deploying',
157
+ 'deployed',
158
+ 'failed',
159
+ 'canceled',
160
+ 'superseded',
161
+ ]),
162
+ blockedReason: z.string().optional(),
163
+ deploymentId: z.string().optional(),
164
+ actorLogin: z.string(),
165
+ errorSummary: z.string().optional(),
166
+ createdAt: z.string(),
167
+ startedAt: z.string().optional(),
168
+ finishedAt: z.string().optional(),
169
+ })
170
+ .strict();
171
+ /** The full `GET /v1/orgs/{org}/apps/{app}/github/runs` response body. */
172
+ export const GithubRunsListResponseSchema = z
173
+ .object({
174
+ ok: z.literal(true),
175
+ data: z
176
+ .object({
177
+ runs: z.array(DeployRunSchema),
178
+ truncated: z.boolean(),
179
+ })
180
+ .strict(),
181
+ })
182
+ .strict();
183
+ /** The full `GET /v1/github/install-url` response body. */
184
+ export const GithubInstallUrlResponseSchema = z
185
+ .object({
186
+ ok: z.literal(true),
187
+ data: z
188
+ .object({
189
+ installUrl: z.string(),
190
+ state: z.string(),
191
+ })
192
+ .strict(),
193
+ })
194
+ .strict();
195
+ /**
196
+ * The redacted public view of an alert rule (analytics alerting E2, ADR 0130). Deliberately has
197
+ * NO `webhookUrl` field and is `.strict()`: the sensitive URL structurally cannot pass this
198
+ * contract, so a would-be leak fails the parse (a 500) instead of reaching the wire. `webhook`
199
+ * carries only the redacted origin form (e.g. `https://hooks.example.com/…`).
200
+ */
201
+ export const AlertRuleSchema = z
202
+ .object({
203
+ id: z.string(),
204
+ name: z.string().optional(),
205
+ metric: z.enum(['error_share', 'error_count', 'calls', 'p95_ms']),
206
+ threshold: z.number(),
207
+ windowMinutes: z.number(),
208
+ comparison: z.literal('>='),
209
+ webhook: z.string(),
210
+ enabled: z.boolean(),
211
+ cooldownMinutes: z.number(),
212
+ breaching: z.boolean(),
213
+ lastObserved: z.number().optional(),
214
+ lastFiredAt: z.string().optional(),
215
+ createdAt: z.string(),
216
+ updatedAt: z.string(),
217
+ })
218
+ .strict();
219
+ /** The full `POST /v1/orgs/{org}/apps/{app}/envs/{env}/alerts` response body. */
220
+ export const AlertRuleResponseSchema = z
221
+ .object({
222
+ ok: z.literal(true),
223
+ data: AlertRuleSchema,
224
+ })
225
+ .strict();
226
+ /** The full `GET /v1/orgs/{org}/apps/{app}/envs/{env}/alerts` response body. */
227
+ export const AlertRulesListResponseSchema = z
228
+ .object({
229
+ ok: z.literal(true),
230
+ data: z.object({ rules: z.array(AlertRuleSchema) }).strict(),
231
+ })
232
+ .strict();
233
+ //# sourceMappingURL=contracts.js.map