@vm0/cli 9.278.0 → 9.279.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 (230) hide show
  1. package/{agent-HUDTEGLK.js → agent-4N7ZZDFJ.js} +16 -10
  2. package/agent-4N7ZZDFJ.js.map +1 -0
  3. package/{banking-BMZONEXP.js → banking-HBODHOCJ.js} +64 -10
  4. package/banking-HBODHOCJ.js.map +1 -0
  5. package/{browser-LQP445CU.js → browser-KT5KVZY2.js} +7 -8
  6. package/browser-KT5KVZY2.js.map +1 -0
  7. package/{chat-UF7QAWUT.js → chat-6RRIXDF5.js} +29 -21
  8. package/chat-6RRIXDF5.js.map +1 -0
  9. package/chunk-4ATK3VFX.js +202 -0
  10. package/chunk-4ATK3VFX.js.map +1 -0
  11. package/chunk-4CXT7THL.js +55 -0
  12. package/chunk-4CXT7THL.js.map +1 -0
  13. package/{chunk-BRV4D3P2.js → chunk-4QGLWHVD.js} +3 -3
  14. package/chunk-4SGKKHZW.js +309 -0
  15. package/chunk-4SGKKHZW.js.map +1 -0
  16. package/{chunk-AUWSMG4F.js → chunk-52CNCL6Y.js} +5 -2
  17. package/{chunk-AUWSMG4F.js.map → chunk-52CNCL6Y.js.map} +1 -1
  18. package/chunk-5RY3DZTW.js +101 -0
  19. package/chunk-5RY3DZTW.js.map +1 -0
  20. package/chunk-AFKJ4MU3.js +105 -0
  21. package/chunk-AFKJ4MU3.js.map +1 -0
  22. package/chunk-AMLZWOJK.js +792 -0
  23. package/chunk-AMLZWOJK.js.map +1 -0
  24. package/chunk-B3U6VDOF.js +90 -0
  25. package/chunk-B3U6VDOF.js.map +1 -0
  26. package/chunk-B6RXOHA2.js +801 -0
  27. package/chunk-B6RXOHA2.js.map +1 -0
  28. package/chunk-BB6QIVAM.js +189 -0
  29. package/chunk-BB6QIVAM.js.map +1 -0
  30. package/{chunk-NDYPPVD3.js → chunk-BMQE7GWV.js} +2 -2
  31. package/chunk-BMRAUGFL.js +198 -0
  32. package/chunk-BMRAUGFL.js.map +1 -0
  33. package/{chunk-45J5VDVQ.js → chunk-BS6PZU7T.js} +2 -2
  34. package/chunk-C4LKBBIS.js +2053 -0
  35. package/chunk-C4LKBBIS.js.map +1 -0
  36. package/{chunk-QC63TUJC.js → chunk-CBNDRL4P.js} +3 -3
  37. package/{chunk-V7A6ZFHR.js → chunk-CMWQJ3XO.js} +26 -775
  38. package/chunk-CMWQJ3XO.js.map +1 -0
  39. package/{chunk-NKYACNWA.js → chunk-DUWZNPUA.js} +2 -2
  40. package/{chunk-BVCE3PAD.js → chunk-G2HB4N56.js} +2 -2
  41. package/chunk-HMH473P6.js +362 -0
  42. package/chunk-HMH473P6.js.map +1 -0
  43. package/chunk-HMUAPCDD.js +81 -0
  44. package/chunk-HMUAPCDD.js.map +1 -0
  45. package/chunk-HXIDRGW4.js +434 -0
  46. package/chunk-HXIDRGW4.js.map +1 -0
  47. package/chunk-JXWXVXOW.js +1275 -0
  48. package/chunk-JXWXVXOW.js.map +1 -0
  49. package/{chunk-32FE3MDA.js → chunk-KHPTA6UQ.js} +2 -2
  50. package/chunk-KWHNNLC5.js +31 -0
  51. package/chunk-KWHNNLC5.js.map +1 -0
  52. package/chunk-LLQCX33F.js +49 -0
  53. package/chunk-LLQCX33F.js.map +1 -0
  54. package/{chunk-E53W6UVQ.js → chunk-LO24UKAH.js} +5 -5
  55. package/chunk-LO24UKAH.js.map +1 -0
  56. package/chunk-ML33LZ5V.js +66 -0
  57. package/chunk-ML33LZ5V.js.map +1 -0
  58. package/chunk-NIG6LRRX.js +39 -0
  59. package/chunk-NIG6LRRX.js.map +1 -0
  60. package/{chunk-JAUTPXVK.js → chunk-PAULHBEP.js} +2 -2
  61. package/chunk-PO3DAXC6.js +52 -0
  62. package/chunk-PO3DAXC6.js.map +1 -0
  63. package/chunk-QQT7SBVV.js +1300 -0
  64. package/chunk-QQT7SBVV.js.map +1 -0
  65. package/{chunk-J45P5ALH.js → chunk-RAQ7DE6K.js} +2 -2
  66. package/chunk-RKOODQ77.js +194 -0
  67. package/chunk-RKOODQ77.js.map +1 -0
  68. package/{chunk-V5ZVB7RJ.js → chunk-T656XQMT.js} +7 -7
  69. package/chunk-T656XQMT.js.map +1 -0
  70. package/chunk-TDLAIIDN.js +568 -0
  71. package/chunk-TDLAIIDN.js.map +1 -0
  72. package/{chunk-A6TMOGPR.js → chunk-TQKKFLRI.js} +1416 -339
  73. package/chunk-TQKKFLRI.js.map +1 -0
  74. package/{chunk-5ZZI2LSO.js → chunk-U2PPHCTL.js} +7 -7
  75. package/{chunk-VNNPAHD3.js → chunk-UH7XK55U.js} +2 -2
  76. package/chunk-VCAMYQOI.js +31 -0
  77. package/chunk-VCAMYQOI.js.map +1 -0
  78. package/chunk-WERS62WT.js +21130 -0
  79. package/chunk-WERS62WT.js.map +1 -0
  80. package/chunk-XIZVMBW4.js +188 -0
  81. package/chunk-XIZVMBW4.js.map +1 -0
  82. package/{chunk-SVFOPAWB.js → chunk-XJXBVERS.js} +2 -2
  83. package/chunk-XQ4CXHGB.js +131 -0
  84. package/chunk-XQ4CXHGB.js.map +1 -0
  85. package/{chunk-F2AM4RWA.js → chunk-XW5M3ADB.js} +3 -3
  86. package/{chunk-F2AM4RWA.js.map → chunk-XW5M3ADB.js.map} +1 -1
  87. package/chunk-YEXLP5U7.js +64 -0
  88. package/chunk-YEXLP5U7.js.map +1 -0
  89. package/chunk-ZEFTCUFJ.js +114 -0
  90. package/chunk-ZEFTCUFJ.js.map +1 -0
  91. package/{computer-use-RRD7BCCK.js → computer-use-VG65FLDL.js} +12 -10
  92. package/computer-use-VG65FLDL.js.map +1 -0
  93. package/{connector-XX7UU6XE.js → connector-25H4SU52.js} +28 -16
  94. package/connector-25H4SU52.js.map +1 -0
  95. package/{credit-GDNNAQRO.js → credit-D3RLUW6C.js} +12 -14
  96. package/credit-D3RLUW6C.js.map +1 -0
  97. package/{developer-support-IISP5UBI.js → developer-support-NMZJG32A.js} +30 -10
  98. package/developer-support-NMZJG32A.js.map +1 -0
  99. package/{doctor-IZM2TJOH.js → doctor-MXF4RDPN.js} +17 -15
  100. package/doctor-MXF4RDPN.js.map +1 -0
  101. package/{esm-GRI4FR5B.js → esm-XLHK4LBA.js} +3 -3
  102. package/{feishu-XB7SQBSI.js → feishu-SHMTS5ZM.js} +102 -12
  103. package/feishu-SHMTS5ZM.js.map +1 -0
  104. package/{finance-OGWHKQLU.js → finance-A3QUYKGH.js} +52 -12
  105. package/finance-A3QUYKGH.js.map +1 -0
  106. package/{generate-AA2PVOYQ.js → generate-QQ6ZTCR2.js} +31 -26
  107. package/generate-QQ6ZTCR2.js.map +1 -0
  108. package/{getMachineId-bsd-UR6WEJ6T.js → getMachineId-bsd-WOC3WZM5.js} +4 -4
  109. package/{getMachineId-darwin-O3UESQMK.js → getMachineId-darwin-K35YZX2F.js} +4 -4
  110. package/{getMachineId-linux-EGNGXDN3.js → getMachineId-linux-A4QJCCBS.js} +3 -3
  111. package/{getMachineId-unsupported-EZ7SMARH.js → getMachineId-unsupported-UOQIWS5S.js} +3 -3
  112. package/{getMachineId-win-CM62ICHH.js → getMachineId-win-YJDJQYJQ.js} +4 -4
  113. package/{github-VJVIBTVF.js → github-5M3YRGDF.js} +86 -11
  114. package/github-5M3YRGDF.js.map +1 -0
  115. package/{goal-7SYVHDTK.js → goal-F6G5KOI2.js} +72 -16
  116. package/goal-F6G5KOI2.js.map +1 -0
  117. package/{host-UVQMIOBA.js → host-6UT2OW4I.js} +127 -13
  118. package/host-6UT2OW4I.js.map +1 -0
  119. package/{intro-2UYXBOHI.js → intro-HYSW634N.js} +3 -3
  120. package/{logs-PIS4X24E.js → logs-YH346I7J.js} +57 -17
  121. package/logs-YH346I7J.js.map +1 -0
  122. package/{mail-L33OSQ2R.js → mail-SC44CH54.js} +42 -11
  123. package/mail-SC44CH54.js.map +1 -0
  124. package/{maps-D5XTXU5U.js → maps-YQ62JSHO.js} +68 -14
  125. package/maps-YQ62JSHO.js.map +1 -0
  126. package/{model-ZFMRECDM.js → model-PPOIXDVZ.js} +9 -9
  127. package/model-PPOIXDVZ.js.map +1 -0
  128. package/{model-provider-EZZ2DRYZ.js → model-provider-PD7FGL7A.js} +9 -9
  129. package/model-provider-PD7FGL7A.js.map +1 -0
  130. package/package.json +2 -5
  131. package/{people-search-PFTIO2QS.js → people-search-VS5J4HME.js} +25 -9
  132. package/people-search-VS5J4HME.js.map +1 -0
  133. package/{phone-6SG5ZUNL.js → phone-YZ7TX25A.js} +93 -12
  134. package/phone-YZ7TX25A.js.map +1 -0
  135. package/{recognize-LLU6J3SW.js → recognize-XKO53YEI.js} +30 -12
  136. package/recognize-XKO53YEI.js.map +1 -0
  137. package/{resource-FGUSXS4G.js → resource-V43QBVKO.js} +25 -11
  138. package/resource-V43QBVKO.js.map +1 -0
  139. package/{scrape-BAUZ2YFD.js → scrape-PDMJI2PY.js} +25 -9
  140. package/scrape-PDMJI2PY.js.map +1 -0
  141. package/{search-DLO5RXRM.js → search-USJZ3HKX.js} +35 -15
  142. package/search-USJZ3HKX.js.map +1 -0
  143. package/{slack-CVATPKP3.js → slack-K557P6WW.js} +106 -14
  144. package/slack-K557P6WW.js.map +1 -0
  145. package/{teams-ZZYO6YIK.js → teams-HN2UOU3U.js} +93 -12
  146. package/teams-HN2UOU3U.js.map +1 -0
  147. package/{telegram-VY7T4YAR.js → telegram-YCRQFLJC.js} +104 -13
  148. package/telegram-YCRQFLJC.js.map +1 -0
  149. package/{undici-MBS5ACFE.js → undici-YESHDB4G.js} +2 -2
  150. package/{upgrade-GFA4ZUU4.js → upgrade-VVJ3KJ6V.js} +7 -8
  151. package/upgrade-VVJ3KJ6V.js.map +1 -0
  152. package/{video-STFG7BET.js → video-DNGIFKVY.js} +8 -7
  153. package/video-DNGIFKVY.js.map +1 -0
  154. package/{weather-ISJEHJWR.js → weather-4Z7OZ2TP.js} +73 -19
  155. package/weather-4Z7OZ2TP.js.map +1 -0
  156. package/{web-YN4CVHK7.js → web-C6RLBMZM.js} +8 -8
  157. package/web-C6RLBMZM.js.map +1 -0
  158. package/{web-search-PC7IECND.js → web-search-CDPWLF74.js} +25 -9
  159. package/web-search-CDPWLF74.js.map +1 -0
  160. package/{whoami-KXFXZGM6.js → whoami-VDI5345O.js} +19 -10
  161. package/whoami-VDI5345O.js.map +1 -0
  162. package/{workflow-O7YZHB7A.js → workflow-VEZ3NTPR.js} +140 -44
  163. package/workflow-VEZ3NTPR.js.map +1 -0
  164. package/zero.js +46 -46
  165. package/agent-HUDTEGLK.js.map +0 -1
  166. package/banking-BMZONEXP.js.map +0 -1
  167. package/browser-LQP445CU.js.map +0 -1
  168. package/chat-UF7QAWUT.js.map +0 -1
  169. package/chunk-2W73DZDW.js +0 -32
  170. package/chunk-2W73DZDW.js.map +0 -1
  171. package/chunk-6PN6QGIM.js +0 -11405
  172. package/chunk-6PN6QGIM.js.map +0 -1
  173. package/chunk-A6TMOGPR.js.map +0 -1
  174. package/chunk-ANOLYIPL.js +0 -10
  175. package/chunk-ANOLYIPL.js.map +0 -1
  176. package/chunk-E53W6UVQ.js.map +0 -1
  177. package/chunk-V5ZVB7RJ.js.map +0 -1
  178. package/chunk-V7A6ZFHR.js.map +0 -1
  179. package/computer-use-RRD7BCCK.js.map +0 -1
  180. package/connector-XX7UU6XE.js.map +0 -1
  181. package/credit-GDNNAQRO.js.map +0 -1
  182. package/developer-support-IISP5UBI.js.map +0 -1
  183. package/doctor-IZM2TJOH.js.map +0 -1
  184. package/feishu-XB7SQBSI.js.map +0 -1
  185. package/finance-OGWHKQLU.js.map +0 -1
  186. package/generate-AA2PVOYQ.js.map +0 -1
  187. package/github-VJVIBTVF.js.map +0 -1
  188. package/goal-7SYVHDTK.js.map +0 -1
  189. package/host-UVQMIOBA.js.map +0 -1
  190. package/logs-PIS4X24E.js.map +0 -1
  191. package/mail-L33OSQ2R.js.map +0 -1
  192. package/maps-D5XTXU5U.js.map +0 -1
  193. package/model-ZFMRECDM.js.map +0 -1
  194. package/model-provider-EZZ2DRYZ.js.map +0 -1
  195. package/people-search-PFTIO2QS.js.map +0 -1
  196. package/phone-6SG5ZUNL.js.map +0 -1
  197. package/recognize-LLU6J3SW.js.map +0 -1
  198. package/resource-FGUSXS4G.js.map +0 -1
  199. package/scrape-BAUZ2YFD.js.map +0 -1
  200. package/search-DLO5RXRM.js.map +0 -1
  201. package/slack-CVATPKP3.js.map +0 -1
  202. package/teams-ZZYO6YIK.js.map +0 -1
  203. package/telegram-VY7T4YAR.js.map +0 -1
  204. package/upgrade-GFA4ZUU4.js.map +0 -1
  205. package/video-STFG7BET.js.map +0 -1
  206. package/weather-ISJEHJWR.js.map +0 -1
  207. package/web-YN4CVHK7.js.map +0 -1
  208. package/web-search-PC7IECND.js.map +0 -1
  209. package/whoami-KXFXZGM6.js.map +0 -1
  210. package/workflow-O7YZHB7A.js.map +0 -1
  211. /package/{chunk-BRV4D3P2.js.map → chunk-4QGLWHVD.js.map} +0 -0
  212. /package/{chunk-NDYPPVD3.js.map → chunk-BMQE7GWV.js.map} +0 -0
  213. /package/{chunk-45J5VDVQ.js.map → chunk-BS6PZU7T.js.map} +0 -0
  214. /package/{chunk-QC63TUJC.js.map → chunk-CBNDRL4P.js.map} +0 -0
  215. /package/{chunk-NKYACNWA.js.map → chunk-DUWZNPUA.js.map} +0 -0
  216. /package/{chunk-BVCE3PAD.js.map → chunk-G2HB4N56.js.map} +0 -0
  217. /package/{chunk-32FE3MDA.js.map → chunk-KHPTA6UQ.js.map} +0 -0
  218. /package/{chunk-JAUTPXVK.js.map → chunk-PAULHBEP.js.map} +0 -0
  219. /package/{chunk-J45P5ALH.js.map → chunk-RAQ7DE6K.js.map} +0 -0
  220. /package/{chunk-5ZZI2LSO.js.map → chunk-U2PPHCTL.js.map} +0 -0
  221. /package/{chunk-VNNPAHD3.js.map → chunk-UH7XK55U.js.map} +0 -0
  222. /package/{chunk-SVFOPAWB.js.map → chunk-XJXBVERS.js.map} +0 -0
  223. /package/{esm-GRI4FR5B.js.map → esm-XLHK4LBA.js.map} +0 -0
  224. /package/{getMachineId-bsd-UR6WEJ6T.js.map → getMachineId-bsd-WOC3WZM5.js.map} +0 -0
  225. /package/{getMachineId-darwin-O3UESQMK.js.map → getMachineId-darwin-K35YZX2F.js.map} +0 -0
  226. /package/{getMachineId-linux-EGNGXDN3.js.map → getMachineId-linux-A4QJCCBS.js.map} +0 -0
  227. /package/{getMachineId-unsupported-EZ7SMARH.js.map → getMachineId-unsupported-UOQIWS5S.js.map} +0 -0
  228. /package/{getMachineId-win-CM62ICHH.js.map → getMachineId-win-YJDJQYJQ.js.map} +0 -0
  229. /package/{intro-2UYXBOHI.js.map → intro-HYSW634N.js.map} +0 -0
  230. /package/{undici-MBS5ACFE.js.map → undici-YESHDB4G.js.map} +0 -0
@@ -5,32 +5,63 @@ import {
5
5
  formatIsoTimestamp,
6
6
  isUuid,
7
7
  parseBoundedLogCount
8
- } from "./chunk-VNNPAHD3.js";
8
+ } from "./chunk-UH7XK55U.js";
9
9
  import {
10
10
  listVideoTemplates
11
- } from "./chunk-NKYACNWA.js";
11
+ } from "./chunk-DUWZNPUA.js";
12
12
  import {
13
- connectorCatalogDiagnosticsSchema,
13
+ zeroAgentVisibilitySchema
14
+ } from "./chunk-JXWXVXOW.js";
15
+ import {
16
+ connectorCatalogDiagnosticsSchema
17
+ } from "./chunk-HXIDRGW4.js";
18
+ import {
19
+ agentEventsResponseSchema,
20
+ cancelRunResponseSchema,
21
+ createLogPaginationQuerySchema,
14
22
  createRunResponseSchema,
23
+ eventSequenceNumberSchema,
24
+ getRunResponseSchema,
25
+ logsListContract,
26
+ logsSearchQuerySchema,
27
+ logsSearchResponseSchema,
28
+ metricsResponseSchema,
29
+ networkLogEntrySchema,
30
+ networkLogsResponseSchema,
31
+ queueResponseSchema,
32
+ systemLogResponseSchema,
33
+ unifiedRunRequestSchema
34
+ } from "./chunk-C4LKBBIS.js";
35
+ import {
36
+ RESUME_SESSION_HISTORY_MAX_BYTES,
37
+ artifactMissingRootPolicySchema,
38
+ executionFirewallBuiltinEntrySchema,
39
+ firewallsSchema,
40
+ networkPoliciesSchema,
41
+ secretConnectorMetadataMapSchema,
42
+ sessionHistoryDownloadSourceSchema,
43
+ sessionHistoryEncodingSchema,
44
+ sessionHistorySizeBucketSchema,
45
+ zeroBuiltInGenerationAcceptedResponseSchema
46
+ } from "./chunk-CMWQJ3XO.js";
47
+ import {
15
48
  inviteOrgMemberRequestSchema,
16
49
  membershipRequestActionSchema,
17
50
  orgMembersResponseSchema,
18
51
  orgMessageResponseSchema,
19
52
  removeOrgMemberRequestSchema,
20
53
  revokeInvitationRequestSchema,
21
- searchZeroLogs,
22
- unifiedRunRequestSchema,
23
- updateOrgMemberRoleRequestSchema,
24
- zeroAgentVisibilitySchema
25
- } from "./chunk-6PN6QGIM.js";
54
+ updateOrgMemberRoleRequestSchema
55
+ } from "./chunk-5RY3DZTW.js";
26
56
  import {
27
- authHeadersSchema,
28
- firewallsSchema,
29
- zeroBuiltInGenerationAcceptedResponseSchema
30
- } from "./chunk-V7A6ZFHR.js";
57
+ authHeadersSchema
58
+ } from "./chunk-NIG6LRRX.js";
31
59
  import {
32
60
  apiErrorSchema,
33
61
  external_exports,
62
+ getClientConfig,
63
+ handleError,
64
+ initClient,
34
65
  initContract,
35
66
  modelProviderListResponseSchema,
36
67
  modelProviderResponseSchema,
@@ -40,16 +71,16 @@ import {
40
71
  upsertModelProviderRequestSchema,
41
72
  upsertModelProviderResponseSchema,
42
73
  withErrorHandler
43
- } from "./chunk-5ZZI2LSO.js";
74
+ } from "./chunk-U2PPHCTL.js";
44
75
  import {
45
76
  Command
46
- } from "./chunk-JAUTPXVK.js";
77
+ } from "./chunk-PAULHBEP.js";
47
78
  import {
48
79
  __commonJS,
49
80
  __require,
50
81
  __toESM,
51
82
  init_esm_shims
52
- } from "./chunk-AUWSMG4F.js";
83
+ } from "./chunk-52CNCL6Y.js";
53
84
 
54
85
  // ../../node_modules/.pnpm/yaml@2.8.3/node_modules/yaml/dist/nodes/identity.js
55
86
  var require_identity = __commonJS({
@@ -734,9 +765,9 @@ var require_Alias = __commonJS({
734
765
  } else if (identity.isCollection(node)) {
735
766
  let count = 0;
736
767
  for (const item of node.items) {
737
- const c84 = getAliasCount(doc, item, anchors2);
738
- if (c84 > count)
739
- count = c84;
768
+ const c86 = getAliasCount(doc, item, anchors2);
769
+ if (c86 > count)
770
+ count = c86;
740
771
  }
741
772
  return count;
742
773
  } else if (identity.isPair(node)) {
@@ -10843,6 +10874,48 @@ var zeroUserModelPreferenceContract = c7.router({
10843
10874
  }
10844
10875
  });
10845
10876
 
10877
+ // ../../packages/api-contracts/src/contracts/storages.ts
10878
+ init_esm_shims();
10879
+ var MAX_FILE_SIZE_BYTES = 104857600;
10880
+ var STORAGE_MANIFEST_MAX_FILES = 5e4;
10881
+ var STORAGE_MANIFEST_MAX_PATH_BYTES = 8 * 1024 * 1024;
10882
+ var fileEntryWithHashSchema = external_exports.object({
10883
+ path: external_exports.string().min(1, "File path is required"),
10884
+ hash: external_exports.string().length(64, "Hash must be SHA-256 (64 hex chars)"),
10885
+ size: external_exports.number().int().min(0, "Size must be non-negative").max(MAX_FILE_SIZE_BYTES, "File size exceeds 100MB limit")
10886
+ });
10887
+ var storageManifestPathEncoder = new TextEncoder();
10888
+ var storageManifestFilesSchema = external_exports.array(fileEntryWithHashSchema).max(
10889
+ STORAGE_MANIFEST_MAX_FILES,
10890
+ `Storage manifest exceeds ${STORAGE_MANIFEST_MAX_FILES} files`
10891
+ ).refine(
10892
+ (files) => {
10893
+ if (files.length > STORAGE_MANIFEST_MAX_FILES) {
10894
+ return true;
10895
+ }
10896
+ let pathBytes = 0;
10897
+ for (const file of files) {
10898
+ pathBytes += storageManifestPathEncoder.encode(file.path).byteLength;
10899
+ if (pathBytes > STORAGE_MANIFEST_MAX_PATH_BYTES) {
10900
+ return false;
10901
+ }
10902
+ }
10903
+ return true;
10904
+ },
10905
+ {
10906
+ message: `Storage manifest paths exceed ${STORAGE_MANIFEST_MAX_PATH_BYTES} UTF-8 bytes`
10907
+ }
10908
+ );
10909
+ var storageChangesSchema = external_exports.object({
10910
+ added: external_exports.array(external_exports.string()),
10911
+ modified: external_exports.array(external_exports.string()),
10912
+ deleted: external_exports.array(external_exports.string())
10913
+ });
10914
+ var presignedUploadSchema = external_exports.object({
10915
+ key: external_exports.string(),
10916
+ presignedUrl: external_exports.url()
10917
+ });
10918
+
10846
10919
  // ../../packages/api-contracts/src/contracts/presentation-images.ts
10847
10920
  init_esm_shims();
10848
10921
  var c8 = initContract();
@@ -10996,177 +11069,887 @@ var zeroEmailInboundContract = c10.router({
10996
11069
  }
10997
11070
  });
10998
11071
 
10999
- // ../../packages/api-contracts/src/contracts/cli-auth.ts
11072
+ // ../../packages/api-contracts/src/contracts/webhooks.ts
11000
11073
  init_esm_shims();
11001
11074
  var c11 = initContract();
11002
- var oauthErrorSchema = external_exports.object({
11003
- error: external_exports.string(),
11004
- error_description: external_exports.string()
11075
+ var sha256HexSchema = external_exports.string().regex(
11076
+ /^[a-f0-9]{64}$/,
11077
+ "hash must be a lowercase 64-character SHA-256 hex string"
11078
+ );
11079
+ var thirdPartyWebhookErrorSchema = external_exports.object({ error: external_exports.string() });
11080
+ var thirdPartyWebhookOkSchema = external_exports.union([
11081
+ external_exports.string(),
11082
+ external_exports.object({ message: external_exports.literal("pong") })
11083
+ ]);
11084
+ var webhookClerkContract = c11.router({
11085
+ post: {
11086
+ method: "POST",
11087
+ path: "/api/webhooks/clerk",
11088
+ body: c11.type(),
11089
+ responses: {
11090
+ 200: thirdPartyWebhookOkSchema,
11091
+ 401: thirdPartyWebhookErrorSchema
11092
+ },
11093
+ summary: "Handle Clerk organization and user webhooks"
11094
+ }
11005
11095
  });
11006
- var cliAuthDeviceContract = c11.router({
11007
- /**
11008
- * POST /api/cli/auth/device
11009
- * Initiate device authorization flow
11010
- */
11011
- create: {
11096
+ var webhookGithubContract = c11.router({
11097
+ post: {
11012
11098
  method: "POST",
11013
- path: "/api/cli/auth/device",
11014
- body: external_exports.object({}).optional(),
11099
+ path: "/api/webhooks/github",
11100
+ body: c11.type(),
11015
11101
  responses: {
11016
- 200: external_exports.object({
11017
- device_code: external_exports.string(),
11018
- user_code: external_exports.string(),
11019
- verification_path: external_exports.string(),
11020
- expires_in: external_exports.number(),
11021
- interval: external_exports.number()
11022
- }),
11023
- 500: oauthErrorSchema
11102
+ 200: thirdPartyWebhookOkSchema,
11103
+ 400: thirdPartyWebhookErrorSchema,
11104
+ 401: thirdPartyWebhookErrorSchema,
11105
+ 503: thirdPartyWebhookErrorSchema
11024
11106
  },
11025
- summary: "Initiate device authorization flow"
11107
+ summary: "Handle GitHub App webhooks"
11026
11108
  }
11027
11109
  });
11028
- var cliAuthTokenContract = c11.router({
11029
- /**
11030
- * POST /api/cli/auth/token
11031
- * Exchange device code for access token
11032
- */
11033
- exchange: {
11110
+ var webhookStripeContract = c11.router({
11111
+ post: {
11034
11112
  method: "POST",
11035
- path: "/api/cli/auth/token",
11036
- body: external_exports.object({
11037
- device_code: external_exports.string().min(1, "device_code is required")
11113
+ path: "/api/webhooks/stripe",
11114
+ body: c11.type(),
11115
+ responses: {
11116
+ 200: thirdPartyWebhookOkSchema,
11117
+ 401: thirdPartyWebhookErrorSchema,
11118
+ 503: thirdPartyWebhookErrorSchema
11119
+ },
11120
+ summary: "Handle Stripe billing webhooks"
11121
+ }
11122
+ });
11123
+ var gmailWebhookResponseSchema = external_exports.object({
11124
+ success: external_exports.literal(true),
11125
+ watchStates: external_exports.number(),
11126
+ dispatched: external_exports.number(),
11127
+ duplicates: external_exports.number()
11128
+ });
11129
+ var googleCalendarWebhookResponseSchema = external_exports.object({
11130
+ success: external_exports.literal(true),
11131
+ watchStates: external_exports.number(),
11132
+ dispatched: external_exports.number(),
11133
+ duplicates: external_exports.number()
11134
+ });
11135
+ var googleWorkspaceEventsWebhookResponseSchema = external_exports.object({
11136
+ success: external_exports.literal(true),
11137
+ watchStates: external_exports.number(),
11138
+ dispatched: external_exports.number(),
11139
+ duplicates: external_exports.number()
11140
+ });
11141
+ var notionWebhookResponseSchema = external_exports.object({
11142
+ success: external_exports.literal(true),
11143
+ kind: external_exports.enum(["verification", "event"]),
11144
+ pending: external_exports.number(),
11145
+ refreshed: external_exports.number(),
11146
+ duplicates: external_exports.number()
11147
+ });
11148
+ var workflowAutomationWebhookResponseSchema = external_exports.object({
11149
+ success: external_exports.literal(true),
11150
+ duplicate: external_exports.boolean(),
11151
+ runId: external_exports.string().uuid().optional()
11152
+ });
11153
+ var webhookGmailContract = c11.router({
11154
+ post: {
11155
+ method: "POST",
11156
+ path: "/api/webhooks/gmail",
11157
+ body: c11.type(),
11158
+ responses: {
11159
+ 200: gmailWebhookResponseSchema,
11160
+ 400: thirdPartyWebhookErrorSchema,
11161
+ 401: thirdPartyWebhookErrorSchema,
11162
+ 429: thirdPartyWebhookErrorSchema,
11163
+ 503: thirdPartyWebhookErrorSchema
11164
+ },
11165
+ summary: "Handle Gmail Pub/Sub push notifications"
11166
+ }
11167
+ });
11168
+ var webhookGoogleCalendarContract = c11.router({
11169
+ post: {
11170
+ method: "POST",
11171
+ path: "/api/webhooks/google-calendar",
11172
+ body: c11.type(),
11173
+ responses: {
11174
+ 200: googleCalendarWebhookResponseSchema,
11175
+ 400: thirdPartyWebhookErrorSchema,
11176
+ 401: thirdPartyWebhookErrorSchema,
11177
+ 429: thirdPartyWebhookErrorSchema,
11178
+ 503: thirdPartyWebhookErrorSchema
11179
+ },
11180
+ summary: "Handle Google Calendar push notifications"
11181
+ }
11182
+ });
11183
+ var webhookGoogleWorkspaceEventsContract = c11.router({
11184
+ post: {
11185
+ method: "POST",
11186
+ path: "/api/webhooks/google-workspace-events",
11187
+ body: c11.type(),
11188
+ responses: {
11189
+ 200: googleWorkspaceEventsWebhookResponseSchema,
11190
+ 400: thirdPartyWebhookErrorSchema,
11191
+ 401: thirdPartyWebhookErrorSchema,
11192
+ 429: thirdPartyWebhookErrorSchema,
11193
+ 503: thirdPartyWebhookErrorSchema
11194
+ },
11195
+ summary: "Handle Google Workspace Events Pub/Sub push notifications"
11196
+ }
11197
+ });
11198
+ var webhookNotionContract = c11.router({
11199
+ post: {
11200
+ method: "POST",
11201
+ path: "/api/webhooks/notion",
11202
+ body: c11.type(),
11203
+ responses: {
11204
+ 200: notionWebhookResponseSchema,
11205
+ 400: thirdPartyWebhookErrorSchema,
11206
+ 401: thirdPartyWebhookErrorSchema,
11207
+ 503: thirdPartyWebhookErrorSchema
11208
+ },
11209
+ summary: "Handle Notion webhook events"
11210
+ }
11211
+ });
11212
+ var workflowAutomationWebhookPostRoute = {
11213
+ method: "POST",
11214
+ pathParams: external_exports.object({
11215
+ token: external_exports.string().min(1)
11216
+ }),
11217
+ body: c11.type(),
11218
+ responses: {
11219
+ 200: workflowAutomationWebhookResponseSchema,
11220
+ 400: thirdPartyWebhookErrorSchema,
11221
+ 401: thirdPartyWebhookErrorSchema,
11222
+ 404: thirdPartyWebhookErrorSchema,
11223
+ 413: thirdPartyWebhookErrorSchema,
11224
+ 429: thirdPartyWebhookErrorSchema,
11225
+ 500: thirdPartyWebhookErrorSchema
11226
+ }
11227
+ };
11228
+ var webhookWorkflowAutomationContract = c11.router({
11229
+ post: {
11230
+ ...workflowAutomationWebhookPostRoute,
11231
+ path: "/api/webhooks/workflow-automations/:token",
11232
+ summary: "Handle inbound workflow automation webhooks"
11233
+ }
11234
+ });
11235
+ var webhookBuiltInGenerationFalContract = c11.router({
11236
+ post: {
11237
+ method: "POST",
11238
+ path: "/api/webhooks/built-in-generations/fal/:generationId",
11239
+ pathParams: external_exports.object({
11240
+ generationId: external_exports.uuid()
11241
+ }),
11242
+ query: external_exports.object({
11243
+ token: external_exports.string().min(1),
11244
+ visualKey: external_exports.string().min(1).optional()
11038
11245
  }),
11246
+ body: c11.type(),
11039
11247
  responses: {
11040
- // Success - token issued
11041
- 200: external_exports.object({
11042
- access_token: external_exports.string(),
11043
- token_type: external_exports.literal("Bearer"),
11044
- expires_in: external_exports.number()
11045
- }),
11046
- // Authorization pending
11047
- 202: oauthErrorSchema,
11048
- // Various error states
11049
- 400: oauthErrorSchema,
11050
- 500: oauthErrorSchema
11248
+ 200: thirdPartyWebhookOkSchema,
11249
+ 400: thirdPartyWebhookErrorSchema,
11250
+ 401: thirdPartyWebhookErrorSchema,
11251
+ 503: thirdPartyWebhookErrorSchema
11051
11252
  },
11052
- summary: "Exchange device code for access token"
11253
+ summary: "Handle fal built-in generation webhooks"
11053
11254
  }
11054
11255
  });
11055
- var apiErrorResponseSchema = external_exports.object({
11056
- error: external_exports.object({ message: external_exports.string(), code: external_exports.string() })
11256
+ var webhookBuiltInGenerationBytePlusContract = c11.router({
11257
+ post: {
11258
+ method: "POST",
11259
+ path: "/api/webhooks/built-in-generations/byteplus/:generationId",
11260
+ pathParams: external_exports.object({
11261
+ generationId: external_exports.uuid()
11262
+ }),
11263
+ query: external_exports.object({
11264
+ token: external_exports.string().min(1),
11265
+ visualKey: external_exports.string().min(1).optional()
11266
+ }),
11267
+ body: c11.type(),
11268
+ responses: {
11269
+ 200: thirdPartyWebhookOkSchema,
11270
+ 400: thirdPartyWebhookErrorSchema,
11271
+ 401: thirdPartyWebhookErrorSchema,
11272
+ 503: thirdPartyWebhookErrorSchema
11273
+ },
11274
+ summary: "Handle BytePlus built-in generation webhooks"
11275
+ }
11057
11276
  });
11058
- var cliAuthApproveErrorSchema = external_exports.object({
11059
- success: external_exports.literal(false),
11060
- error: external_exports.string()
11277
+ var webhookBuiltInGenerationJoggAiContract = c11.router({
11278
+ post: {
11279
+ method: "POST",
11280
+ path: "/api/webhooks/built-in-generations/joggai/:generationId",
11281
+ pathParams: external_exports.object({
11282
+ generationId: external_exports.uuid()
11283
+ }),
11284
+ query: external_exports.object({
11285
+ token: external_exports.string().min(1)
11286
+ }),
11287
+ body: c11.type(),
11288
+ responses: {
11289
+ 200: thirdPartyWebhookOkSchema,
11290
+ 400: thirdPartyWebhookErrorSchema,
11291
+ 401: thirdPartyWebhookErrorSchema,
11292
+ 503: thirdPartyWebhookErrorSchema
11293
+ },
11294
+ summary: "Handle JoggAI built-in generation webhooks"
11295
+ }
11296
+ });
11297
+ var sandboxReuseResultSchema = external_exports.enum([
11298
+ "reused",
11299
+ "featureDisabled",
11300
+ "noSessionId",
11301
+ "noReuseKey",
11302
+ "poolMiss",
11303
+ "profileMismatch",
11304
+ "deviceLimitMismatch",
11305
+ "unparkFailed"
11306
+ ]);
11307
+ var agentEventSchema = external_exports.object({
11308
+ type: external_exports.string(),
11309
+ sequenceNumber: eventSequenceNumberSchema
11310
+ }).passthrough();
11311
+ var artifactSnapshotsSchema = external_exports.array(
11312
+ external_exports.object({
11313
+ name: external_exports.string(),
11314
+ version: external_exports.string(),
11315
+ mountPath: external_exports.string(),
11316
+ missingRootPolicy: artifactMissingRootPolicySchema.optional()
11317
+ })
11318
+ );
11319
+ var volumeVersionsSnapshotSchema = external_exports.object({
11320
+ versions: external_exports.record(external_exports.string(), external_exports.string())
11061
11321
  });
11062
- var cliAuthApproveContract = c11.router({
11322
+ var firewallAuthErrorSchema = external_exports.object({
11323
+ error: external_exports.object({
11324
+ message: external_exports.string(),
11325
+ code: external_exports.string(),
11326
+ connectors: external_exports.array(external_exports.string()).optional(),
11327
+ failureReason: external_exports.enum(["upstream_provider", "reconnect_required"]).optional()
11328
+ })
11329
+ });
11330
+ var firewallAwsSigv4AuthSchema = external_exports.object({
11331
+ accessKeyId: external_exports.string().min(1),
11332
+ secretAccessKey: external_exports.string().min(1),
11333
+ sessionToken: external_exports.string().min(1).optional()
11334
+ }).strict();
11335
+ var firewallAuthResponseSchema = external_exports.object({
11336
+ headers: external_exports.record(external_exports.string(), external_exports.string()),
11337
+ base: external_exports.string().optional(),
11338
+ query: external_exports.record(external_exports.string(), external_exports.string()).optional(),
11339
+ awsSigv4: firewallAwsSigv4AuthSchema.optional(),
11340
+ // Effective addon cache expiry as Unix seconds. Access token expiry is the
11341
+ // normal source; billable firewall auth can shorten it to force credit
11342
+ // re-authorization. Null means non-expiring only for non-billable auth.
11343
+ expiresAt: external_exports.number().nullable(),
11344
+ resolvedSecrets: external_exports.array(external_exports.string()),
11345
+ refreshedConnectors: external_exports.array(external_exports.string()),
11346
+ refreshedSecrets: external_exports.array(external_exports.string())
11347
+ });
11348
+ var webhookFirewallAuthContract = c11.router({
11063
11349
  /**
11064
- * POST /api/cli/auth/approve
11065
- * Approve a pending CLI device code from a browser session
11350
+ * POST /api/webhooks/agent/firewall/auth
11351
+ * Resolve firewall auth templates and refresh access tokens on demand.
11066
11352
  */
11067
- approve: {
11353
+ resolve: {
11068
11354
  method: "POST",
11069
- path: "/api/cli/auth/approve",
11355
+ path: "/api/webhooks/agent/firewall/auth",
11070
11356
  headers: authHeadersSchema,
11071
11357
  body: external_exports.object({
11072
- device_code: external_exports.string().min(1, "device_code is required"),
11073
- timezone: external_exports.string().min(1).optional()
11358
+ // Encrypted runtime secret namespace. After decryption, keys are the
11359
+ // `NAME` in `${{ secrets.NAME }}`.
11360
+ encryptedSecrets: external_exports.string().min(1),
11361
+ authHeaders: external_exports.record(external_exports.string(), external_exports.string()),
11362
+ authBase: external_exports.string().optional(),
11363
+ authQuery: external_exports.record(external_exports.string(), external_exports.string()).optional(),
11364
+ authAwsSigv4: firewallAwsSigv4AuthSchema.optional(),
11365
+ // Maps firewall auth secret env aliases (the `NAME` in `${{ secrets.NAME }}`)
11366
+ // to the connector or provider owner that can refresh/resolve access.
11367
+ secretConnectorMap: external_exports.record(external_exports.string(), external_exports.string()).optional(),
11368
+ // Same keys as secretConnectorMap; adds source details when the owner
11369
+ // alone is not enough to locate access storage.
11370
+ secretConnectorMetadataMap: secretConnectorMetadataMapSchema.optional(),
11371
+ vars: external_exports.record(external_exports.string(), external_exports.string()).optional(),
11372
+ // Set by mitm from billableFirewalls. Server uses this only to bound
11373
+ // auth cache lifetime by the current credit authorization lease.
11374
+ firewallBillable: external_exports.boolean().optional(),
11375
+ forceRefresh: external_exports.boolean().optional()
11074
11376
  }),
11075
11377
  responses: {
11076
- 200: external_exports.object({ success: external_exports.literal(true) }),
11077
- 400: cliAuthApproveErrorSchema,
11078
- 401: apiErrorResponseSchema,
11079
- 403: apiErrorResponseSchema
11378
+ 200: firewallAuthResponseSchema,
11379
+ 400: apiErrorSchema,
11380
+ 401: apiErrorSchema,
11381
+ 402: apiErrorSchema,
11382
+ 403: apiErrorSchema,
11383
+ 424: firewallAuthErrorSchema,
11384
+ 502: firewallAuthErrorSchema,
11385
+ 500: apiErrorSchema
11080
11386
  },
11081
- summary: "Approve a CLI device authorization flow"
11387
+ summary: "Resolve firewall auth templates"
11082
11388
  }
11083
11389
  });
11084
-
11085
- // ../../packages/api-contracts/src/contracts/auth.ts
11086
- init_esm_shims();
11087
- var c12 = initContract();
11088
- var authContract = c12.router({
11390
+ var webhookEventsContract = c11.router({
11089
11391
  /**
11090
- * GET /api/auth/me
11091
- * Get current user information
11392
+ * POST /api/webhooks/agent/events
11393
+ * Receive agent events from sandbox
11092
11394
  */
11093
- me: {
11094
- method: "GET",
11095
- path: "/api/auth/me",
11395
+ send: {
11396
+ method: "POST",
11397
+ path: "/api/webhooks/agent/events",
11096
11398
  headers: authHeadersSchema,
11399
+ body: external_exports.object({
11400
+ runId: external_exports.string().min(1, "runId is required"),
11401
+ events: external_exports.array(agentEventSchema).min(1, "events array cannot be empty")
11402
+ }),
11097
11403
  responses: {
11098
11404
  200: external_exports.object({
11099
- userId: external_exports.string(),
11100
- email: external_exports.string()
11405
+ received: external_exports.number(),
11406
+ firstSequence: external_exports.number(),
11407
+ lastSequence: external_exports.number()
11101
11408
  }),
11409
+ 400: apiErrorSchema,
11102
11410
  401: apiErrorSchema,
11103
- 403: apiErrorSchema,
11104
11411
  404: apiErrorSchema,
11105
- 500: apiErrorSchema
11412
+ 500: apiErrorSchema,
11413
+ 503: apiErrorSchema
11106
11414
  },
11107
- summary: "Get current user information"
11415
+ summary: "Receive agent events from sandbox"
11108
11416
  }
11109
11417
  });
11110
-
11111
- // ../../packages/api-contracts/src/contracts/user-export.ts
11112
- init_esm_shims();
11113
- var c13 = initContract();
11114
- var exportJobStatusSchema = external_exports.enum([
11115
- "pending",
11116
- "running",
11117
- "completed",
11118
- "failed"
11119
- ]);
11120
- var userExportJobSchema = external_exports.object({
11121
- id: external_exports.string().uuid(),
11122
- status: exportJobStatusSchema,
11123
- createdAt: external_exports.string(),
11124
- completedAt: external_exports.string().nullable(),
11125
- expiresAt: external_exports.string().nullable(),
11126
- downloadUrl: external_exports.string().url().nullable(),
11127
- error: external_exports.string().nullable()
11128
- });
11129
- var userExportStatusResponseSchema = external_exports.object({
11130
- job: userExportJobSchema.nullable(),
11131
- canExport: external_exports.boolean(),
11132
- nextExportAt: external_exports.string().nullable()
11133
- });
11134
- var userExportStartResponseSchema = external_exports.object({
11135
- jobId: external_exports.string().uuid(),
11136
- status: external_exports.enum(["pending", "running"])
11137
- });
11138
- var userExportContract = c13.router({
11139
- get: {
11140
- method: "GET",
11141
- path: "/api/user/export",
11418
+ var webhookCompleteContract = c11.router({
11419
+ /**
11420
+ * POST /api/webhooks/agent/complete
11421
+ * Handle agent run completion (success or failure)
11422
+ */
11423
+ complete: {
11424
+ method: "POST",
11425
+ path: "/api/webhooks/agent/complete",
11142
11426
  headers: authHeadersSchema,
11427
+ body: external_exports.object({
11428
+ runId: external_exports.string().min(1, "runId is required"),
11429
+ exitCode: external_exports.number(),
11430
+ error: external_exports.string().optional(),
11431
+ lastEventSequence: eventSequenceNumberSchema.optional(),
11432
+ // Sandbox id the run executed against. Optional because a run that fails
11433
+ // before VM creation has no sandbox. Persisted to agent_runs.sandbox_id;
11434
+ // the 255-char cap matches the DB column (defense in depth).
11435
+ sandboxId: external_exports.string().max(255).optional(),
11436
+ // Sandbox reuse outcome. One enum value covers both "reused" and the
11437
+ // non-reuse reasons, because (reused, reason) is a partial function —
11438
+ // encoding it as one field makes inconsistent states unrepresentable.
11439
+ // Optional/nullable for old runners and historical rows.
11440
+ sandboxReuseResult: sandboxReuseResultSchema.optional()
11441
+ }),
11143
11442
  responses: {
11144
- 200: userExportStatusResponseSchema,
11443
+ 200: external_exports.object({
11444
+ success: external_exports.boolean(),
11445
+ status: external_exports.enum(["completed", "failed"])
11446
+ }),
11447
+ 400: apiErrorSchema,
11145
11448
  401: apiErrorSchema,
11146
- 403: apiErrorSchema,
11449
+ 404: apiErrorSchema,
11147
11450
  500: apiErrorSchema
11148
11451
  },
11149
- summary: "Get current user export status"
11150
- },
11151
- post: {
11452
+ summary: "Handle agent run completion"
11453
+ }
11454
+ });
11455
+ var webhookCheckpointsContract = c11.router({
11456
+ /**
11457
+ * POST /api/webhooks/agent/checkpoints
11458
+ * Create a recoverable checkpoint for an agent run.
11459
+ */
11460
+ create: {
11152
11461
  method: "POST",
11153
- path: "/api/user/export",
11462
+ path: "/api/webhooks/agent/checkpoints",
11154
11463
  headers: authHeadersSchema,
11155
- body: external_exports.undefined(),
11464
+ body: external_exports.object({
11465
+ runId: external_exports.string().min(1, "runId is required"),
11466
+ cliAgentType: external_exports.string().min(1, "cliAgentType is required"),
11467
+ cliAgentSessionId: external_exports.string().min(1, "cliAgentSessionId is required"),
11468
+ cliAgentSessionHistoryHash: sha256HexSchema,
11469
+ // Multi-artifact snapshots are folded into canonical checkpoint mounts
11470
+ // and projected back into the legacy response shape.
11471
+ artifactSnapshots: artifactSnapshotsSchema.optional(),
11472
+ volumeVersionsSnapshot: volumeVersionsSnapshotSchema.optional()
11473
+ }).strict(),
11156
11474
  responses: {
11157
- 202: userExportStartResponseSchema,
11475
+ 200: external_exports.object({
11476
+ checkpointId: external_exports.string(),
11477
+ agentSessionId: external_exports.string(),
11478
+ conversationId: external_exports.string(),
11479
+ artifacts: artifactSnapshotsSchema.optional(),
11480
+ volumes: external_exports.record(external_exports.string(), external_exports.string()).optional()
11481
+ }),
11482
+ 400: apiErrorSchema,
11158
11483
  401: apiErrorSchema,
11159
- 403: apiErrorSchema,
11160
- 429: apiErrorSchema,
11484
+ 404: apiErrorSchema,
11161
11485
  500: apiErrorSchema
11162
11486
  },
11163
- summary: "Start a user data export"
11487
+ summary: "Create checkpoint for agent run"
11488
+ }
11489
+ });
11490
+ var webhookCheckpointsPrepareHistoryContract = c11.router({
11491
+ prepare: {
11492
+ method: "POST",
11493
+ path: "/api/webhooks/agent/checkpoints/prepare-history",
11494
+ headers: authHeadersSchema,
11495
+ body: external_exports.object({
11496
+ runId: external_exports.string().min(1, "runId is required"),
11497
+ hash: sha256HexSchema,
11498
+ rawSize: external_exports.number().int().positive("rawSize must be a positive integer").max(RESUME_SESSION_HISTORY_MAX_BYTES),
11499
+ encodedSize: external_exports.number().int().positive("encodedSize must be a positive integer").max(RESUME_SESSION_HISTORY_MAX_BYTES),
11500
+ encoding: sessionHistoryEncodingSchema.optional()
11501
+ }),
11502
+ responses: {
11503
+ 200: external_exports.object({
11504
+ presignedUrl: external_exports.string().optional(),
11505
+ existing: external_exports.boolean(),
11506
+ encoding: sessionHistoryEncodingSchema.optional()
11507
+ }),
11508
+ 400: apiErrorSchema,
11509
+ 401: apiErrorSchema,
11510
+ 404: apiErrorSchema,
11511
+ 500: apiErrorSchema
11512
+ },
11513
+ summary: "Get presigned URL for uploading session history to S3"
11514
+ }
11515
+ });
11516
+ var webhookHeartbeatContract = c11.router({
11517
+ /**
11518
+ * POST /api/webhooks/agent/heartbeat
11519
+ * Receive heartbeat signals from sandbox
11520
+ */
11521
+ send: {
11522
+ method: "POST",
11523
+ path: "/api/webhooks/agent/heartbeat",
11524
+ headers: authHeadersSchema,
11525
+ body: external_exports.object({
11526
+ runId: external_exports.string().min(1, "runId is required")
11527
+ }),
11528
+ responses: {
11529
+ 200: external_exports.object({
11530
+ ok: external_exports.boolean()
11531
+ }),
11532
+ 400: apiErrorSchema,
11533
+ 401: apiErrorSchema,
11534
+ 404: apiErrorSchema,
11535
+ 500: apiErrorSchema
11536
+ },
11537
+ summary: "Receive heartbeat from sandbox"
11538
+ }
11539
+ });
11540
+ var metricDataSchema = external_exports.object({
11541
+ ts: external_exports.string(),
11542
+ cpu: external_exports.number(),
11543
+ mem_used: external_exports.number(),
11544
+ mem_total: external_exports.number(),
11545
+ disk_used: external_exports.number(),
11546
+ disk_total: external_exports.number()
11547
+ });
11548
+ var sessionHistoryCompressionRatioBucketSchema = external_exports.enum([
11549
+ "identity",
11550
+ "lt_0_25",
11551
+ "0_25_0_5",
11552
+ "0_5_0_75",
11553
+ "0_75_1",
11554
+ "ge_1"
11555
+ ]);
11556
+ var booleanStringSchema = external_exports.enum(["true", "false"]);
11557
+ var sessionHistoryContentLengthStateSchema = external_exports.enum([
11558
+ "absent",
11559
+ "matches_expected",
11560
+ "mismatches_expected",
11561
+ "present_without_expected",
11562
+ "oversized"
11563
+ ]);
11564
+ var sessionHistoryContentEncodingStateSchema = external_exports.enum([
11565
+ "absent",
11566
+ "gzip",
11567
+ "zstd",
11568
+ "other"
11569
+ ]);
11570
+ var sessionHistoryTransferEncodingStateSchema = external_exports.enum([
11571
+ "absent",
11572
+ "chunked",
11573
+ "other"
11574
+ ]);
11575
+ var sandboxOperationDownloadSourceSchema = external_exports.preprocess((value) => {
11576
+ const parsed = sessionHistoryDownloadSourceSchema.safeParse(value);
11577
+ if (parsed.success) {
11578
+ return parsed.data;
11579
+ }
11580
+ if (typeof value === "string") {
11581
+ return void 0;
11582
+ }
11583
+ return value;
11584
+ }, sessionHistoryDownloadSourceSchema.optional()).optional();
11585
+ var sandboxOperationSchema = external_exports.object({
11586
+ ts: external_exports.string(),
11587
+ action_type: external_exports.string(),
11588
+ duration_ms: external_exports.number(),
11589
+ success: external_exports.boolean(),
11590
+ error: external_exports.string().optional(),
11591
+ encoding: sessionHistoryEncodingSchema.optional(),
11592
+ session_history_raw_size_bucket: sessionHistorySizeBucketSchema.optional(),
11593
+ session_history_encoded_size_bucket: sessionHistorySizeBucketSchema.optional(),
11594
+ session_history_compression_ratio_bucket: sessionHistoryCompressionRatioBucketSchema.optional(),
11595
+ session_history_ref_seen_recently: booleanStringSchema.optional(),
11596
+ session_history_ref_download_inflight: booleanStringSchema.optional(),
11597
+ session_history_content_length_state: sessionHistoryContentLengthStateSchema.optional(),
11598
+ session_history_content_encoding_state: sessionHistoryContentEncodingStateSchema.optional(),
11599
+ session_history_transfer_encoding_state: sessionHistoryTransferEncodingStateSchema.optional(),
11600
+ session_history_download_source: sandboxOperationDownloadSourceSchema
11601
+ });
11602
+ var webhookTelemetryContract = c11.router({
11603
+ /**
11604
+ * POST /api/webhooks/agent/telemetry
11605
+ * Receive telemetry data (system log, metrics, network logs, and sandbox operations) from sandbox
11606
+ */
11607
+ send: {
11608
+ method: "POST",
11609
+ path: "/api/webhooks/agent/telemetry",
11610
+ headers: authHeadersSchema,
11611
+ body: external_exports.object({
11612
+ runId: external_exports.string().min(1, "runId is required"),
11613
+ systemLog: external_exports.string().optional(),
11614
+ metrics: external_exports.array(metricDataSchema).optional(),
11615
+ networkLogs: external_exports.array(networkLogEntrySchema).optional(),
11616
+ sandboxOperations: external_exports.array(sandboxOperationSchema).optional()
11617
+ }),
11618
+ responses: {
11619
+ 200: external_exports.object({
11620
+ success: external_exports.boolean(),
11621
+ id: external_exports.string()
11622
+ }),
11623
+ 400: apiErrorSchema,
11624
+ 401: apiErrorSchema,
11625
+ 404: apiErrorSchema,
11626
+ 500: apiErrorSchema
11627
+ },
11628
+ summary: "Receive telemetry data from sandbox"
11629
+ }
11630
+ });
11631
+ var webhookStoragesPrepareContract = c11.router({
11632
+ prepare: {
11633
+ method: "POST",
11634
+ path: "/api/webhooks/agent/storages/prepare",
11635
+ headers: authHeadersSchema,
11636
+ body: external_exports.object({
11637
+ runId: external_exports.string().min(1, "runId is required"),
11638
+ // Required for webhook auth
11639
+ /**
11640
+ * Canonical Storage identity authorized against the run's writeback
11641
+ * mounts.
11642
+ */
11643
+ storageId: external_exports.string().uuid(),
11644
+ files: storageManifestFilesSchema,
11645
+ parentVersionId: external_exports.string().optional(),
11646
+ force: external_exports.boolean().optional(),
11647
+ baseVersion: external_exports.string().optional(),
11648
+ changes: storageChangesSchema.optional()
11649
+ }),
11650
+ responses: {
11651
+ 200: external_exports.object({
11652
+ versionId: external_exports.string(),
11653
+ existing: external_exports.boolean(),
11654
+ uploads: external_exports.object({
11655
+ archive: presignedUploadSchema,
11656
+ manifest: presignedUploadSchema
11657
+ }).optional()
11658
+ }),
11659
+ 400: apiErrorSchema,
11660
+ 401: apiErrorSchema,
11661
+ 404: apiErrorSchema,
11662
+ 413: apiErrorSchema,
11663
+ 500: apiErrorSchema
11664
+ },
11665
+ summary: "Prepare for direct S3 upload from sandbox"
11666
+ }
11667
+ });
11668
+ var webhookStoragesCommitContract = c11.router({
11669
+ commit: {
11670
+ method: "POST",
11671
+ path: "/api/webhooks/agent/storages/commit",
11672
+ headers: authHeadersSchema,
11673
+ body: external_exports.object({
11674
+ runId: external_exports.string().min(1, "runId is required"),
11675
+ // Required for webhook auth
11676
+ /**
11677
+ * Canonical Storage identity authorized against the run's writeback
11678
+ * mounts.
11679
+ */
11680
+ storageId: external_exports.string().uuid(),
11681
+ versionId: external_exports.string().min(1, "Version ID is required"),
11682
+ parentVersionId: external_exports.string().optional(),
11683
+ files: storageManifestFilesSchema,
11684
+ message: external_exports.string().optional()
11685
+ }),
11686
+ responses: {
11687
+ 200: external_exports.object({
11688
+ success: external_exports.literal(true),
11689
+ versionId: external_exports.string(),
11690
+ storageName: external_exports.string(),
11691
+ size: external_exports.number(),
11692
+ fileCount: external_exports.number(),
11693
+ deduplicated: external_exports.boolean().optional()
11694
+ }),
11695
+ 400: apiErrorSchema,
11696
+ 401: apiErrorSchema,
11697
+ 404: apiErrorSchema,
11698
+ 409: apiErrorSchema,
11699
+ // S3 files missing
11700
+ 413: apiErrorSchema,
11701
+ 500: apiErrorSchema
11702
+ },
11703
+ summary: "Commit uploaded storage from sandbox"
11704
+ }
11705
+ });
11706
+ var webhookUsageEventItemSchema = external_exports.object({
11707
+ idempotencyKey: external_exports.uuid(),
11708
+ kind: external_exports.enum(["connector", "model", "image"]),
11709
+ provider: external_exports.string().min(1).max(100),
11710
+ category: external_exports.string().min(1).max(100),
11711
+ quantity: external_exports.number().int().min(0)
11712
+ }).strict();
11713
+ var webhookUsageEventContract = c11.router({
11714
+ send: {
11715
+ method: "POST",
11716
+ path: "/api/webhooks/agent/usage-event",
11717
+ headers: authHeadersSchema,
11718
+ body: external_exports.object({
11719
+ runId: external_exports.string().min(1, "runId is required"),
11720
+ events: external_exports.array(webhookUsageEventItemSchema).min(1).max(100)
11721
+ }).strict(),
11722
+ responses: {
11723
+ 200: external_exports.object({
11724
+ success: external_exports.boolean()
11725
+ }),
11726
+ 400: apiErrorSchema,
11727
+ 401: apiErrorSchema,
11728
+ 404: apiErrorSchema,
11729
+ 500: apiErrorSchema
11730
+ },
11731
+ summary: "Receive billing usage event data from sandbox"
11732
+ }
11733
+ });
11734
+ var webhookModelUsageObservationItemSchema = external_exports.object({
11735
+ idempotencyKey: external_exports.uuid(),
11736
+ model: external_exports.string().min(1).max(255),
11737
+ inputTokens: external_exports.number().int().min(0).max(Number.MAX_SAFE_INTEGER),
11738
+ outputTokens: external_exports.number().int().min(0).max(Number.MAX_SAFE_INTEGER),
11739
+ cacheReadInputTokens: external_exports.number().int().min(0).max(Number.MAX_SAFE_INTEGER),
11740
+ cacheCreationInputTokens: external_exports.number().int().min(0).max(Number.MAX_SAFE_INTEGER)
11741
+ }).strict().refine(
11742
+ (event) => {
11743
+ return event.inputTokens > 0 || event.outputTokens > 0 || event.cacheReadInputTokens > 0 || event.cacheCreationInputTokens > 0;
11744
+ },
11745
+ { message: "At least one token counter must be positive" }
11746
+ );
11747
+ var webhookModelUsageObservationBodySchema = external_exports.object({
11748
+ runId: external_exports.string().min(1, "runId is required"),
11749
+ events: external_exports.array(webhookModelUsageObservationItemSchema).min(1).max(100)
11750
+ }).strict().superRefine((body, ctx) => {
11751
+ const idempotencyKeys = /* @__PURE__ */ new Set();
11752
+ body.events.forEach((event, index) => {
11753
+ if (idempotencyKeys.has(event.idempotencyKey)) {
11754
+ ctx.addIssue({
11755
+ code: "custom",
11756
+ path: ["events", index, "idempotencyKey"],
11757
+ message: "Idempotency keys must be unique within a request"
11758
+ });
11759
+ }
11760
+ idempotencyKeys.add(event.idempotencyKey);
11761
+ });
11762
+ });
11763
+ var webhookModelUsageObservationContract = c11.router({
11764
+ send: {
11765
+ method: "POST",
11766
+ path: "/api/webhooks/agent/model-usage-observation",
11767
+ headers: authHeadersSchema,
11768
+ body: webhookModelUsageObservationBodySchema,
11769
+ responses: {
11770
+ 200: external_exports.object({
11771
+ success: external_exports.boolean()
11772
+ }),
11773
+ 400: apiErrorSchema,
11774
+ 401: apiErrorSchema,
11775
+ 404: apiErrorSchema,
11776
+ 500: apiErrorSchema
11777
+ },
11778
+ summary: "Receive compact model usage observation data from sandbox"
11164
11779
  }
11165
11780
  });
11166
11781
 
11167
- // ../../packages/api-contracts/src/contracts/email-unsubscribe.ts
11782
+ // ../../packages/api-contracts/src/contracts/cli-auth.ts
11783
+ init_esm_shims();
11784
+ var c12 = initContract();
11785
+ var oauthErrorSchema = external_exports.object({
11786
+ error: external_exports.string(),
11787
+ error_description: external_exports.string()
11788
+ });
11789
+ var cliAuthDeviceContract = c12.router({
11790
+ /**
11791
+ * POST /api/cli/auth/device
11792
+ * Initiate device authorization flow
11793
+ */
11794
+ create: {
11795
+ method: "POST",
11796
+ path: "/api/cli/auth/device",
11797
+ body: external_exports.object({}).optional(),
11798
+ responses: {
11799
+ 200: external_exports.object({
11800
+ device_code: external_exports.string(),
11801
+ user_code: external_exports.string(),
11802
+ verification_path: external_exports.string(),
11803
+ expires_in: external_exports.number(),
11804
+ interval: external_exports.number()
11805
+ }),
11806
+ 500: oauthErrorSchema
11807
+ },
11808
+ summary: "Initiate device authorization flow"
11809
+ }
11810
+ });
11811
+ var cliAuthTokenContract = c12.router({
11812
+ /**
11813
+ * POST /api/cli/auth/token
11814
+ * Exchange device code for access token
11815
+ */
11816
+ exchange: {
11817
+ method: "POST",
11818
+ path: "/api/cli/auth/token",
11819
+ body: external_exports.object({
11820
+ device_code: external_exports.string().min(1, "device_code is required")
11821
+ }),
11822
+ responses: {
11823
+ // Success - token issued
11824
+ 200: external_exports.object({
11825
+ access_token: external_exports.string(),
11826
+ token_type: external_exports.literal("Bearer"),
11827
+ expires_in: external_exports.number()
11828
+ }),
11829
+ // Authorization pending
11830
+ 202: oauthErrorSchema,
11831
+ // Various error states
11832
+ 400: oauthErrorSchema,
11833
+ 500: oauthErrorSchema
11834
+ },
11835
+ summary: "Exchange device code for access token"
11836
+ }
11837
+ });
11838
+ var apiErrorResponseSchema = external_exports.object({
11839
+ error: external_exports.object({ message: external_exports.string(), code: external_exports.string() })
11840
+ });
11841
+ var cliAuthApproveErrorSchema = external_exports.object({
11842
+ success: external_exports.literal(false),
11843
+ error: external_exports.string()
11844
+ });
11845
+ var cliAuthApproveContract = c12.router({
11846
+ /**
11847
+ * POST /api/cli/auth/approve
11848
+ * Approve a pending CLI device code from a browser session
11849
+ */
11850
+ approve: {
11851
+ method: "POST",
11852
+ path: "/api/cli/auth/approve",
11853
+ headers: authHeadersSchema,
11854
+ body: external_exports.object({
11855
+ device_code: external_exports.string().min(1, "device_code is required"),
11856
+ timezone: external_exports.string().min(1).optional()
11857
+ }),
11858
+ responses: {
11859
+ 200: external_exports.object({ success: external_exports.literal(true) }),
11860
+ 400: cliAuthApproveErrorSchema,
11861
+ 401: apiErrorResponseSchema,
11862
+ 403: apiErrorResponseSchema
11863
+ },
11864
+ summary: "Approve a CLI device authorization flow"
11865
+ }
11866
+ });
11867
+
11868
+ // ../../packages/api-contracts/src/contracts/auth.ts
11869
+ init_esm_shims();
11870
+ var c13 = initContract();
11871
+ var authContract = c13.router({
11872
+ /**
11873
+ * GET /api/auth/me
11874
+ * Get current user information
11875
+ */
11876
+ me: {
11877
+ method: "GET",
11878
+ path: "/api/auth/me",
11879
+ headers: authHeadersSchema,
11880
+ responses: {
11881
+ 200: external_exports.object({
11882
+ userId: external_exports.string(),
11883
+ email: external_exports.string()
11884
+ }),
11885
+ 401: apiErrorSchema,
11886
+ 403: apiErrorSchema,
11887
+ 404: apiErrorSchema,
11888
+ 500: apiErrorSchema
11889
+ },
11890
+ summary: "Get current user information"
11891
+ }
11892
+ });
11893
+
11894
+ // ../../packages/api-contracts/src/contracts/user-export.ts
11168
11895
  init_esm_shims();
11169
11896
  var c14 = initContract();
11897
+ var exportJobStatusSchema = external_exports.enum([
11898
+ "pending",
11899
+ "running",
11900
+ "completed",
11901
+ "failed"
11902
+ ]);
11903
+ var userExportJobSchema = external_exports.object({
11904
+ id: external_exports.string().uuid(),
11905
+ status: exportJobStatusSchema,
11906
+ createdAt: external_exports.string(),
11907
+ completedAt: external_exports.string().nullable(),
11908
+ expiresAt: external_exports.string().nullable(),
11909
+ downloadUrl: external_exports.string().url().nullable(),
11910
+ error: external_exports.string().nullable()
11911
+ });
11912
+ var userExportStatusResponseSchema = external_exports.object({
11913
+ job: userExportJobSchema.nullable(),
11914
+ canExport: external_exports.boolean(),
11915
+ nextExportAt: external_exports.string().nullable()
11916
+ });
11917
+ var userExportStartResponseSchema = external_exports.object({
11918
+ jobId: external_exports.string().uuid(),
11919
+ status: external_exports.enum(["pending", "running"])
11920
+ });
11921
+ var userExportContract = c14.router({
11922
+ get: {
11923
+ method: "GET",
11924
+ path: "/api/user/export",
11925
+ headers: authHeadersSchema,
11926
+ responses: {
11927
+ 200: userExportStatusResponseSchema,
11928
+ 401: apiErrorSchema,
11929
+ 403: apiErrorSchema,
11930
+ 500: apiErrorSchema
11931
+ },
11932
+ summary: "Get current user export status"
11933
+ },
11934
+ post: {
11935
+ method: "POST",
11936
+ path: "/api/user/export",
11937
+ headers: authHeadersSchema,
11938
+ body: external_exports.undefined(),
11939
+ responses: {
11940
+ 202: userExportStartResponseSchema,
11941
+ 401: apiErrorSchema,
11942
+ 403: apiErrorSchema,
11943
+ 429: apiErrorSchema,
11944
+ 500: apiErrorSchema
11945
+ },
11946
+ summary: "Start a user data export"
11947
+ }
11948
+ });
11949
+
11950
+ // ../../packages/api-contracts/src/contracts/email-unsubscribe.ts
11951
+ init_esm_shims();
11952
+ var c15 = initContract();
11170
11953
  var emailUnsubscribeQuerySchema = external_exports.object({
11171
11954
  token: external_exports.string().optional()
11172
11955
  });
@@ -11176,13 +11959,13 @@ var emailUnsubscribeResponseSchema = external_exports.object({
11176
11959
  var emailUnsubscribeErrorSchema = external_exports.object({
11177
11960
  error: external_exports.string()
11178
11961
  });
11179
- var emailUnsubscribeContract = c14.router({
11962
+ var emailUnsubscribeContract = c15.router({
11180
11963
  get: {
11181
11964
  method: "GET",
11182
11965
  path: "/api/email/unsubscribe",
11183
11966
  query: emailUnsubscribeQuerySchema,
11184
11967
  responses: {
11185
- 302: c14.noBody(),
11968
+ 302: c15.noBody(),
11186
11969
  400: emailUnsubscribeErrorSchema
11187
11970
  },
11188
11971
  summary: "Redirect to the app unsubscribe page"
@@ -11202,13 +11985,13 @@ var emailUnsubscribeContract = c14.router({
11202
11985
 
11203
11986
  // ../../packages/api-contracts/src/contracts/zero-morning-brief.ts
11204
11987
  init_esm_shims();
11205
- var c15 = initContract();
11988
+ var c16 = initContract();
11206
11989
  var triggerMorningBriefResponseSchema = external_exports.object({
11207
11990
  runId: external_exports.string().nullable(),
11208
11991
  briefDate: external_exports.string(),
11209
11992
  queued: external_exports.boolean()
11210
11993
  });
11211
- var zeroMorningBriefContract = c15.router({
11994
+ var zeroMorningBriefContract = c16.router({
11212
11995
  trigger: {
11213
11996
  method: "POST",
11214
11997
  path: "/api/zero/morning-brief/trigger",
@@ -11227,7 +12010,7 @@ var zeroMorningBriefContract = c15.router({
11227
12010
 
11228
12011
  // ../../packages/api-contracts/src/contracts/email-morning-brief-unsubscribe.ts
11229
12012
  init_esm_shims();
11230
- var c16 = initContract();
12013
+ var c17 = initContract();
11231
12014
  var emailMorningBriefUnsubscribeQuerySchema = external_exports.object({
11232
12015
  token: external_exports.string().optional()
11233
12016
  });
@@ -11237,7 +12020,7 @@ var emailMorningBriefUnsubscribeResponseSchema = external_exports.object({
11237
12020
  var emailMorningBriefUnsubscribeErrorSchema = external_exports.object({
11238
12021
  error: external_exports.string()
11239
12022
  });
11240
- var emailMorningBriefUnsubscribeContract = c16.router({
12023
+ var emailMorningBriefUnsubscribeContract = c17.router({
11241
12024
  unsubscribe: {
11242
12025
  method: "POST",
11243
12026
  path: "/api/email/morning-brief/unsubscribe",
@@ -11253,7 +12036,7 @@ var emailMorningBriefUnsubscribeContract = c16.router({
11253
12036
 
11254
12037
  // ../../packages/api-contracts/src/contracts/test-oauth-provider-authorize.ts
11255
12038
  init_esm_shims();
11256
- var c17 = initContract();
12039
+ var c18 = initContract();
11257
12040
  var testOAuthProviderAuthorizeErrorSchema = external_exports.object({
11258
12041
  error: external_exports.string()
11259
12042
  });
@@ -11265,13 +12048,13 @@ var testOAuthProviderAuthorizeQuerySchema = external_exports.object({
11265
12048
  scope: external_exports.string().optional(),
11266
12049
  state: external_exports.string().optional()
11267
12050
  });
11268
- var testOAuthProviderAuthorizeContract = c17.router({
12051
+ var testOAuthProviderAuthorizeContract = c18.router({
11269
12052
  authorize: {
11270
12053
  method: "GET",
11271
12054
  path: "/api/test/oauth-provider/authorize",
11272
12055
  query: testOAuthProviderAuthorizeQuerySchema,
11273
12056
  responses: {
11274
- 302: c17.noBody(),
12057
+ 302: c18.noBody(),
11275
12058
  400: testOAuthProviderAuthorizeErrorSchema,
11276
12059
  404: external_exports.string()
11277
12060
  },
@@ -11281,7 +12064,7 @@ var testOAuthProviderAuthorizeContract = c17.router({
11281
12064
 
11282
12065
  // ../../packages/api-contracts/src/contracts/test-oauth-provider-echo.ts
11283
12066
  init_esm_shims();
11284
- var c18 = initContract();
12067
+ var c19 = initContract();
11285
12068
  var testOAuthProviderEchoErrorSchema = external_exports.object({
11286
12069
  error: external_exports.string()
11287
12070
  });
@@ -11289,7 +12072,7 @@ var testOAuthProviderEchoResponseSchema = external_exports.object({
11289
12072
  authorization: external_exports.string(),
11290
12073
  receivedAt: external_exports.string()
11291
12074
  });
11292
- var testOAuthProviderEchoContract = c18.router({
12075
+ var testOAuthProviderEchoContract = c19.router({
11293
12076
  echo: {
11294
12077
  method: "GET",
11295
12078
  path: "/api/test/oauth-provider/echo",
@@ -11304,7 +12087,7 @@ var testOAuthProviderEchoContract = c18.router({
11304
12087
 
11305
12088
  // ../../packages/api-contracts/src/contracts/test-oauth-provider-token.ts
11306
12089
  init_esm_shims();
11307
- var c19 = initContract();
12090
+ var c20 = initContract();
11308
12091
  var testOAuthProviderTokenErrorSchema = external_exports.object({
11309
12092
  error: external_exports.string(),
11310
12093
  error_description: external_exports.string().optional()
@@ -11316,11 +12099,11 @@ var testOAuthProviderTokenResponseSchema = external_exports.object({
11316
12099
  expires_in: external_exports.number(),
11317
12100
  scope: external_exports.string()
11318
12101
  });
11319
- var testOAuthProviderTokenContract = c19.router({
12102
+ var testOAuthProviderTokenContract = c20.router({
11320
12103
  token: {
11321
12104
  method: "POST",
11322
12105
  path: "/api/test/oauth-provider/token",
11323
- body: c19.type(),
12106
+ body: c20.type(),
11324
12107
  responses: {
11325
12108
  200: testOAuthProviderTokenResponseSchema,
11326
12109
  400: testOAuthProviderTokenErrorSchema,
@@ -11333,7 +12116,7 @@ var testOAuthProviderTokenContract = c19.router({
11333
12116
 
11334
12117
  // ../../packages/api-contracts/src/contracts/test-oauth-provider-device-auth.ts
11335
12118
  init_esm_shims();
11336
- var c20 = initContract();
12119
+ var c21 = initContract();
11337
12120
  var testOAuthProviderDeviceAuthErrorSchema = external_exports.object({
11338
12121
  error: external_exports.string(),
11339
12122
  error_description: external_exports.string().optional()
@@ -11346,11 +12129,11 @@ var testOAuthProviderDeviceAuthResponseSchema = external_exports.object({
11346
12129
  expires_in: external_exports.number(),
11347
12130
  interval: external_exports.number()
11348
12131
  });
11349
- var testOAuthProviderDeviceAuthContract = c20.router({
12132
+ var testOAuthProviderDeviceAuthContract = c21.router({
11350
12133
  deviceAuth: {
11351
12134
  method: "POST",
11352
12135
  path: "/api/test/oauth-provider/device/code",
11353
- body: c20.type(),
12136
+ body: c21.type(),
11354
12137
  responses: {
11355
12138
  200: testOAuthProviderDeviceAuthResponseSchema,
11356
12139
  400: testOAuthProviderDeviceAuthErrorSchema,
@@ -11363,7 +12146,7 @@ var testOAuthProviderDeviceAuthContract = c20.router({
11363
12146
 
11364
12147
  // ../../packages/api-contracts/src/contracts/test-oauth-provider-userinfo.ts
11365
12148
  init_esm_shims();
11366
- var c21 = initContract();
12149
+ var c22 = initContract();
11367
12150
  var testOAuthProviderUserinfoErrorSchema = external_exports.object({
11368
12151
  error: external_exports.string()
11369
12152
  });
@@ -11372,7 +12155,7 @@ var testOAuthProviderUserinfoResponseSchema = external_exports.object({
11372
12155
  id: external_exports.string(),
11373
12156
  username: external_exports.string()
11374
12157
  });
11375
- var testOAuthProviderUserinfoContract = c21.router({
12158
+ var testOAuthProviderUserinfoContract = c22.router({
11376
12159
  userinfo: {
11377
12160
  method: "GET",
11378
12161
  path: "/api/test/oauth-provider/userinfo",
@@ -11387,7 +12170,7 @@ var testOAuthProviderUserinfoContract = c21.router({
11387
12170
 
11388
12171
  // ../../packages/api-contracts/src/contracts/test-computer-use-state.ts
11389
12172
  init_esm_shims();
11390
- var c22 = initContract();
12173
+ var c23 = initContract();
11391
12174
  var testComputerUseStateErrorSchema = external_exports.object({
11392
12175
  error: external_exports.string()
11393
12176
  });
@@ -11411,7 +12194,7 @@ var testComputerUseStateGetResponseSchema = external_exports.object({
11411
12194
  var testComputerUseStateDeleteResponseSchema = external_exports.object({
11412
12195
  ok: external_exports.literal(true)
11413
12196
  });
11414
- var testComputerUseStateContract = c22.router({
12197
+ var testComputerUseStateContract = c23.router({
11415
12198
  post: {
11416
12199
  method: "POST",
11417
12200
  path: "/api/test/computer-use-state",
@@ -11453,7 +12236,7 @@ var testComputerUseStateContract = c22.router({
11453
12236
 
11454
12237
  // ../../packages/api-contracts/src/contracts/test-runtime-state.ts
11455
12238
  init_esm_shims();
11456
- var c23 = initContract();
12239
+ var c24 = initContract();
11457
12240
  var testRuntimeStateErrorSchema = external_exports.object({
11458
12241
  error: external_exports.string()
11459
12242
  });
@@ -11664,7 +12447,7 @@ var testRuntimeStateActionResponseSchema = external_exports.object({
11664
12447
  heartbeat_generation: external_exports.number().int().positive().max(Number.MAX_SAFE_INTEGER).nullable()
11665
12448
  }).optional()
11666
12449
  });
11667
- var testRuntimeStateContract = c23.router({
12450
+ var testRuntimeStateContract = c24.router({
11668
12451
  action: {
11669
12452
  method: "POST",
11670
12453
  path: "/api/test/runtime-state/action",
@@ -11680,7 +12463,7 @@ var testRuntimeStateContract = c23.router({
11680
12463
 
11681
12464
  // ../../packages/api-contracts/src/contracts/test-zero-agent-state.ts
11682
12465
  init_esm_shims();
11683
- var c24 = initContract();
12466
+ var c25 = initContract();
11684
12467
  var testZeroAgentStateErrorSchema = external_exports.object({
11685
12468
  error: external_exports.string()
11686
12469
  });
@@ -11702,7 +12485,7 @@ var testZeroAgentStateActionBodySchema = external_exports.discriminatedUnion(
11702
12485
  var testZeroAgentStateActionResponseSchema = external_exports.object({
11703
12486
  ok: external_exports.literal(true)
11704
12487
  });
11705
- var testZeroAgentStateContract = c24.router({
12488
+ var testZeroAgentStateContract = c25.router({
11706
12489
  action: {
11707
12490
  method: "POST",
11708
12491
  path: "/api/test/zero-agent-state/action",
@@ -11718,7 +12501,7 @@ var testZeroAgentStateContract = c24.router({
11718
12501
 
11719
12502
  // ../../packages/api-contracts/src/contracts/test-model-provider-state.ts
11720
12503
  init_esm_shims();
11721
- var c25 = initContract();
12504
+ var c26 = initContract();
11722
12505
  var testModelProviderStateErrorSchema = external_exports.object({
11723
12506
  error: external_exports.string()
11724
12507
  });
@@ -11736,7 +12519,7 @@ var testModelProviderStateActionBodySchema = external_exports.discriminatedUnion
11736
12519
  var testModelProviderStateActionResponseSchema = external_exports.object({
11737
12520
  ok: external_exports.literal(true)
11738
12521
  });
11739
- var testModelProviderStateContract = c25.router({
12522
+ var testModelProviderStateContract = c26.router({
11740
12523
  action: {
11741
12524
  method: "POST",
11742
12525
  path: "/api/test/model-provider-state/action",
@@ -11752,8 +12535,8 @@ var testModelProviderStateContract = c25.router({
11752
12535
 
11753
12536
  // ../../packages/api-contracts/src/contracts/test-mail-draft-state.ts
11754
12537
  init_esm_shims();
11755
- var c26 = initContract();
11756
- var testMailDraftStateContract = c26.router({
12538
+ var c27 = initContract();
12539
+ var testMailDraftStateContract = c27.router({
11757
12540
  get: {
11758
12541
  method: "GET",
11759
12542
  path: "/api/test/mail-draft-state/:mailDraftId",
@@ -11768,7 +12551,7 @@ var testMailDraftStateContract = c26.router({
11768
12551
 
11769
12552
  // ../../packages/api-contracts/src/contracts/test-usage-insight-state.ts
11770
12553
  init_esm_shims();
11771
- var c27 = initContract();
12554
+ var c28 = initContract();
11772
12555
  var nullableDateStringSchema = external_exports.string().nullable();
11773
12556
  var optionalDateStringSchema = external_exports.string().optional();
11774
12557
  var testUsageInsightStateErrorSchema = external_exports.object({
@@ -11931,7 +12714,7 @@ var testUsageInsightStateActionResponseSchema = external_exports.object({
11931
12714
  allocation_count: external_exports.number().optional(),
11932
12715
  insights_daily_permissions: external_exports.array(external_exports.record(external_exports.string(), external_exports.unknown())).optional()
11933
12716
  });
11934
- var testUsageInsightStateContract = c27.router({
12717
+ var testUsageInsightStateContract = c28.router({
11935
12718
  action: {
11936
12719
  method: "POST",
11937
12720
  path: "/api/test/usage-insight-state/action",
@@ -11947,14 +12730,14 @@ var testUsageInsightStateContract = c27.router({
11947
12730
 
11948
12731
  // ../../packages/api-contracts/src/contracts/test-usage-settlement.ts
11949
12732
  init_esm_shims();
11950
- var c28 = initContract();
12733
+ var c29 = initContract();
11951
12734
  var testUsageSettlementRequestSchema = external_exports.object({
11952
12735
  org_id: external_exports.string().min(1)
11953
12736
  });
11954
12737
  var testUsageSettlementResponseSchema = external_exports.object({
11955
12738
  ok: external_exports.literal(true)
11956
12739
  });
11957
- var testUsageSettlementContract = c28.router({
12740
+ var testUsageSettlementContract = c29.router({
11958
12741
  process: {
11959
12742
  method: "POST",
11960
12743
  path: "/api/test/usage-settlement/process",
@@ -11970,7 +12753,7 @@ var testUsageSettlementContract = c28.router({
11970
12753
 
11971
12754
  // ../../packages/api-contracts/src/contracts/test-cron-cleanup-sandboxes-state.ts
11972
12755
  init_esm_shims();
11973
- var c29 = initContract();
12756
+ var c30 = initContract();
11974
12757
  var testCronCleanupSandboxesStateActionBodySchema = external_exports.object({
11975
12758
  action: external_exports.enum([
11976
12759
  "seed-run",
@@ -12000,7 +12783,7 @@ var testCronCleanupSandboxesStateActionResponseSchema = external_exports.object(
12000
12783
  var testCronCleanupSandboxesStateErrorSchema = external_exports.object({
12001
12784
  error: external_exports.string()
12002
12785
  });
12003
- var testCronCleanupSandboxesStateContract = c29.router({
12786
+ var testCronCleanupSandboxesStateContract = c30.router({
12004
12787
  action: {
12005
12788
  method: "POST",
12006
12789
  path: "/api/test/cron-cleanup-sandboxes-state/action",
@@ -12016,7 +12799,7 @@ var testCronCleanupSandboxesStateContract = c29.router({
12016
12799
 
12017
12800
  // ../../packages/api-contracts/src/contracts/test-slack-state.ts
12018
12801
  init_esm_shims();
12019
- var c30 = initContract();
12802
+ var c31 = initContract();
12020
12803
  var testSlackStateErrorSchema = external_exports.object({
12021
12804
  error: external_exports.string()
12022
12805
  });
@@ -12040,7 +12823,6 @@ var testSlackStatePostBodySchema = external_exports.object({
12040
12823
  default_agent_name: external_exports.string().optional(),
12041
12824
  default_agent_display_name: external_exports.string().nullable().optional(),
12042
12825
  compose_content: external_exports.record(external_exports.string(), external_exports.unknown()).optional(),
12043
- org_slug: external_exports.string().optional(),
12044
12826
  org_name: external_exports.string().optional(),
12045
12827
  seed_secret_names: external_exports.array(external_exports.string()).optional(),
12046
12828
  seed_variables: external_exports.record(external_exports.string(), external_exports.string()).optional()
@@ -12148,7 +12930,7 @@ var testSlackStateResponseSchema = external_exports.object({
12148
12930
  })
12149
12931
  )
12150
12932
  });
12151
- var testSlackStateContract = c30.router({
12933
+ var testSlackStateContract = c31.router({
12152
12934
  get: {
12153
12935
  method: "GET",
12154
12936
  path: "/api/test/slack-state",
@@ -12193,7 +12975,7 @@ var testSlackStateContract = c30.router({
12193
12975
 
12194
12976
  // ../../packages/api-contracts/src/contracts/test-slack-mock.ts
12195
12977
  init_esm_shims();
12196
- var c31 = initContract();
12978
+ var c32 = initContract();
12197
12979
  var slackMockRequestBodySchema = external_exports.record(external_exports.string(), external_exports.unknown()).optional();
12198
12980
  var slackMockNotFoundSchema = external_exports.string();
12199
12981
  var testSlackMockOkResponseSchema = external_exports.object({
@@ -12263,7 +13045,7 @@ var testSlackMockUsersInfoResponseSchema = testSlackMockOkResponseSchema.extend(
12263
13045
  })
12264
13046
  })
12265
13047
  });
12266
- var testSlackMockContract = c31.router({
13048
+ var testSlackMockContract = c32.router({
12267
13049
  assistantThreadsSetStatus: {
12268
13050
  method: "POST",
12269
13051
  path: "/api/test/slack-mock/assistant.threads.setStatus",
@@ -12378,7 +13160,7 @@ var testSlackMockContract = c31.router({
12378
13160
 
12379
13161
  // ../../packages/api-contracts/src/contracts/test-telegram-mock.ts
12380
13162
  init_esm_shims();
12381
- var c32 = initContract();
13163
+ var c33 = initContract();
12382
13164
  var testTelegramMockPathParamsSchema = external_exports.object({
12383
13165
  botToken: external_exports.string(),
12384
13166
  method: external_exports.string()
@@ -12391,7 +13173,7 @@ var testTelegramMockErrorResponseSchema = external_exports.object({
12391
13173
  ok: external_exports.literal(false),
12392
13174
  description: external_exports.string()
12393
13175
  });
12394
- var testTelegramMockContract = c32.router({
13176
+ var testTelegramMockContract = c33.router({
12395
13177
  post: {
12396
13178
  method: "POST",
12397
13179
  path: "/api/test/telegram-mock/:botToken/:method",
@@ -12407,7 +13189,7 @@ var testTelegramMockContract = c32.router({
12407
13189
 
12408
13190
  // ../../packages/api-contracts/src/contracts/test-teams-mock.ts
12409
13191
  init_esm_shims();
12410
- var c33 = initContract();
13192
+ var c34 = initContract();
12411
13193
  var teamsMockBodySchema = external_exports.record(external_exports.string(), external_exports.unknown()).optional();
12412
13194
  var teamsMockOkSchema = external_exports.object({ ok: external_exports.literal(true) });
12413
13195
  var teamsMockTokenResponseSchema = external_exports.object({
@@ -12443,7 +13225,7 @@ var testTeamsMockGraphMessagePathParamsSchema = testTeamsMockGraphMessagesPathPa
12443
13225
  var testTeamsMockGraphUserPathParamsSchema = external_exports.object({
12444
13226
  userId: external_exports.string()
12445
13227
  });
12446
- var testTeamsMockContract = c33.router({
13228
+ var testTeamsMockContract = c34.router({
12447
13229
  token: {
12448
13230
  method: "POST",
12449
13231
  path: "/api/test/teams-mock/token",
@@ -12552,7 +13334,7 @@ var testTeamsMockContract = c33.router({
12552
13334
 
12553
13335
  // ../../packages/api-contracts/src/contracts/test-teams-state.ts
12554
13336
  init_esm_shims();
12555
- var c34 = initContract();
13337
+ var c35 = initContract();
12556
13338
  var testTeamsStateErrorSchema = external_exports.object({
12557
13339
  error: external_exports.string()
12558
13340
  });
@@ -12685,7 +13467,7 @@ var testTeamsStateResponseSchema = external_exports.object({
12685
13467
  })
12686
13468
  )
12687
13469
  });
12688
- var testTeamsStateContract = c34.router({
13470
+ var testTeamsStateContract = c35.router({
12689
13471
  get: {
12690
13472
  method: "GET",
12691
13473
  path: "/api/test/teams-state",
@@ -12729,7 +13511,7 @@ var testTeamsStateContract = c34.router({
12729
13511
 
12730
13512
  // ../../packages/api-contracts/src/contracts/test-telegram-state.ts
12731
13513
  init_esm_shims();
12732
- var c35 = initContract();
13514
+ var c36 = initContract();
12733
13515
  var testTelegramStateQuerySchema = external_exports.object({
12734
13516
  bot_id: external_exports.string().optional()
12735
13517
  });
@@ -12802,7 +13584,7 @@ var testTelegramStateSeedResponseSchema = external_exports.object({
12802
13584
  user_link_id: external_exports.string().nullable(),
12803
13585
  default_agent_id: external_exports.string()
12804
13586
  });
12805
- var testTelegramStateContract = c35.router({
13587
+ var testTelegramStateContract = c36.router({
12806
13588
  get: {
12807
13589
  method: "GET",
12808
13590
  path: "/api/test/telegram-state",
@@ -12851,7 +13633,7 @@ var testTelegramStateContract = c35.router({
12851
13633
 
12852
13634
  // ../../packages/api-contracts/src/contracts/cron.ts
12853
13635
  init_esm_shims();
12854
- var c36 = initContract();
13636
+ var c37 = initContract();
12855
13637
  var cleanupResultSchema = external_exports.object({
12856
13638
  runId: external_exports.string(),
12857
13639
  sandboxId: external_exports.string().nullable(),
@@ -12879,7 +13661,7 @@ var cleanupResponseSchema = external_exports.object({
12879
13661
  )
12880
13662
  })
12881
13663
  });
12882
- var cronCleanupSandboxesContract = c36.router({
13664
+ var cronCleanupSandboxesContract = c37.router({
12883
13665
  /**
12884
13666
  * GET /api/cron/cleanup-sandboxes
12885
13667
  * Cron job to cleanup sandboxes that have stopped sending heartbeats
@@ -13029,7 +13811,7 @@ var cronAggregateModelStatsResponseSchema = external_exports.object({
13029
13811
  updatedStats: external_exports.number().int().nonnegative(),
13030
13812
  deletedObservations: external_exports.number().int().nonnegative()
13031
13813
  });
13032
- var cronAggregateUsageContract = c36.router({
13814
+ var cronAggregateUsageContract = c37.router({
13033
13815
  aggregate: {
13034
13816
  method: "GET",
13035
13817
  path: "/api/cron/aggregate-usage",
@@ -13041,7 +13823,7 @@ var cronAggregateUsageContract = c36.router({
13041
13823
  summary: "Aggregate daily usage cache"
13042
13824
  }
13043
13825
  });
13044
- var cronProcessUsageEventsContract = c36.router({
13826
+ var cronProcessUsageEventsContract = c37.router({
13045
13827
  process: {
13046
13828
  method: "GET",
13047
13829
  path: "/api/cron/process-usage-events",
@@ -13053,7 +13835,7 @@ var cronProcessUsageEventsContract = c36.router({
13053
13835
  summary: "Process pending usage events"
13054
13836
  }
13055
13837
  });
13056
- var cronCompactChatThreadSnapshotsContract = c36.router({
13838
+ var cronCompactChatThreadSnapshotsContract = c37.router({
13057
13839
  compact: {
13058
13840
  method: "GET",
13059
13841
  path: "/api/cron/compact-chat-thread-snapshots",
@@ -13065,7 +13847,7 @@ var cronCompactChatThreadSnapshotsContract = c36.router({
13065
13847
  summary: "Compact chat thread snapshots from lifecycle events"
13066
13848
  }
13067
13849
  });
13068
- var cronCompactUsageEventsContract = c36.router({
13850
+ var cronCompactUsageEventsContract = c37.router({
13069
13851
  compact: {
13070
13852
  method: "GET",
13071
13853
  path: "/api/cron/compact-usage-events",
@@ -13077,7 +13859,7 @@ var cronCompactUsageEventsContract = c36.router({
13077
13859
  summary: "Compact stable usage events into hourly rollups"
13078
13860
  }
13079
13861
  });
13080
- var cronMonitorChatEventQueueContract = c36.router({
13862
+ var cronMonitorChatEventQueueContract = c37.router({
13081
13863
  monitor: {
13082
13864
  method: "GET",
13083
13865
  path: "/api/cron/monitor-chat-event-queue",
@@ -13090,7 +13872,7 @@ var cronMonitorChatEventQueueContract = c36.router({
13090
13872
  summary: "Monitor for orphaned queued chat messages"
13091
13873
  }
13092
13874
  });
13093
- var cronReconcileBillingEntitlementsContract = c36.router({
13875
+ var cronReconcileBillingEntitlementsContract = c37.router({
13094
13876
  reconcile: {
13095
13877
  method: "GET",
13096
13878
  path: "/api/cron/reconcile-billing-entitlements",
@@ -13102,7 +13884,7 @@ var cronReconcileBillingEntitlementsContract = c36.router({
13102
13884
  summary: "Reconcile billing entitlements"
13103
13885
  }
13104
13886
  });
13105
- var cronTelegramCleanupContract = c36.router({
13887
+ var cronTelegramCleanupContract = c37.router({
13106
13888
  cleanup: {
13107
13889
  method: "GET",
13108
13890
  path: "/api/cron/telegram-cleanup",
@@ -13114,7 +13896,7 @@ var cronTelegramCleanupContract = c36.router({
13114
13896
  summary: "Delete expired Telegram messages"
13115
13897
  }
13116
13898
  });
13117
- var cronConnectorOauthStateCleanupContract = c36.router({
13899
+ var cronConnectorOauthStateCleanupContract = c37.router({
13118
13900
  cleanup: {
13119
13901
  method: "GET",
13120
13902
  path: "/api/cron/connector-oauth-state-cleanup",
@@ -13126,7 +13908,7 @@ var cronConnectorOauthStateCleanupContract = c36.router({
13126
13908
  summary: "Delete expired connector OAuth states"
13127
13909
  }
13128
13910
  });
13129
- var cronComputerUseScreenshotCleanupContract = c36.router({
13911
+ var cronComputerUseScreenshotCleanupContract = c37.router({
13130
13912
  cleanup: {
13131
13913
  method: "GET",
13132
13914
  path: "/api/cron/computer-use-screenshot-cleanup",
@@ -13138,7 +13920,7 @@ var cronComputerUseScreenshotCleanupContract = c36.router({
13138
13920
  summary: "Delete expired desktop computer-use screenshots"
13139
13921
  }
13140
13922
  });
13141
- var cronBrowserReconcileContract = c36.router({
13923
+ var cronBrowserReconcileContract = c37.router({
13142
13924
  reconcile: {
13143
13925
  method: "GET",
13144
13926
  path: "/api/cron/reconcile-browsers",
@@ -13150,7 +13932,7 @@ var cronBrowserReconcileContract = c36.router({
13150
13932
  summary: "Reconcile managed browser idle leases and provider state"
13151
13933
  }
13152
13934
  });
13153
- var cronDrainEmailOutboxContract = c36.router({
13935
+ var cronDrainEmailOutboxContract = c37.router({
13154
13936
  drain: {
13155
13937
  method: "GET",
13156
13938
  path: "/api/cron/drain-email-outbox",
@@ -13162,7 +13944,7 @@ var cronDrainEmailOutboxContract = c36.router({
13162
13944
  summary: "Drain pending email outbox messages"
13163
13945
  }
13164
13946
  });
13165
- var cronRenewGmailWatchesContract = c36.router({
13947
+ var cronRenewGmailWatchesContract = c37.router({
13166
13948
  renew: {
13167
13949
  method: "GET",
13168
13950
  path: "/api/cron/renew-gmail-watches",
@@ -13174,7 +13956,7 @@ var cronRenewGmailWatchesContract = c36.router({
13174
13956
  summary: "Renew Gmail push notification watches"
13175
13957
  }
13176
13958
  });
13177
- var cronRenewGoogleCalendarWatchesContract = c36.router({
13959
+ var cronRenewGoogleCalendarWatchesContract = c37.router({
13178
13960
  renew: {
13179
13961
  method: "GET",
13180
13962
  path: "/api/cron/renew-google-calendar-watches",
@@ -13186,7 +13968,7 @@ var cronRenewGoogleCalendarWatchesContract = c36.router({
13186
13968
  summary: "Renew Google Calendar push notification watches"
13187
13969
  }
13188
13970
  });
13189
- var cronRenewGoogleWorkspaceEventSubscriptionsContract = c36.router({
13971
+ var cronRenewGoogleWorkspaceEventSubscriptionsContract = c37.router({
13190
13972
  renew: {
13191
13973
  method: "GET",
13192
13974
  path: "/api/cron/renew-google-workspace-event-subscriptions",
@@ -13198,7 +13980,7 @@ var cronRenewGoogleWorkspaceEventSubscriptionsContract = c36.router({
13198
13980
  summary: "Renew Google Workspace Events subscriptions"
13199
13981
  }
13200
13982
  });
13201
- var cronSyncSkillsContract = c36.router({
13983
+ var cronSyncSkillsContract = c37.router({
13202
13984
  sync: {
13203
13985
  method: "GET",
13204
13986
  path: "/api/cron/sync-skills",
@@ -13210,7 +13992,7 @@ var cronSyncSkillsContract = c36.router({
13210
13992
  summary: "Sync official skills from the skills repository"
13211
13993
  }
13212
13994
  });
13213
- var cronConnectorCatalogContract = c36.router({
13995
+ var cronConnectorCatalogContract = c37.router({
13214
13996
  sync: {
13215
13997
  method: "GET",
13216
13998
  path: "/api/cron/sync-connector-catalog",
@@ -13222,7 +14004,7 @@ var cronConnectorCatalogContract = c36.router({
13222
14004
  summary: "Sync the validated connector catalog snapshot"
13223
14005
  }
13224
14006
  });
13225
- var cronExecuteWorkflowAutomationsContract = c36.router({
14007
+ var cronExecuteWorkflowAutomationsContract = c37.router({
13226
14008
  execute: {
13227
14009
  method: "GET",
13228
14010
  path: "/api/cron/execute-workflow-automations",
@@ -13234,7 +14016,7 @@ var cronExecuteWorkflowAutomationsContract = c36.router({
13234
14016
  summary: "Execute due workflow automations"
13235
14017
  }
13236
14018
  });
13237
- var cronExecuteMorningBriefsContract = c36.router({
14019
+ var cronExecuteMorningBriefsContract = c37.router({
13238
14020
  execute: {
13239
14021
  method: "GET",
13240
14022
  path: "/api/cron/execute-morning-briefs",
@@ -13246,7 +14028,7 @@ var cronExecuteMorningBriefsContract = c36.router({
13246
14028
  summary: "Execute due morning briefs"
13247
14029
  }
13248
14030
  });
13249
- var cronAggregateInsightsContract = c36.router({
14031
+ var cronAggregateInsightsContract = c37.router({
13250
14032
  aggregate: {
13251
14033
  method: "GET",
13252
14034
  path: "/api/cron/aggregate-insights",
@@ -13258,7 +14040,7 @@ var cronAggregateInsightsContract = c36.router({
13258
14040
  summary: "Aggregate daily usage insights"
13259
14041
  }
13260
14042
  });
13261
- var cronAggregateModelStatsContract = c36.router({
14043
+ var cronAggregateModelStatsContract = c37.router({
13262
14044
  aggregate: {
13263
14045
  method: "GET",
13264
14046
  path: "/api/cron/aggregate-model-stats",
@@ -13271,7 +14053,7 @@ var cronAggregateModelStatsContract = c36.router({
13271
14053
  summary: "Aggregate hourly model usage statistics"
13272
14054
  }
13273
14055
  });
13274
- var cronRefreshStoragePresignedUrlsContract = c36.router({
14056
+ var cronRefreshStoragePresignedUrlsContract = c37.router({
13275
14057
  refresh: {
13276
14058
  method: "GET",
13277
14059
  path: "/api/cron/refresh-storage-presigned-urls",
@@ -13312,7 +14094,7 @@ var variableListResponseSchema = external_exports.object({
13312
14094
 
13313
14095
  // ../../packages/api-contracts/src/contracts/artifact-catalog.ts
13314
14096
  init_esm_shims();
13315
- var c37 = initContract();
14097
+ var c38 = initContract();
13316
14098
  var ARTIFACT_CATALOG_KINDS = [
13317
14099
  "file",
13318
14100
  "hosted-site",
@@ -13399,7 +14181,7 @@ var artifactDetailSchema = external_exports.discriminatedUnion("kind", [
13399
14181
  site: artifactHostedSiteSchema
13400
14182
  })
13401
14183
  ]);
13402
- var artifactCatalogContract = c37.router({
14184
+ var artifactCatalogContract = c38.router({
13403
14185
  list: {
13404
14186
  method: "GET",
13405
14187
  path: "/api/zero/artifacts/catalog",
@@ -13438,7 +14220,7 @@ var HEX_DIGITS = new Set("0123456789abcdefABCDEF".split(""));
13438
14220
 
13439
14221
  // ../../packages/api-contracts/src/contracts/zero-user-preferences.ts
13440
14222
  init_esm_shims();
13441
- var c38 = initContract();
14223
+ var c39 = initContract();
13442
14224
  var sendModeSchema = external_exports.enum(["enter", "cmd-enter"]);
13443
14225
  var SUPPORTED_USER_LOCALES = [
13444
14226
  "en-US",
@@ -13496,7 +14278,7 @@ var updateUserPreferencesRequestSchema = external_exports.object({
13496
14278
  message: "At least one preference must be provided"
13497
14279
  }
13498
14280
  );
13499
- var zeroUserPreferencesContract = c38.router({
14281
+ var zeroUserPreferencesContract = c39.router({
13500
14282
  get: {
13501
14283
  method: "GET",
13502
14284
  path: "/api/zero/user-preferences",
@@ -13525,7 +14307,7 @@ var zeroUserPreferencesContract = c38.router({
13525
14307
 
13526
14308
  // ../../packages/api-contracts/src/contracts/zero-feature-switches.ts
13527
14309
  init_esm_shims();
13528
- var c39 = initContract();
14310
+ var c40 = initContract();
13529
14311
  var featureSwitchesResponseSchema = external_exports.object({
13530
14312
  switches: external_exports.record(external_exports.string(), external_exports.boolean()),
13531
14313
  effectiveSwitches: external_exports.record(external_exports.string(), external_exports.boolean()),
@@ -13558,7 +14340,7 @@ var featureSwitchesResponseSchema = external_exports.object({
13558
14340
  var updateFeatureSwitchesRequestSchema = external_exports.object({
13559
14341
  switches: external_exports.record(external_exports.string(), external_exports.boolean())
13560
14342
  });
13561
- var zeroFeatureSwitchesContract = c39.router({
14343
+ var zeroFeatureSwitchesContract = c40.router({
13562
14344
  get: {
13563
14345
  method: "GET",
13564
14346
  path: "/api/zero/feature-switches",
@@ -13587,7 +14369,7 @@ var zeroFeatureSwitchesContract = c39.router({
13587
14369
  method: "DELETE",
13588
14370
  path: "/api/zero/feature-switches",
13589
14371
  headers: authHeadersSchema,
13590
- body: c39.noBody(),
14372
+ body: c40.noBody(),
13591
14373
  responses: {
13592
14374
  200: external_exports.object({ deleted: external_exports.literal(true) }),
13593
14375
  401: apiErrorSchema,
@@ -13599,7 +14381,7 @@ var zeroFeatureSwitchesContract = c39.router({
13599
14381
 
13600
14382
  // ../../packages/api-contracts/src/contracts/onboarding.ts
13601
14383
  init_esm_shims();
13602
- var c40 = initContract();
14384
+ var c41 = initContract();
13603
14385
  var onboardingStatusResponseSchema = external_exports.object({
13604
14386
  needsOnboarding: external_exports.boolean(),
13605
14387
  onboardingComplete: external_exports.boolean(),
@@ -13614,7 +14396,7 @@ var onboardingStatusResponseSchema = external_exports.object({
13614
14396
  avatarUrl: external_exports.string().optional()
13615
14397
  }).nullable()
13616
14398
  });
13617
- var onboardingStatusContract = c40.router({
14399
+ var onboardingStatusContract = c41.router({
13618
14400
  getStatus: {
13619
14401
  method: "GET",
13620
14402
  path: "/api/zero/onboarding/status",
@@ -13626,7 +14408,7 @@ var onboardingStatusContract = c40.router({
13626
14408
  summary: "Get onboarding status for current user"
13627
14409
  }
13628
14410
  });
13629
- var onboardingCompleteContract = c40.router({
14411
+ var onboardingCompleteContract = c41.router({
13630
14412
  complete: {
13631
14413
  method: "POST",
13632
14414
  path: "/api/zero/onboarding/complete",
@@ -13654,7 +14436,7 @@ var skillFrontmatterSchema = external_exports.object({
13654
14436
 
13655
14437
  // ../../packages/api-contracts/src/contracts/zero-codex-device-auth.ts
13656
14438
  init_esm_shims();
13657
- var c41 = initContract();
14439
+ var c42 = initContract();
13658
14440
  var codexDeviceAuthScopeSchema = external_exports.enum(["org", "personal"]);
13659
14441
  var codexDeviceAuthStartResponseSchema = external_exports.object({
13660
14442
  sessionToken: external_exports.string(),
@@ -13680,7 +14462,7 @@ var codexDeviceAuthCompleteResponseSchema = external_exports.discriminatedUnion(
13680
14462
  var codexDeviceAuthCancelResponseSchema = external_exports.object({
13681
14463
  status: external_exports.literal("cancelled")
13682
14464
  });
13683
- var zeroCodexDeviceAuthContract = c41.router({
14465
+ var zeroCodexDeviceAuthContract = c42.router({
13684
14466
  start: {
13685
14467
  method: "POST",
13686
14468
  path: "/api/zero/model-providers/codex/device-auth/sessions",
@@ -13728,7 +14510,7 @@ var zeroCodexDeviceAuthContract = c41.router({
13728
14510
 
13729
14511
  // ../../packages/api-contracts/src/contracts/zero-claude-code-device-auth.ts
13730
14512
  init_esm_shims();
13731
- var c42 = initContract();
14513
+ var c43 = initContract();
13732
14514
  var claudeCodeDeviceAuthScopeSchema = external_exports.enum(["org", "personal"]);
13733
14515
  var claudeCodeDeviceAuthStartResponseSchema = external_exports.object({
13734
14516
  sessionToken: external_exports.string(),
@@ -13746,7 +14528,7 @@ var claudeCodeDeviceAuthCompleteResponseSchema = external_exports.object({
13746
14528
  var claudeCodeDeviceAuthCancelResponseSchema = external_exports.object({
13747
14529
  status: external_exports.literal("cancelled")
13748
14530
  });
13749
- var zeroClaudeCodeDeviceAuthContract = c42.router({
14531
+ var zeroClaudeCodeDeviceAuthContract = c43.router({
13750
14532
  start: {
13751
14533
  method: "POST",
13752
14534
  path: "/api/zero/model-providers/claude-code/device-auth/sessions",
@@ -13797,12 +14579,12 @@ var zeroClaudeCodeDeviceAuthContract = c42.router({
13797
14579
 
13798
14580
  // ../../packages/api-contracts/src/contracts/zero-org-logo.ts
13799
14581
  init_esm_shims();
13800
- var c43 = initContract();
14582
+ var c44 = initContract();
13801
14583
  var zeroOrgLogoResponseSchema = external_exports.object({
13802
14584
  logoUrl: external_exports.string().nullable(),
13803
14585
  hasImage: external_exports.boolean()
13804
14586
  });
13805
- var zeroOrgLogoContract = c43.router({
14587
+ var zeroOrgLogoContract = c44.router({
13806
14588
  get: {
13807
14589
  method: "GET",
13808
14590
  path: "/api/zero/org/logo",
@@ -13820,7 +14602,7 @@ var zeroOrgLogoContract = c43.router({
13820
14602
  path: "/api/zero/org/logo",
13821
14603
  headers: authHeadersSchema,
13822
14604
  contentType: "multipart/form-data",
13823
- body: c43.type(),
14605
+ body: c44.type(),
13824
14606
  responses: {
13825
14607
  200: zeroOrgLogoResponseSchema,
13826
14608
  400: apiErrorSchema,
@@ -13835,8 +14617,8 @@ var zeroOrgLogoContract = c43.router({
13835
14617
 
13836
14618
  // ../../packages/api-contracts/src/contracts/zero-org-members.ts
13837
14619
  init_esm_shims();
13838
- var c44 = initContract();
13839
- var zeroOrgMembersContract = c44.router({
14620
+ var c45 = initContract();
14621
+ var zeroOrgMembersContract = c45.router({
13840
14622
  members: {
13841
14623
  method: "GET",
13842
14624
  path: "/api/zero/org/members",
@@ -13882,7 +14664,7 @@ var zeroOrgMembersContract = c44.router({
13882
14664
  summary: "Remove a member from the org (zero proxy)"
13883
14665
  }
13884
14666
  });
13885
- var zeroOrgInviteContract = c44.router({
14667
+ var zeroOrgInviteContract = c45.router({
13886
14668
  invite: {
13887
14669
  method: "POST",
13888
14670
  path: "/api/zero/org/invite",
@@ -13912,7 +14694,7 @@ var zeroOrgInviteContract = c44.router({
13912
14694
  summary: "Revoke a pending invitation (zero proxy)"
13913
14695
  }
13914
14696
  });
13915
- var zeroOrgMembershipRequestsContract = c44.router({
14697
+ var zeroOrgMembershipRequestsContract = c45.router({
13916
14698
  accept: {
13917
14699
  method: "POST",
13918
14700
  path: "/api/zero/org/membership-requests",
@@ -13945,8 +14727,8 @@ var zeroOrgMembershipRequestsContract = c44.router({
13945
14727
 
13946
14728
  // ../../packages/api-contracts/src/contracts/zero-composes.ts
13947
14729
  init_esm_shims();
13948
- var c45 = initContract();
13949
- var zeroComposesListContract = c45.router({
14730
+ var c46 = initContract();
14731
+ var zeroComposesListContract = c46.router({
13950
14732
  list: {
13951
14733
  method: "GET",
13952
14734
  path: "/api/zero/composes/list",
@@ -13964,11 +14746,267 @@ var zeroComposesListContract = c45.router({
13964
14746
  }
13965
14747
  });
13966
14748
 
14749
+ // ../../packages/api-contracts/src/contracts/zero-runs.ts
14750
+ init_esm_shims();
14751
+ var zeroRunCreateBodySchema = unifiedRunRequestSchema.omit({
14752
+ triggerSource: true,
14753
+ artifacts: true,
14754
+ disallowedTools: true,
14755
+ volumeVersions: true,
14756
+ vars: true,
14757
+ secrets: true,
14758
+ agentComposeId: true,
14759
+ appendSystemPrompt: true,
14760
+ modelProviderType: true,
14761
+ permissionPolicies: true
14762
+ }).extend({
14763
+ agentId: external_exports.string().optional(),
14764
+ modelProvider: external_exports.string().optional()
14765
+ });
14766
+ var c47 = initContract();
14767
+ var zeroLogPaginationQuerySchema = createLogPaginationQuerySchema({
14768
+ cursorKind: "sequence"
14769
+ });
14770
+ var zeroNetworkLogPaginationQuerySchema = createLogPaginationQuerySchema({
14771
+ cursorKind: "time",
14772
+ maxLimit: 500,
14773
+ defaultLimit: 500,
14774
+ defaultOrder: "asc"
14775
+ });
14776
+ var zeroTelemetryTimePaginationQuerySchema = createLogPaginationQuerySchema({
14777
+ cursorKind: "time"
14778
+ });
14779
+ var zeroRunsByIdContract = c47.router({
14780
+ getById: {
14781
+ method: "GET",
14782
+ path: "/api/zero/runs/:id",
14783
+ headers: authHeadersSchema,
14784
+ pathParams: external_exports.object({
14785
+ id: external_exports.uuid("Run ID must be a valid UUID")
14786
+ }),
14787
+ responses: {
14788
+ 200: getRunResponseSchema,
14789
+ 400: apiErrorSchema,
14790
+ 401: apiErrorSchema,
14791
+ 403: apiErrorSchema,
14792
+ 404: apiErrorSchema
14793
+ },
14794
+ summary: "Get agent run by ID (zero proxy)"
14795
+ }
14796
+ });
14797
+ var zeroRunsCancelContract = c47.router({
14798
+ cancel: {
14799
+ method: "POST",
14800
+ path: "/api/zero/runs/:id/cancel",
14801
+ headers: authHeadersSchema,
14802
+ pathParams: external_exports.object({
14803
+ id: external_exports.uuid("Run ID must be a valid UUID")
14804
+ }),
14805
+ body: external_exports.undefined(),
14806
+ responses: {
14807
+ 200: cancelRunResponseSchema,
14808
+ 400: apiErrorSchema,
14809
+ 401: apiErrorSchema,
14810
+ 403: apiErrorSchema,
14811
+ 404: apiErrorSchema
14812
+ },
14813
+ summary: "Cancel a pending or running run (zero proxy)"
14814
+ }
14815
+ });
14816
+ var zeroRunsQueueContract = c47.router({
14817
+ getQueue: {
14818
+ method: "GET",
14819
+ path: "/api/zero/runs/queue",
14820
+ headers: authHeadersSchema,
14821
+ responses: {
14822
+ 200: queueResponseSchema,
14823
+ 401: apiErrorSchema,
14824
+ 403: apiErrorSchema
14825
+ },
14826
+ summary: "Get org run queue status (zero proxy)"
14827
+ }
14828
+ });
14829
+ var zeroRunAgentEventsContract = c47.router({
14830
+ getAgentEvents: {
14831
+ method: "GET",
14832
+ path: "/api/zero/runs/:id/telemetry/agent",
14833
+ headers: authHeadersSchema,
14834
+ pathParams: external_exports.object({
14835
+ id: external_exports.uuid("Run ID must be a valid UUID")
14836
+ }),
14837
+ query: zeroLogPaginationQuerySchema,
14838
+ responses: {
14839
+ 200: agentEventsResponseSchema,
14840
+ 400: apiErrorSchema,
14841
+ 401: apiErrorSchema,
14842
+ 403: apiErrorSchema,
14843
+ 404: apiErrorSchema
14844
+ },
14845
+ summary: "Get agent events with pagination (zero proxy)"
14846
+ }
14847
+ });
14848
+ var zeroRunSystemLogContract = c47.router({
14849
+ getSystemLog: {
14850
+ method: "GET",
14851
+ path: "/api/zero/runs/:id/telemetry/system-log",
14852
+ headers: authHeadersSchema,
14853
+ pathParams: external_exports.object({
14854
+ id: external_exports.uuid("Run ID must be a valid UUID")
14855
+ }),
14856
+ query: zeroTelemetryTimePaginationQuerySchema,
14857
+ responses: {
14858
+ 200: systemLogResponseSchema,
14859
+ 400: apiErrorSchema,
14860
+ 401: apiErrorSchema,
14861
+ 403: apiErrorSchema,
14862
+ 404: apiErrorSchema
14863
+ },
14864
+ summary: "Get system log with pagination"
14865
+ }
14866
+ });
14867
+ var zeroRunMetricsContract = c47.router({
14868
+ getMetrics: {
14869
+ method: "GET",
14870
+ path: "/api/zero/runs/:id/telemetry/metrics",
14871
+ headers: authHeadersSchema,
14872
+ pathParams: external_exports.object({
14873
+ id: external_exports.uuid("Run ID must be a valid UUID")
14874
+ }),
14875
+ query: zeroTelemetryTimePaginationQuerySchema,
14876
+ responses: {
14877
+ 200: metricsResponseSchema,
14878
+ 400: apiErrorSchema,
14879
+ 401: apiErrorSchema,
14880
+ 403: apiErrorSchema,
14881
+ 404: apiErrorSchema
14882
+ },
14883
+ summary: "Get metrics with pagination"
14884
+ }
14885
+ });
14886
+ var runContextVolumeSchema = external_exports.object({
14887
+ name: external_exports.string(),
14888
+ mountPath: external_exports.string(),
14889
+ vasStorageName: external_exports.string(),
14890
+ vasVersionId: external_exports.string()
14891
+ });
14892
+ var runContextArtifactSchema = external_exports.object({
14893
+ mountPath: external_exports.string(),
14894
+ vasStorageName: external_exports.string(),
14895
+ vasVersionId: external_exports.string()
14896
+ });
14897
+ var runContextSanitizedFirewallSchema = external_exports.object({
14898
+ name: external_exports.string(),
14899
+ apis: external_exports.array(
14900
+ external_exports.object({
14901
+ base: external_exports.string(),
14902
+ permissions: external_exports.array(
14903
+ external_exports.object({
14904
+ name: external_exports.string(),
14905
+ description: external_exports.string().optional(),
14906
+ rules: external_exports.array(external_exports.string())
14907
+ })
14908
+ ).optional()
14909
+ })
14910
+ )
14911
+ });
14912
+ var runContextFirewallSchema = external_exports.union([
14913
+ executionFirewallBuiltinEntrySchema,
14914
+ runContextSanitizedFirewallSchema
14915
+ ]);
14916
+ var runContextResponseSchema = external_exports.object({
14917
+ prompt: external_exports.string(),
14918
+ appendSystemPrompt: external_exports.string().nullable(),
14919
+ runId: external_exports.string(),
14920
+ sessionId: external_exports.string().nullable(),
14921
+ cliAgentType: external_exports.string().optional(),
14922
+ secretNames: external_exports.array(external_exports.string()),
14923
+ vars: external_exports.record(external_exports.string(), external_exports.string()).nullable(),
14924
+ environment: external_exports.record(external_exports.string(), external_exports.string()),
14925
+ firewalls: external_exports.array(runContextFirewallSchema),
14926
+ networkPolicies: networkPoliciesSchema.nullable(),
14927
+ volumes: external_exports.array(runContextVolumeSchema),
14928
+ artifact: runContextArtifactSchema.nullable(),
14929
+ featureFlags: external_exports.record(external_exports.string(), external_exports.boolean()).nullable()
14930
+ });
14931
+ var zeroRunContextContract = c47.router({
14932
+ getContext: {
14933
+ method: "GET",
14934
+ path: "/api/zero/runs/:id/context",
14935
+ headers: authHeadersSchema,
14936
+ pathParams: external_exports.object({
14937
+ id: external_exports.uuid("Run ID must be a valid UUID")
14938
+ }),
14939
+ responses: {
14940
+ 200: runContextResponseSchema,
14941
+ 400: apiErrorSchema,
14942
+ 401: apiErrorSchema,
14943
+ 403: apiErrorSchema,
14944
+ 404: apiErrorSchema
14945
+ },
14946
+ summary: "Get run execution context snapshot for debugging"
14947
+ }
14948
+ });
14949
+ var zeroRunNetworkLogsContract = c47.router({
14950
+ getNetworkLogs: {
14951
+ method: "GET",
14952
+ path: "/api/zero/runs/:id/network",
14953
+ headers: authHeadersSchema,
14954
+ pathParams: external_exports.object({
14955
+ id: external_exports.uuid("Run ID must be a valid UUID")
14956
+ }),
14957
+ query: zeroNetworkLogPaginationQuerySchema,
14958
+ responses: {
14959
+ 200: networkLogsResponseSchema,
14960
+ 400: apiErrorSchema,
14961
+ 401: apiErrorSchema,
14962
+ 403: apiErrorSchema,
14963
+ 404: apiErrorSchema
14964
+ },
14965
+ summary: "Get network logs for a run"
14966
+ }
14967
+ });
14968
+ var runRunnerResponseSchema = external_exports.object({
14969
+ sandboxReuseResult: sandboxReuseResultSchema.nullable()
14970
+ });
14971
+ var zeroRunRunnerContract = c47.router({
14972
+ getRunner: {
14973
+ method: "GET",
14974
+ path: "/api/zero/runs/:id/runner",
14975
+ headers: authHeadersSchema,
14976
+ pathParams: external_exports.object({
14977
+ id: external_exports.uuid("Run ID must be a valid UUID")
14978
+ }),
14979
+ responses: {
14980
+ 200: runRunnerResponseSchema,
14981
+ 400: apiErrorSchema,
14982
+ 401: apiErrorSchema,
14983
+ 403: apiErrorSchema,
14984
+ 404: apiErrorSchema
14985
+ },
14986
+ summary: "Get runner-level metadata for a run"
14987
+ }
14988
+ });
14989
+ var zeroLogsSearchContract = c47.router({
14990
+ searchLogs: {
14991
+ method: "GET",
14992
+ path: "/api/zero/logs/search",
14993
+ headers: authHeadersSchema,
14994
+ query: logsSearchQuerySchema,
14995
+ responses: {
14996
+ 200: logsSearchResponseSchema,
14997
+ 400: apiErrorSchema,
14998
+ 401: apiErrorSchema,
14999
+ 403: apiErrorSchema
15000
+ },
15001
+ summary: "Search agent events across runs (zero proxy)"
15002
+ }
15003
+ });
15004
+
13967
15005
  // ../../packages/api-contracts/src/contracts/zero-model-providers.ts
13968
15006
  init_esm_shims();
13969
- var c46 = initContract();
15007
+ var c48 = initContract();
13970
15008
  var orgUpsertModelProviderRequestSchema = upsertModelProviderRequestSchema.omit({ selectedModel: true });
13971
- var zeroModelProvidersMainContract = c46.router({
15009
+ var zeroModelProvidersMainContract = c48.router({
13972
15010
  list: {
13973
15011
  method: "GET",
13974
15012
  path: "/api/zero/model-providers",
@@ -13997,7 +15035,7 @@ var zeroModelProvidersMainContract = c46.router({
13997
15035
  summary: "Create or update an org-level model provider (admin only)"
13998
15036
  }
13999
15037
  });
14000
- var zeroModelProvidersByTypeContract = c46.router({
15038
+ var zeroModelProvidersByTypeContract = c48.router({
14001
15039
  delete: {
14002
15040
  method: "DELETE",
14003
15041
  path: "/api/zero/model-providers/:type",
@@ -14006,7 +15044,7 @@ var zeroModelProvidersByTypeContract = c46.router({
14006
15044
  type: modelProviderTypeSchema
14007
15045
  }),
14008
15046
  responses: {
14009
- 204: c46.noBody(),
15047
+ 204: c48.noBody(),
14010
15048
  401: apiErrorSchema,
14011
15049
  403: apiErrorSchema,
14012
15050
  404: apiErrorSchema,
@@ -14018,14 +15056,14 @@ var zeroModelProvidersByTypeContract = c46.router({
14018
15056
 
14019
15057
  // ../../packages/api-contracts/src/contracts/zero-personal-model-providers.ts
14020
15058
  init_esm_shims();
14021
- var c47 = initContract();
15059
+ var c49 = initContract();
14022
15060
  var resetPersonalModelProviderSubscriptionUsageRequestSchema = external_exports.object({
14023
15061
  idempotencyKey: external_exports.uuid()
14024
15062
  });
14025
15063
  var resetPersonalModelProviderSubscriptionUsageResponseSchema = external_exports.object({
14026
15064
  outcome: external_exports.enum(["reset", "nothingToReset", "noCredit", "alreadyRedeemed"])
14027
15065
  });
14028
- var zeroPersonalModelProvidersMainContract = c47.router({
15066
+ var zeroPersonalModelProvidersMainContract = c49.router({
14029
15067
  list: {
14030
15068
  method: "GET",
14031
15069
  path: "/api/zero/me/model-providers",
@@ -14054,7 +15092,7 @@ var zeroPersonalModelProvidersMainContract = c47.router({
14054
15092
  summary: "Create or update a personal model provider for the requesting user"
14055
15093
  }
14056
15094
  });
14057
- var zeroPersonalModelProvidersByTypeContract = c47.router({
15095
+ var zeroPersonalModelProvidersByTypeContract = c49.router({
14058
15096
  delete: {
14059
15097
  method: "DELETE",
14060
15098
  path: "/api/zero/me/model-providers/:type",
@@ -14063,7 +15101,7 @@ var zeroPersonalModelProvidersByTypeContract = c47.router({
14063
15101
  type: modelProviderTypeSchema
14064
15102
  }),
14065
15103
  responses: {
14066
- 204: c47.noBody(),
15104
+ 204: c49.noBody(),
14067
15105
  401: apiErrorSchema,
14068
15106
  404: apiErrorSchema,
14069
15107
  500: apiErrorSchema
@@ -14091,7 +15129,7 @@ var zeroPersonalModelProvidersByTypeContract = c47.router({
14091
15129
 
14092
15130
  // ../../packages/api-contracts/src/contracts/integrations-github.ts
14093
15131
  init_esm_shims();
14094
- var c48 = initContract();
15132
+ var c50 = initContract();
14095
15133
  var githubInstallationResponseSchema = external_exports.object({
14096
15134
  installation: external_exports.object({
14097
15135
  id: external_exports.string(),
@@ -14122,7 +15160,7 @@ var githubConnectSignatureSchema = external_exports.object({
14122
15160
  var githubConnectUserBodySchema = external_exports.object({
14123
15161
  connectSignature: githubConnectSignatureSchema.optional()
14124
15162
  }).optional();
14125
- var integrationsGithubContract = c48.router({
15163
+ var integrationsGithubContract = c50.router({
14126
15164
  getInstallation: {
14127
15165
  method: "GET",
14128
15166
  path: "/api/integrations/github",
@@ -14156,7 +15194,7 @@ var integrationsGithubContract = c48.router({
14156
15194
 
14157
15195
  // ../../packages/api-contracts/src/contracts/github-oauth.ts
14158
15196
  init_esm_shims();
14159
- var c49 = initContract();
15197
+ var c51 = initContract();
14160
15198
  var jsonErrorSchema = external_exports.object({ error: external_exports.string() });
14161
15199
  var githubOauthInstallQuerySchema = external_exports.object({
14162
15200
  vm0UserId: external_exports.string().optional(),
@@ -14186,13 +15224,13 @@ var githubAppSetupCallbackQuerySchema = external_exports.object({
14186
15224
  target_id: external_exports.string().optional(),
14187
15225
  target_type: external_exports.string().optional()
14188
15226
  });
14189
- var githubOauthContract = c49.router({
15227
+ var githubOauthContract = c51.router({
14190
15228
  install: {
14191
15229
  method: "GET",
14192
15230
  path: "/api/github/oauth/install",
14193
15231
  query: githubOauthInstallQuerySchema,
14194
15232
  responses: {
14195
- 307: c49.noBody(),
15233
+ 307: c51.noBody(),
14196
15234
  503: jsonErrorSchema
14197
15235
  },
14198
15236
  summary: "Start GitHub App OAuth install"
@@ -14202,7 +15240,7 @@ var githubOauthContract = c49.router({
14202
15240
  path: "/api/zero/github/oauth/connect",
14203
15241
  query: githubOauthConnectQuerySchema,
14204
15242
  responses: {
14205
- 307: c49.noBody(),
15243
+ 307: c51.noBody(),
14206
15244
  401: apiErrorSchema,
14207
15245
  503: jsonErrorSchema
14208
15246
  },
@@ -14213,7 +15251,7 @@ var githubOauthContract = c49.router({
14213
15251
  path: "/api/zero/github/oauth/connect/callback",
14214
15252
  query: githubOauthConnectCallbackQuerySchema,
14215
15253
  responses: {
14216
- 307: c49.noBody()
15254
+ 307: c51.noBody()
14217
15255
  },
14218
15256
  summary: "Handle GitHub user OAuth for the GitHub App"
14219
15257
  },
@@ -14222,7 +15260,7 @@ var githubOauthContract = c49.router({
14222
15260
  path: "/api/github/app/setup/callback",
14223
15261
  query: githubAppSetupCallbackQuerySchema,
14224
15262
  responses: {
14225
- 307: c49.noBody()
15263
+ 307: c51.noBody()
14226
15264
  },
14227
15265
  summary: "Handle GitHub App setup callback"
14228
15266
  }
@@ -14233,7 +15271,7 @@ init_esm_shims();
14233
15271
 
14234
15272
  // ../../packages/api-contracts/src/contracts/zero-usage-record.ts
14235
15273
  init_esm_shims();
14236
- var c50 = initContract();
15274
+ var c52 = initContract();
14237
15275
  var usageRecordSourceSchema = external_exports.enum([
14238
15276
  "chat",
14239
15277
  "automation",
@@ -14310,7 +15348,7 @@ var usageRecordResponseSchema = external_exports.object({
14310
15348
  total: external_exports.number()
14311
15349
  })
14312
15350
  });
14313
- var zeroUsageRecordContract = c50.router({
15351
+ var zeroUsageRecordContract = c52.router({
14314
15352
  get: {
14315
15353
  method: "GET",
14316
15354
  path: "/api/zero/usage/record",
@@ -14335,7 +15373,7 @@ var zeroUsageRecordContract = c50.router({
14335
15373
  });
14336
15374
 
14337
15375
  // ../../packages/api-contracts/src/contracts/zero-usage.ts
14338
- var c51 = initContract();
15376
+ var c53 = initContract();
14339
15377
  var memberUsageSchema = external_exports.object({
14340
15378
  userId: external_exports.string(),
14341
15379
  email: external_exports.string(),
@@ -14352,7 +15390,7 @@ var usageMembersResponseSchema = external_exports.object({
14352
15390
  }).nullable(),
14353
15391
  members: external_exports.array(memberUsageSchema)
14354
15392
  });
14355
- var zeroUsageMembersContract = c51.router({
15393
+ var zeroUsageMembersContract = c53.router({
14356
15394
  get: {
14357
15395
  method: "GET",
14358
15396
  path: "/api/zero/usage/members",
@@ -14374,7 +15412,7 @@ var zeroUsageMembersContract = c51.router({
14374
15412
 
14375
15413
  // ../../packages/api-contracts/src/contracts/zero-usage-daily.ts
14376
15414
  init_esm_shims();
14377
- var c52 = initContract();
15415
+ var c54 = initContract();
14378
15416
  var usageRunSchema = external_exports.object({
14379
15417
  runId: external_exports.string(),
14380
15418
  agentName: external_exports.string().nullable(),
@@ -14401,7 +15439,7 @@ var usageRunsResponseSchema = external_exports.object({
14401
15439
  total: external_exports.number()
14402
15440
  })
14403
15441
  });
14404
- var zeroUsageRunsContract = c52.router({
15442
+ var zeroUsageRunsContract = c54.router({
14405
15443
  get: {
14406
15444
  method: "GET",
14407
15445
  path: "/api/zero/usage/runs",
@@ -14429,7 +15467,7 @@ var zeroUsageRunsContract = c52.router({
14429
15467
 
14430
15468
  // ../../packages/api-contracts/src/contracts/zero-usage-insight.ts
14431
15469
  init_esm_shims();
14432
- var c53 = initContract();
15470
+ var c55 = initContract();
14433
15471
  var usageInsightBucketSchema = external_exports.object({
14434
15472
  ts: external_exports.string(),
14435
15473
  // ISO string for the bucket start
@@ -14466,7 +15504,7 @@ var usageInsightResponseSchema = external_exports.object({
14466
15504
  grandTotalCredits: external_exports.number(),
14467
15505
  grandTotalTokens: external_exports.number()
14468
15506
  });
14469
- var zeroUsageInsightContract = c53.router({
15507
+ var zeroUsageInsightContract = c55.router({
14470
15508
  get: {
14471
15509
  method: "GET",
14472
15510
  path: "/api/zero/usage/insight",
@@ -14489,7 +15527,7 @@ var zeroUsageInsightContract = c53.router({
14489
15527
 
14490
15528
  // ../../packages/api-contracts/src/contracts/usage.ts
14491
15529
  init_esm_shims();
14492
- var c54 = initContract();
15530
+ var c56 = initContract();
14493
15531
  var dailyUsageSchema = external_exports.object({
14494
15532
  date: external_exports.string(),
14495
15533
  run_count: external_exports.number(),
@@ -14506,7 +15544,7 @@ var usageResponseSchema = external_exports.object({
14506
15544
  }),
14507
15545
  daily: external_exports.array(dailyUsageSchema)
14508
15546
  });
14509
- var usageContract = c54.router({
15547
+ var usageContract = c56.router({
14510
15548
  get: {
14511
15549
  method: "GET",
14512
15550
  path: "/api/usage",
@@ -14527,7 +15565,7 @@ var usageContract = c54.router({
14527
15565
 
14528
15566
  // ../../packages/api-contracts/src/contracts/zero-team.ts
14529
15567
  init_esm_shims();
14530
- var c55 = initContract();
15568
+ var c57 = initContract();
14531
15569
  var teamComposeItemSchema = external_exports.object({
14532
15570
  id: external_exports.string(),
14533
15571
  ownerId: external_exports.string().optional(),
@@ -14539,7 +15577,7 @@ var teamComposeItemSchema = external_exports.object({
14539
15577
  headVersionId: external_exports.string().nullable(),
14540
15578
  updatedAt: external_exports.string()
14541
15579
  });
14542
- var zeroTeamContract = c55.router({
15580
+ var zeroTeamContract = c57.router({
14543
15581
  list: {
14544
15582
  method: "GET",
14545
15583
  path: "/api/zero/team",
@@ -14556,7 +15594,7 @@ var zeroTeamContract = c55.router({
14556
15594
 
14557
15595
  // ../../packages/api-contracts/src/contracts/zero-integrations-slack.ts
14558
15596
  init_esm_shims();
14559
- var c56 = initContract();
15597
+ var c58 = initContract();
14560
15598
  var slackEnvironmentSchema = external_exports.object({
14561
15599
  requiredSecrets: external_exports.array(external_exports.string()),
14562
15600
  requiredVars: external_exports.array(external_exports.string()),
@@ -14577,7 +15615,7 @@ var slackOrgStatusSchema = external_exports.object({
14577
15615
  /** OAuth install URL for re-authorization (admin-only, when scopeMismatch). */
14578
15616
  reinstallUrl: external_exports.string().nullable().optional()
14579
15617
  });
14580
- var zeroIntegrationsSlackContract = c56.router({
15618
+ var zeroIntegrationsSlackContract = c58.router({
14581
15619
  getStatus: {
14582
15620
  method: "GET",
14583
15621
  path: "/api/zero/integrations/slack",
@@ -14592,7 +15630,7 @@ var zeroIntegrationsSlackContract = c56.router({
14592
15630
  method: "DELETE",
14593
15631
  path: "/api/zero/integrations/slack",
14594
15632
  headers: authHeadersSchema,
14595
- body: c56.noBody(),
15633
+ body: c58.noBody(),
14596
15634
  query: external_exports.object({
14597
15635
  action: external_exports.string().optional()
14598
15636
  }),
@@ -14608,7 +15646,7 @@ var zeroIntegrationsSlackContract = c56.router({
14608
15646
 
14609
15647
  // ../../packages/api-contracts/src/contracts/zero-slack-connect.ts
14610
15648
  init_esm_shims();
14611
- var c57 = initContract();
15649
+ var c59 = initContract();
14612
15650
  var slackConnectStatusSchema = external_exports.object({
14613
15651
  isConnected: external_exports.boolean(),
14614
15652
  isAdmin: external_exports.boolean(),
@@ -14620,7 +15658,7 @@ var slackConnectResponseSchema = external_exports.object({
14620
15658
  connectionId: external_exports.string(),
14621
15659
  role: external_exports.string()
14622
15660
  });
14623
- var zeroSlackConnectContract = c57.router({
15661
+ var zeroSlackConnectContract = c59.router({
14624
15662
  getStatus: {
14625
15663
  method: "GET",
14626
15664
  path: "/api/zero/integrations/slack/connect",
@@ -14654,12 +15692,12 @@ var zeroSlackConnectContract = c57.router({
14654
15692
 
14655
15693
  // ../../packages/api-contracts/src/contracts/zero-slack-commands.ts
14656
15694
  init_esm_shims();
14657
- var c58 = initContract();
14658
- var zeroSlackCommandsContract = c58.router({
15695
+ var c60 = initContract();
15696
+ var zeroSlackCommandsContract = c60.router({
14659
15697
  post: {
14660
15698
  method: "POST",
14661
15699
  path: "/api/zero/slack/commands",
14662
- body: c58.type(),
15700
+ body: c60.type(),
14663
15701
  responses: {
14664
15702
  200: external_exports.unknown(),
14665
15703
  400: external_exports.object({ error: external_exports.string() }),
@@ -14672,12 +15710,12 @@ var zeroSlackCommandsContract = c58.router({
14672
15710
 
14673
15711
  // ../../packages/api-contracts/src/contracts/zero-slack-events.ts
14674
15712
  init_esm_shims();
14675
- var c59 = initContract();
14676
- var zeroSlackEventsContract = c59.router({
15713
+ var c61 = initContract();
15714
+ var zeroSlackEventsContract = c61.router({
14677
15715
  post: {
14678
15716
  method: "POST",
14679
15717
  path: "/api/zero/slack/events",
14680
- body: c59.type(),
15718
+ body: c61.type(),
14681
15719
  responses: {
14682
15720
  200: external_exports.unknown(),
14683
15721
  400: external_exports.object({ error: external_exports.string() }),
@@ -14690,7 +15728,7 @@ var zeroSlackEventsContract = c59.router({
14690
15728
 
14691
15729
  // ../../packages/api-contracts/src/contracts/zero-teams-bot.ts
14692
15730
  init_esm_shims();
14693
- var c60 = initContract();
15731
+ var c62 = initContract();
14694
15732
  var teamsActorSchema = external_exports.object({
14695
15733
  id: external_exports.string(),
14696
15734
  name: external_exports.string().nullable(),
@@ -14792,7 +15830,7 @@ var teamsBotIngressResponseSchema = external_exports.object({
14792
15830
  connectUrl: external_exports.string().nullable().optional(),
14793
15831
  dispatch: teamsBotDispatchResponseSchema.optional()
14794
15832
  });
14795
- var zeroTeamsBotContract = c60.router({
15833
+ var zeroTeamsBotContract = c62.router({
14796
15834
  post: {
14797
15835
  method: "POST",
14798
15836
  path: "/api/zero/teams/bot",
@@ -14810,7 +15848,7 @@ var zeroTeamsBotContract = c60.router({
14810
15848
 
14811
15849
  // ../../packages/api-contracts/src/contracts/zero-teams-connect.ts
14812
15850
  init_esm_shims();
14813
- var c61 = initContract();
15851
+ var c63 = initContract();
14814
15852
  var nullableStringSchema = external_exports.string().nullable();
14815
15853
  var teamsEnvironmentSchema = external_exports.object({
14816
15854
  requiredSecrets: external_exports.array(external_exports.string()),
@@ -14865,7 +15903,7 @@ var teamsConnectResponseSchema = external_exports.object({
14865
15903
  var teamsDisconnectResponseSchema = external_exports.object({
14866
15904
  success: external_exports.literal(true)
14867
15905
  });
14868
- var zeroTeamsConnectContract = c61.router({
15906
+ var zeroTeamsConnectContract = c63.router({
14869
15907
  getStatus: {
14870
15908
  method: "GET",
14871
15909
  path: "/api/zero/integrations/teams/connect",
@@ -14909,7 +15947,7 @@ var zeroTeamsConnectContract = c61.router({
14909
15947
 
14910
15948
  // ../../packages/api-contracts/src/contracts/zero-teams-browser-connect.ts
14911
15949
  init_esm_shims();
14912
- var c62 = initContract();
15950
+ var c64 = initContract();
14913
15951
  var zeroTeamsBrowserConnectQuerySchema = external_exports.object({
14914
15952
  tenantId: external_exports.string().optional(),
14915
15953
  tenantName: external_exports.string().optional(),
@@ -14929,13 +15967,13 @@ var zeroTeamsBrowserConnectQuerySchema = external_exports.object({
14929
15967
  threadId: external_exports.string().optional(),
14930
15968
  orgId: external_exports.string().optional()
14931
15969
  });
14932
- var zeroTeamsBrowserConnectContract = c62.router({
15970
+ var zeroTeamsBrowserConnectContract = c64.router({
14933
15971
  connect: {
14934
15972
  method: "GET",
14935
15973
  path: "/api/zero/teams/connect",
14936
15974
  query: zeroTeamsBrowserConnectQuerySchema,
14937
15975
  responses: {
14938
- 307: c62.noBody(),
15976
+ 307: c64.noBody(),
14939
15977
  500: external_exports.object({ error: external_exports.string() })
14940
15978
  },
14941
15979
  summary: "Browser Microsoft Teams connect flow"
@@ -14944,7 +15982,7 @@ var zeroTeamsBrowserConnectContract = c62.router({
14944
15982
 
14945
15983
  // ../../packages/api-contracts/src/contracts/zero-teams-oauth.ts
14946
15984
  init_esm_shims();
14947
- var c63 = initContract();
15985
+ var c65 = initContract();
14948
15986
  var jsonErrorSchema2 = external_exports.object({ error: external_exports.string() });
14949
15987
  var zeroTeamsOauthConnectQuerySchema = external_exports.object({
14950
15988
  orgId: external_exports.string().optional(),
@@ -14957,13 +15995,13 @@ var zeroTeamsOauthCallbackQuerySchema = external_exports.object({
14957
15995
  error_description: external_exports.string().optional(),
14958
15996
  state: external_exports.string().optional()
14959
15997
  });
14960
- var zeroTeamsOauthContract = c63.router({
15998
+ var zeroTeamsOauthContract = c65.router({
14961
15999
  connect: {
14962
16000
  method: "GET",
14963
16001
  path: "/api/zero/teams/oauth/connect",
14964
16002
  query: zeroTeamsOauthConnectQuerySchema,
14965
16003
  responses: {
14966
- 307: c63.noBody(),
16004
+ 307: c65.noBody(),
14967
16005
  400: jsonErrorSchema2,
14968
16006
  503: jsonErrorSchema2
14969
16007
  },
@@ -14974,7 +16012,7 @@ var zeroTeamsOauthContract = c63.router({
14974
16012
  path: "/api/zero/teams/oauth/callback",
14975
16013
  query: zeroTeamsOauthCallbackQuerySchema,
14976
16014
  responses: {
14977
- 307: c63.noBody(),
16015
+ 307: c65.noBody(),
14978
16016
  400: jsonErrorSchema2,
14979
16017
  503: jsonErrorSchema2
14980
16018
  },
@@ -14984,12 +16022,12 @@ var zeroTeamsOauthContract = c63.router({
14984
16022
 
14985
16023
  // ../../packages/api-contracts/src/contracts/zero-slack-interactive.ts
14986
16024
  init_esm_shims();
14987
- var c64 = initContract();
14988
- var zeroSlackInteractiveContract = c64.router({
16025
+ var c66 = initContract();
16026
+ var zeroSlackInteractiveContract = c66.router({
14989
16027
  post: {
14990
16028
  method: "POST",
14991
16029
  path: "/api/zero/slack/interactive",
14992
- body: c64.type(),
16030
+ body: c66.type(),
14993
16031
  responses: {
14994
16032
  200: external_exports.unknown(),
14995
16033
  400: external_exports.object({ error: external_exports.string() }),
@@ -15002,7 +16040,7 @@ var zeroSlackInteractiveContract = c64.router({
15002
16040
 
15003
16041
  // ../../packages/api-contracts/src/contracts/zero-slack-oauth.ts
15004
16042
  init_esm_shims();
15005
- var c65 = initContract();
16043
+ var c67 = initContract();
15006
16044
  var jsonErrorSchema3 = external_exports.object({ error: external_exports.string() });
15007
16045
  var zeroSlackOauthInstallQuerySchema = external_exports.object({
15008
16046
  orgId: external_exports.string().optional(),
@@ -15020,13 +16058,13 @@ var zeroSlackOauthCallbackQuerySchema = external_exports.object({
15020
16058
  error: external_exports.string().optional(),
15021
16059
  state: external_exports.string().optional()
15022
16060
  });
15023
- var zeroSlackOauthContract = c65.router({
16061
+ var zeroSlackOauthContract = c67.router({
15024
16062
  install: {
15025
16063
  method: "GET",
15026
16064
  path: "/api/zero/slack/oauth/install",
15027
16065
  query: zeroSlackOauthInstallQuerySchema,
15028
16066
  responses: {
15029
- 307: c65.noBody(),
16067
+ 307: c67.noBody(),
15030
16068
  503: jsonErrorSchema3
15031
16069
  },
15032
16070
  summary: "Start Slack bot OAuth install"
@@ -15036,7 +16074,7 @@ var zeroSlackOauthContract = c65.router({
15036
16074
  path: "/api/zero/slack/oauth/connect",
15037
16075
  query: zeroSlackOauthConnectQuerySchema,
15038
16076
  responses: {
15039
- 307: c65.noBody(),
16077
+ 307: c67.noBody(),
15040
16078
  400: jsonErrorSchema3,
15041
16079
  404: jsonErrorSchema3,
15042
16080
  503: jsonErrorSchema3
@@ -15048,7 +16086,7 @@ var zeroSlackOauthContract = c65.router({
15048
16086
  path: "/api/zero/slack/oauth/callback",
15049
16087
  query: zeroSlackOauthCallbackQuerySchema,
15050
16088
  responses: {
15051
- 307: c65.noBody(),
16089
+ 307: c67.noBody(),
15052
16090
  400: jsonErrorSchema3,
15053
16091
  503: jsonErrorSchema3
15054
16092
  },
@@ -15058,12 +16096,12 @@ var zeroSlackOauthContract = c65.router({
15058
16096
 
15059
16097
  // ../../packages/api-contracts/src/contracts/zero-slack-channels.ts
15060
16098
  init_esm_shims();
15061
- var c66 = initContract();
16099
+ var c68 = initContract();
15062
16100
  var slackChannelSchema = external_exports.object({
15063
16101
  id: external_exports.string(),
15064
16102
  name: external_exports.string()
15065
16103
  });
15066
- var zeroSlackChannelsContract = c66.router({
16104
+ var zeroSlackChannelsContract = c68.router({
15067
16105
  list: {
15068
16106
  method: "GET",
15069
16107
  path: "/api/zero/slack/channels",
@@ -15079,12 +16117,12 @@ var zeroSlackChannelsContract = c66.router({
15079
16117
 
15080
16118
  // ../../packages/api-contracts/src/contracts/zero-queue-position.ts
15081
16119
  init_esm_shims();
15082
- var c67 = initContract();
16120
+ var c69 = initContract();
15083
16121
  var queuePositionResponseSchema = external_exports.object({
15084
16122
  position: external_exports.number(),
15085
16123
  total: external_exports.number()
15086
16124
  });
15087
- var zeroQueuePositionContract = c67.router({
16125
+ var zeroQueuePositionContract = c69.router({
15088
16126
  getPosition: {
15089
16127
  method: "GET",
15090
16128
  path: "/api/zero/queue-position",
@@ -15104,7 +16142,7 @@ var zeroQueuePositionContract = c67.router({
15104
16142
 
15105
16143
  // ../../packages/api-contracts/src/contracts/zero-report-error.ts
15106
16144
  init_esm_shims();
15107
- var c68 = initContract();
16145
+ var c70 = initContract();
15108
16146
  var reportErrorBodySchema = external_exports.object({
15109
16147
  runId: external_exports.uuid("Run ID must be a valid UUID"),
15110
16148
  title: external_exports.string().min(1, "Title is required"),
@@ -15113,7 +16151,7 @@ var reportErrorBodySchema = external_exports.object({
15113
16151
  var reportErrorResponseSchema = external_exports.object({
15114
16152
  reference: external_exports.string()
15115
16153
  });
15116
- var zeroReportErrorContract = c68.router({
16154
+ var zeroReportErrorContract = c70.router({
15117
16155
  submit: {
15118
16156
  method: "POST",
15119
16157
  path: "/api/zero/report-error",
@@ -15132,7 +16170,7 @@ var zeroReportErrorContract = c68.router({
15132
16170
 
15133
16171
  // ../../packages/api-contracts/src/contracts/zero-insights.ts
15134
16172
  init_esm_shims();
15135
- var c69 = initContract();
16173
+ var c71 = initContract();
15136
16174
  var insightAgentSchema = external_exports.object({
15137
16175
  agentName: external_exports.string(),
15138
16176
  agentId: external_exports.string().nullable(),
@@ -15192,7 +16230,7 @@ var insightsResponseSchema = external_exports.object({
15192
16230
  totalRuns: external_exports.number(),
15193
16231
  lastUpdated: external_exports.string().nullable()
15194
16232
  });
15195
- var zeroInsightsContract = c69.router({
16233
+ var zeroInsightsContract = c71.router({
15196
16234
  get: {
15197
16235
  method: "GET",
15198
16236
  path: "/api/zero/insights",
@@ -15210,8 +16248,8 @@ var zeroInsightsContract = c69.router({
15210
16248
 
15211
16249
  // ../../packages/api-contracts/src/contracts/push-subscriptions.ts
15212
16250
  init_esm_shims();
15213
- var c70 = initContract();
15214
- var pushSubscriptionsContract = c70.router({
16251
+ var c72 = initContract();
16252
+ var pushSubscriptionsContract = c72.router({
15215
16253
  register: {
15216
16254
  method: "POST",
15217
16255
  path: "/api/zero/push-subscriptions",
@@ -15235,7 +16273,7 @@ var pushSubscriptionsContract = c70.router({
15235
16273
 
15236
16274
  // ../../packages/api-contracts/src/contracts/zero-image-io-generate.ts
15237
16275
  init_esm_shims();
15238
- var c71 = initContract();
16276
+ var c73 = initContract();
15239
16277
  var stringOrStringArraySchema = external_exports.union([
15240
16278
  external_exports.string(),
15241
16279
  external_exports.array(external_exports.string()).readonly()
@@ -15290,7 +16328,7 @@ var zeroImageIoGenerateResponseSchema = external_exports.object({
15290
16328
  inputFidelity: external_exports.string().optional(),
15291
16329
  imagePromptStrength: external_exports.number().optional()
15292
16330
  });
15293
- var zeroImageIoGenerateContract = c71.router({
16331
+ var zeroImageIoGenerateContract = c73.router({
15294
16332
  post: {
15295
16333
  method: "POST",
15296
16334
  path: "/api/zero/image-io/generate",
@@ -15313,7 +16351,7 @@ var zeroImageIoGenerateContract = c71.router({
15313
16351
 
15314
16352
  // ../../packages/api-contracts/src/contracts/zero-image-io-interpret-marks.ts
15315
16353
  init_esm_shims();
15316
- var c72 = initContract();
16354
+ var c74 = initContract();
15317
16355
  var ZERO_IMAGE_INTERPRET_MARKS_MAX_REGIONS = 16;
15318
16356
  var ZERO_IMAGE_INTERPRET_MARKS_MAX_INSTRUCTION_LENGTH = 2e3;
15319
16357
  var zeroImageIoInterpretMarksRegionSchema = external_exports.object({
@@ -15340,7 +16378,7 @@ var zeroImageIoInterpretMarksResultSchema = external_exports.object({
15340
16378
  var zeroImageIoInterpretMarksResponseSchema = external_exports.object({
15341
16379
  regions: external_exports.array(zeroImageIoInterpretMarksResultSchema)
15342
16380
  });
15343
- var zeroImageIoInterpretMarksContract = c72.router({
16381
+ var zeroImageIoInterpretMarksContract = c74.router({
15344
16382
  post: {
15345
16383
  method: "POST",
15346
16384
  path: "/api/zero/image-io/interpret-marks",
@@ -15362,7 +16400,7 @@ var zeroImageIoInterpretMarksContract = c72.router({
15362
16400
 
15363
16401
  // ../../packages/api-contracts/src/contracts/zero-image-share-x.ts
15364
16402
  init_esm_shims();
15365
- var c73 = initContract();
16403
+ var c75 = initContract();
15366
16404
  var zeroImageShareXRequestSchema = external_exports.object({
15367
16405
  imageUrl: external_exports.string().min(1),
15368
16406
  caption: external_exports.string().max(280).optional()
@@ -15371,7 +16409,7 @@ var zeroImageShareXResponseSchema = external_exports.object({
15371
16409
  tweetId: external_exports.string(),
15372
16410
  tweetUrl: external_exports.string()
15373
16411
  });
15374
- var zeroImageShareXContract = c73.router({
16412
+ var zeroImageShareXContract = c75.router({
15375
16413
  post: {
15376
16414
  method: "POST",
15377
16415
  path: "/api/zero/image-share/x",
@@ -15392,7 +16430,7 @@ var zeroImageShareXContract = c73.router({
15392
16430
 
15393
16431
  // ../../packages/api-contracts/src/contracts/zero-banking.ts
15394
16432
  init_esm_shims();
15395
- var c74 = initContract();
16433
+ var c76 = initContract();
15396
16434
  var dateOnlySchema = external_exports.string().regex(/^\d{4}-\d{2}-\d{2}$/, "Date must be formatted as YYYY-MM-DD");
15397
16435
  var zeroBankingProviderSchema = external_exports.literal("finicity");
15398
16436
  var zeroBankingAccountSchema = external_exports.object({
@@ -15474,7 +16512,7 @@ var zeroBankingTransactionsResponses = {
15474
16512
  502: apiErrorSchema,
15475
16513
  503: apiErrorSchema
15476
16514
  };
15477
- var zeroBankingContract = c74.router({
16515
+ var zeroBankingContract = c76.router({
15478
16516
  accounts: {
15479
16517
  method: "POST",
15480
16518
  path: "/api/zero/banking/accounts",
@@ -15503,7 +16541,7 @@ var zeroBankingContract = c74.router({
15503
16541
 
15504
16542
  // ../../packages/api-contracts/src/contracts/zero-maps.ts
15505
16543
  init_esm_shims();
15506
- var c75 = initContract();
16544
+ var c77 = initContract();
15507
16545
  var travelModeSchema = external_exports.enum(["driving", "walking", "bicycling", "transit"]);
15508
16546
  var placeSearchFieldsetSchema = external_exports.enum(["pro", "enterprise"]);
15509
16547
  var placeDetailFieldsetSchema = external_exports.enum(["essentials", "pro", "enterprise"]);
@@ -15611,7 +16649,7 @@ var mapsResponses = {
15611
16649
  502: apiErrorSchema,
15612
16650
  503: apiErrorSchema
15613
16651
  };
15614
- var zeroMapsContract = c75.router({
16652
+ var zeroMapsContract = c77.router({
15615
16653
  geocode: {
15616
16654
  method: "POST",
15617
16655
  path: "/api/zero/maps/geocode",
@@ -15672,7 +16710,7 @@ var zeroMapsContract = c75.router({
15672
16710
 
15673
16711
  // ../../packages/api-contracts/src/contracts/zero-weather.ts
15674
16712
  init_esm_shims();
15675
- var c76 = initContract();
16713
+ var c78 = initContract();
15676
16714
  var ZERO_WEATHER_ATTRIBUTION = "Source: Includes weather data from Google";
15677
16715
  var ZERO_AIR_QUALITY_ATTRIBUTION = "Source: Includes air quality data from Google";
15678
16716
  var zeroWeatherConditionsOperationSchema = external_exports.enum([
@@ -15751,7 +16789,7 @@ var airQualityResponses = {
15751
16789
  502: apiErrorSchema,
15752
16790
  503: apiErrorSchema
15753
16791
  };
15754
- var zeroWeatherContract = c76.router({
16792
+ var zeroWeatherContract = c78.router({
15755
16793
  current: {
15756
16794
  method: "POST",
15757
16795
  path: "/api/zero/weather/current",
@@ -15796,7 +16834,7 @@ var zeroWeatherContract = c76.router({
15796
16834
 
15797
16835
  // ../../packages/api-contracts/src/contracts/zero-video-io-generate.ts
15798
16836
  init_esm_shims();
15799
- var c77 = initContract();
16837
+ var c79 = initContract();
15800
16838
  var stringOrStringArraySchema2 = external_exports.union([
15801
16839
  external_exports.string(),
15802
16840
  external_exports.array(external_exports.string()).readonly()
@@ -15837,7 +16875,7 @@ var zeroVideoIoGenerateResponseSchema = external_exports.object({
15837
16875
  sourceUrl: external_exports.string(),
15838
16876
  requestId: external_exports.string().optional()
15839
16877
  });
15840
- var zeroVideoIoGenerateContract = c77.router({
16878
+ var zeroVideoIoGenerateContract = c79.router({
15841
16879
  post: {
15842
16880
  method: "POST",
15843
16881
  path: "/api/zero/video-io/generate",
@@ -15861,13 +16899,13 @@ var zeroVideoIoGenerateContract = c77.router({
15861
16899
 
15862
16900
  // ../../packages/api-contracts/src/contracts/zero-voice-io-quota.ts
15863
16901
  init_esm_shims();
15864
- var c78 = initContract();
16902
+ var c80 = initContract();
15865
16903
  var audioInputQuotaResponseSchema = external_exports.object({
15866
16904
  allowed: external_exports.boolean(),
15867
16905
  count: external_exports.number().int().nonnegative(),
15868
16906
  limit: external_exports.number().int().nonnegative().nullable()
15869
16907
  });
15870
- var zeroVoiceIoQuotaContract = c78.router({
16908
+ var zeroVoiceIoQuotaContract = c80.router({
15871
16909
  get: {
15872
16910
  method: "GET",
15873
16911
  path: "/api/zero/voice-io/quota",
@@ -15883,7 +16921,7 @@ var zeroVoiceIoQuotaContract = c78.router({
15883
16921
 
15884
16922
  // ../../packages/api-contracts/src/contracts/zero-voice-io-speech.ts
15885
16923
  init_esm_shims();
15886
- var c79 = initContract();
16924
+ var c81 = initContract();
15887
16925
  var zeroVoiceIoSpeechRequestSchema = external_exports.object({
15888
16926
  text: external_exports.string().optional(),
15889
16927
  voice: external_exports.string().optional(),
@@ -15900,7 +16938,7 @@ var zeroVoiceIoSpeechResponseSchema = external_exports.object({
15900
16938
  model: external_exports.string(),
15901
16939
  voice: external_exports.string()
15902
16940
  });
15903
- var zeroVoiceIoSpeechContract = c79.router({
16941
+ var zeroVoiceIoSpeechContract = c81.router({
15904
16942
  post: {
15905
16943
  method: "POST",
15906
16944
  path: "/api/zero/voice-io/speech",
@@ -15922,7 +16960,7 @@ var zeroVoiceIoSpeechContract = c79.router({
15922
16960
 
15923
16961
  // ../../packages/api-contracts/src/contracts/zero-voice-io-stt.ts
15924
16962
  init_esm_shims();
15925
- var c80 = initContract();
16963
+ var c82 = initContract();
15926
16964
  var zeroVoiceIoSttSegmentSchema = external_exports.object({
15927
16965
  start: external_exports.number(),
15928
16966
  end: external_exports.number(),
@@ -15938,13 +16976,13 @@ var zeroVoiceIoSttQuotaErrorSchema = apiErrorSchema.extend({
15938
16976
  limit: external_exports.number().nullable()
15939
16977
  }).optional()
15940
16978
  });
15941
- var zeroVoiceIoSttContract = c80.router({
16979
+ var zeroVoiceIoSttContract = c82.router({
15942
16980
  post: {
15943
16981
  method: "POST",
15944
16982
  path: "/api/zero/voice-io/stt",
15945
16983
  headers: authHeadersSchema,
15946
16984
  contentType: "multipart/form-data",
15947
- body: c80.type(),
16985
+ body: c82.type(),
15948
16986
  query: external_exports.object({
15949
16987
  verbose: external_exports.coerce.boolean().optional().default(false)
15950
16988
  }),
@@ -15964,7 +17002,7 @@ var zeroVoiceIoSttContract = c80.router({
15964
17002
 
15965
17003
  // ../../packages/api-contracts/src/contracts/zero-uploads.ts
15966
17004
  init_esm_shims();
15967
- var c81 = initContract();
17005
+ var c83 = initContract();
15968
17006
  var prepareRequestSchema = external_exports.object({
15969
17007
  filename: external_exports.string().min(1).max(255),
15970
17008
  contentType: external_exports.string().min(1).max(200),
@@ -16040,7 +17078,7 @@ var completeResponseSchema = external_exports.object({
16040
17078
  size: external_exports.number(),
16041
17079
  url: external_exports.string().url()
16042
17080
  });
16043
- var zeroUploadsContract = c81.router({
17081
+ var zeroUploadsContract = c83.router({
16044
17082
  prepare: {
16045
17083
  method: "POST",
16046
17084
  path: "/api/zero/uploads/prepare",
@@ -16121,7 +17159,7 @@ var zeroUploadsContract = c81.router({
16121
17159
 
16122
17160
  // ../../packages/api-contracts/src/contracts/zero-integrations-telegram.ts
16123
17161
  init_esm_shims();
16124
- var c82 = initContract();
17162
+ var c84 = initContract();
16125
17163
  var telegramEnvironmentSchema = external_exports.object({
16126
17164
  requiredSecrets: external_exports.array(external_exports.string()),
16127
17165
  requiredVars: external_exports.array(external_exports.string()),
@@ -16220,7 +17258,7 @@ var telegramSetupStatusSchema = external_exports.object({
16220
17258
  var telegramWebhookPathParamsSchema = external_exports.object({
16221
17259
  telegramBotId: external_exports.string().min(1)
16222
17260
  });
16223
- var zeroIntegrationsTelegramContract = c82.router({
17261
+ var zeroIntegrationsTelegramContract = c84.router({
16224
17262
  list: {
16225
17263
  method: "GET",
16226
17264
  path: "/api/integrations/telegram",
@@ -16251,9 +17289,9 @@ var zeroIntegrationsTelegramContract = c82.router({
16251
17289
  path: "/api/integrations/telegram/:botId",
16252
17290
  headers: authHeadersSchema,
16253
17291
  pathParams: external_exports.object({ botId: external_exports.string().min(1) }),
16254
- body: c82.noBody(),
17292
+ body: c84.noBody(),
16255
17293
  responses: {
16256
- 204: c82.noBody(),
17294
+ 204: c84.noBody(),
16257
17295
  401: apiErrorSchema,
16258
17296
  403: apiErrorSchema,
16259
17297
  404: apiErrorSchema
@@ -16264,10 +17302,10 @@ var zeroIntegrationsTelegramContract = c82.router({
16264
17302
  method: "DELETE",
16265
17303
  path: "/api/integrations/telegram/link",
16266
17304
  headers: authHeadersSchema,
16267
- body: c82.noBody(),
17305
+ body: c84.noBody(),
16268
17306
  query: external_exports.object({ botId: external_exports.string().optional() }),
16269
17307
  responses: {
16270
- 204: c82.noBody(),
17308
+ 204: c84.noBody(),
16271
17309
  401: apiErrorSchema,
16272
17310
  404: apiErrorSchema
16273
17311
  },
@@ -16298,7 +17336,7 @@ var zeroIntegrationsTelegramContract = c82.router({
16298
17336
  sig: external_exports.string().optional()
16299
17337
  }),
16300
17338
  responses: {
16301
- 200: c82.otherResponse({
17339
+ 200: c84.otherResponse({
16302
17340
  contentType: "application/octet-stream",
16303
17341
  body: external_exports.unknown()
16304
17342
  }),
@@ -16313,7 +17351,7 @@ var zeroIntegrationsTelegramContract = c82.router({
16313
17351
  method: "GET",
16314
17352
  path: "/api/integrations/telegram/auth-callback",
16315
17353
  responses: {
16316
- 200: c82.otherResponse({
17354
+ 200: c84.otherResponse({
16317
17355
  contentType: "text/html",
16318
17356
  body: external_exports.unknown()
16319
17357
  })
@@ -16372,19 +17410,19 @@ var zeroIntegrationsTelegramContract = c82.router({
16372
17410
  pathParams: telegramWebhookPathParamsSchema,
16373
17411
  body: external_exports.unknown(),
16374
17412
  responses: {
16375
- 200: c82.otherResponse({
17413
+ 200: c84.otherResponse({
16376
17414
  contentType: "text/plain",
16377
17415
  body: external_exports.string()
16378
17416
  }),
16379
- 400: c82.otherResponse({
17417
+ 400: c84.otherResponse({
16380
17418
  contentType: "text/plain",
16381
17419
  body: external_exports.string()
16382
17420
  }),
16383
- 401: c82.otherResponse({
17421
+ 401: c84.otherResponse({
16384
17422
  contentType: "text/plain",
16385
17423
  body: external_exports.string()
16386
17424
  }),
16387
- 404: c82.otherResponse({
17425
+ 404: c84.otherResponse({
16388
17426
  contentType: "text/plain",
16389
17427
  body: external_exports.string()
16390
17428
  })
@@ -16395,7 +17433,7 @@ var zeroIntegrationsTelegramContract = c82.router({
16395
17433
 
16396
17434
  // ../../packages/api-contracts/src/contracts/zero-integrations-agentphone.ts
16397
17435
  init_esm_shims();
16398
- var c83 = initContract();
17436
+ var c85 = initContract();
16399
17437
  var agentPhoneConnectBodySchema = external_exports.object({
16400
17438
  phoneHandle: external_exports.string().min(1),
16401
17439
  agentphoneAgentId: external_exports.string().min(1),
@@ -16432,7 +17470,7 @@ var agentPhoneStartLinkResponseSchema = external_exports.object({
16432
17470
  phoneHandle: external_exports.string(),
16433
17471
  verificationSent: external_exports.literal(true)
16434
17472
  });
16435
- var zeroIntegrationsAgentPhoneContract = c83.router({
17473
+ var zeroIntegrationsAgentPhoneContract = c85.router({
16436
17474
  connectAgentPhone: {
16437
17475
  method: "POST",
16438
17476
  path: "/api/agentphone/connect",
@@ -16450,7 +17488,7 @@ var zeroIntegrationsAgentPhoneContract = c83.router({
16450
17488
  method: "POST",
16451
17489
  path: "/api/agentphone/webhook",
16452
17490
  headers: agentPhoneWebhookHeadersSchema,
16453
- body: c83.type(),
17491
+ body: c85.type(),
16454
17492
  responses: {
16455
17493
  200: external_exports.string(),
16456
17494
  400: external_exports.string(),
@@ -16488,9 +17526,9 @@ var zeroIntegrationsAgentPhoneContract = c83.router({
16488
17526
  method: "DELETE",
16489
17527
  path: "/api/integrations/agentphone/link",
16490
17528
  headers: authHeadersSchema,
16491
- body: c83.noBody(),
17529
+ body: c85.noBody(),
16492
17530
  responses: {
16493
- 204: c83.noBody(),
17531
+ 204: c85.noBody(),
16494
17532
  401: apiErrorSchema,
16495
17533
  404: apiErrorSchema
16496
17534
  },
@@ -18239,6 +19277,43 @@ function parseSearchQuery(value, label) {
18239
19277
 
18240
19278
  // src/commands/zero/logs/search.ts
18241
19279
  init_esm_shims();
19280
+
19281
+ // src/lib/api/domains/zero-logs.ts
19282
+ init_esm_shims();
19283
+ async function listZeroLogs(options) {
19284
+ const config = await getClientConfig();
19285
+ const client = initClient(logsListContract, config);
19286
+ const result = await client.list({
19287
+ query: {
19288
+ agentId: options?.agentId,
19289
+ status: options?.status,
19290
+ since: options?.since,
19291
+ limit: options?.limit,
19292
+ cursor: options?.cursor
19293
+ }
19294
+ });
19295
+ if (result.status === 200) return result.body;
19296
+ handleError(result, "Failed to list zero logs");
19297
+ }
19298
+ async function searchZeroLogs(options) {
19299
+ const config = await getClientConfig();
19300
+ const client = initClient(zeroLogsSearchContract, config);
19301
+ const result = await client.searchLogs({
19302
+ query: {
19303
+ keyword: options.keyword,
19304
+ agentId: options.agentId,
19305
+ runId: options.runId,
19306
+ since: options.since,
19307
+ limit: options.limit,
19308
+ before: options.before,
19309
+ after: options.after
19310
+ }
19311
+ });
19312
+ if (result.status === 200) return result.body;
19313
+ handleError(result, "Failed to search zero logs");
19314
+ }
19315
+
19316
+ // src/commands/zero/logs/search.ts
18242
19317
  var SEVEN_DAYS_MS = 7 * 24 * 60 * 60 * 1e3;
18243
19318
  function supportedSearchFramework(framework) {
18244
19319
  const normalized = framework ?? void 0;
@@ -18383,12 +19458,14 @@ Examples:
18383
19458
  );
18384
19459
 
18385
19460
  export {
19461
+ zeroRunAgentEventsContract,
18386
19462
  parseTime,
18387
19463
  isSupportedFramework,
18388
19464
  EventStreamNormalizer,
18389
19465
  EventRenderer,
19466
+ listZeroLogs,
18390
19467
  parseSearchQuery,
18391
19468
  runLogsSearch,
18392
19469
  searchCommand
18393
19470
  };
18394
- //# sourceMappingURL=chunk-A6TMOGPR.js.map
19471
+ //# sourceMappingURL=chunk-TQKKFLRI.js.map