@opengeni/contracts 5.5.0 → 5.5.2-canary.40656248492001

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 (543) hide show
  1. package/dist/agent-authored-durable-text.d.ts +9 -9
  2. package/dist/agent-config.d.ts +148 -37
  3. package/dist/api-key-presets.d.ts +19 -0
  4. package/dist/app-action-catalog-types.d.ts +32 -0
  5. package/dist/app-action-catalog.gen.d.ts +2 -0
  6. package/dist/app-actions.d.ts +91 -0
  7. package/dist/app-actions.js +10130 -0
  8. package/dist/app-actions.js.map +1 -0
  9. package/dist/app-shot.d.ts +55 -0
  10. package/dist/artifact-catalog.d.ts +33 -0
  11. package/dist/artifacts.d.ts +166 -0
  12. package/dist/atlassian-native-retirement.d.ts +16 -0
  13. package/dist/atlassian-native-retirement.js +30 -0
  14. package/dist/atlassian-native-retirement.js.map +1 -0
  15. package/dist/atlassian.js +48 -23
  16. package/dist/automation-templates.d.ts +434 -0
  17. package/dist/automation-templates.js +31 -0
  18. package/dist/automation-templates.js.map +1 -0
  19. package/dist/billing-subscriptions.d.ts +61 -0
  20. package/dist/bots.d.ts +583 -0
  21. package/dist/bundled-skills.d.ts +58 -2
  22. package/dist/canonical-human-identities.js +3 -1
  23. package/dist/child-lifecycle-notice-protocol.d.ts +45 -0
  24. package/dist/chunk-2QKIEAGY.js +396 -0
  25. package/dist/chunk-2QKIEAGY.js.map +1 -0
  26. package/dist/chunk-2WOWEWXV.js +426 -0
  27. package/dist/chunk-2WOWEWXV.js.map +1 -0
  28. package/dist/chunk-2ZIHHL72.js +153 -0
  29. package/dist/chunk-2ZIHHL72.js.map +1 -0
  30. package/dist/chunk-32U6NKQQ.js +389 -0
  31. package/dist/chunk-32U6NKQQ.js.map +1 -0
  32. package/dist/chunk-4YDDHSO2.js +799 -0
  33. package/dist/chunk-4YDDHSO2.js.map +1 -0
  34. package/dist/chunk-56SNIMDO.js +9 -0
  35. package/dist/chunk-56SNIMDO.js.map +1 -0
  36. package/dist/chunk-5RWB6QVL.js +101 -0
  37. package/dist/chunk-5RWB6QVL.js.map +1 -0
  38. package/dist/chunk-5UGUOT3L.js +243 -0
  39. package/dist/chunk-5UGUOT3L.js.map +1 -0
  40. package/dist/chunk-6LAT33BH.js +130 -0
  41. package/dist/chunk-6LAT33BH.js.map +1 -0
  42. package/dist/chunk-7272KVWZ.js +60 -0
  43. package/dist/chunk-7272KVWZ.js.map +1 -0
  44. package/dist/chunk-72QC2GTL.js +36 -0
  45. package/dist/chunk-72QC2GTL.js.map +1 -0
  46. package/dist/chunk-7EQGGZBY.js +105 -0
  47. package/dist/chunk-7EQGGZBY.js.map +1 -0
  48. package/dist/chunk-A3LXWVYU.js +382 -0
  49. package/dist/chunk-A3LXWVYU.js.map +1 -0
  50. package/dist/chunk-AQYDZUJV.js +34 -0
  51. package/dist/chunk-AQYDZUJV.js.map +1 -0
  52. package/dist/chunk-BHCEVVUP.js +93 -0
  53. package/dist/chunk-BHCEVVUP.js.map +1 -0
  54. package/dist/chunk-BMUTAZX5.js +486 -0
  55. package/dist/chunk-BMUTAZX5.js.map +1 -0
  56. package/dist/chunk-DGG6IBBK.js +150 -0
  57. package/dist/chunk-DGG6IBBK.js.map +1 -0
  58. package/dist/{chunk-YBW5JSA3.js → chunk-FBCTUMHI.js} +123 -102
  59. package/dist/chunk-FBCTUMHI.js.map +1 -0
  60. package/dist/chunk-G2KJTFIC.js +97 -0
  61. package/dist/chunk-G2KJTFIC.js.map +1 -0
  62. package/dist/chunk-G4RKARXZ.js +1167 -0
  63. package/dist/chunk-G4RKARXZ.js.map +1 -0
  64. package/dist/chunk-H6UJJIUM.js +350 -0
  65. package/dist/chunk-H6UJJIUM.js.map +1 -0
  66. package/dist/chunk-JOTHDW4H.js +18 -0
  67. package/dist/chunk-JOTHDW4H.js.map +1 -0
  68. package/dist/chunk-L4GUEP7K.js +56480 -0
  69. package/dist/chunk-L4GUEP7K.js.map +1 -0
  70. package/dist/{chunk-SIOU2K4U.js → chunk-LJH2EYGT.js} +23 -23
  71. package/dist/chunk-MTJKSIGA.js +161 -0
  72. package/dist/chunk-MTJKSIGA.js.map +1 -0
  73. package/dist/chunk-MYHMB6GZ.js +202 -0
  74. package/dist/chunk-MYHMB6GZ.js.map +1 -0
  75. package/dist/chunk-PI5VIKJY.js +660 -0
  76. package/dist/chunk-PI5VIKJY.js.map +1 -0
  77. package/dist/{chunk-RIY7GYQS.js → chunk-PTSROVDG.js} +2 -2
  78. package/dist/chunk-PUIUXIOL.js +189 -0
  79. package/dist/chunk-PUIUXIOL.js.map +1 -0
  80. package/dist/chunk-R6VXJIMB.js +19 -0
  81. package/dist/chunk-R6VXJIMB.js.map +1 -0
  82. package/dist/chunk-RLJUNVAM.js +15 -0
  83. package/dist/chunk-RLJUNVAM.js.map +1 -0
  84. package/dist/chunk-RR6APCBK.js +213 -0
  85. package/dist/chunk-RR6APCBK.js.map +1 -0
  86. package/dist/{chunk-TXTQIYCV.js → chunk-RUQ4I6DO.js} +59 -13
  87. package/dist/chunk-RUQ4I6DO.js.map +1 -0
  88. package/dist/{chunk-WYBDERIY.js → chunk-RWEEUDHD.js} +53 -42
  89. package/dist/chunk-RWEEUDHD.js.map +1 -0
  90. package/dist/chunk-S7MSQQL6.js +158 -0
  91. package/dist/chunk-S7MSQQL6.js.map +1 -0
  92. package/dist/{chunk-5Q54VCCH.js → chunk-SHO4YO4B.js} +20 -36
  93. package/dist/chunk-SHO4YO4B.js.map +1 -0
  94. package/dist/{chunk-HHZSZYYF.js → chunk-T3HSWMA5.js} +20 -4
  95. package/dist/chunk-T3HSWMA5.js.map +1 -0
  96. package/dist/{chunk-YRKRZ6OF.js → chunk-TOOJIBJC.js} +2 -2
  97. package/dist/chunk-UCUOTRS6.js +431 -0
  98. package/dist/chunk-UCUOTRS6.js.map +1 -0
  99. package/dist/chunk-UH4K7GP7.js +424 -0
  100. package/dist/chunk-UH4K7GP7.js.map +1 -0
  101. package/dist/chunk-UIZWGPHV.js +120 -0
  102. package/dist/chunk-UIZWGPHV.js.map +1 -0
  103. package/dist/chunk-VLUKBV6Y.js +1170 -0
  104. package/dist/chunk-VLUKBV6Y.js.map +1 -0
  105. package/dist/chunk-W2QQ5Y6K.js +55 -0
  106. package/dist/chunk-W2QQ5Y6K.js.map +1 -0
  107. package/dist/{chunk-Y3KNXVTD.js → chunk-W3NBPR4E.js} +131 -31
  108. package/dist/chunk-W3NBPR4E.js.map +1 -0
  109. package/dist/{chunk-NRMCVHAU.js → chunk-WMGO4HJU.js} +11 -9
  110. package/dist/chunk-WMGO4HJU.js.map +1 -0
  111. package/dist/{chunk-MYBZRDTY.js → chunk-WQI7VNN4.js} +19 -9
  112. package/dist/chunk-WQI7VNN4.js.map +1 -0
  113. package/dist/{chunk-PX3VCKAU.js → chunk-WVCFSOUZ.js} +1 -1
  114. package/dist/{chunk-PX3VCKAU.js.map → chunk-WVCFSOUZ.js.map} +1 -1
  115. package/dist/chunk-XB6GQLBH.js +76 -0
  116. package/dist/chunk-XB6GQLBH.js.map +1 -0
  117. package/dist/{chunk-D2HKF2EF.js → chunk-XP5M3IKT.js} +2 -2
  118. package/dist/{chunk-O77VSFYZ.js → chunk-ZMPU5BWE.js} +12 -2
  119. package/dist/chunk-ZMPU5BWE.js.map +1 -0
  120. package/dist/{chunk-3SIZGL3O.js → chunk-ZYVEJFNU.js} +22 -18
  121. package/dist/chunk-ZYVEJFNU.js.map +1 -0
  122. package/dist/claude-provider-account-authority.d.ts +18 -0
  123. package/dist/claude-subscription-oauth.d.ts +25 -0
  124. package/dist/claude-subscription-usage.d.ts +95 -1
  125. package/dist/client-error-report.d.ts +154 -8
  126. package/dist/client-error-report.js +157 -2
  127. package/dist/client-error-report.js.map +1 -1
  128. package/dist/code-search.d.ts +1 -1
  129. package/dist/code-search.js.map +1 -1
  130. package/dist/codex-provider-account-authority.js +23 -12
  131. package/dist/codex-provider-account-authority.js.map +1 -1
  132. package/dist/company-profile.d.ts +144 -0
  133. package/dist/connect.d.ts +38 -0
  134. package/dist/connect.js +244 -164
  135. package/dist/connect.js.map +1 -1
  136. package/dist/connection-account-label.d.ts +2 -0
  137. package/dist/connection-account-label.js +34 -0
  138. package/dist/connection-account-label.js.map +1 -0
  139. package/dist/connection-authority.js +49 -24
  140. package/dist/connector-attachments.js +3 -1
  141. package/dist/connector-destinations.js +3 -1
  142. package/dist/connector-tool-permissions.d.ts +68 -4
  143. package/dist/credential-profiles.d.ts +166 -0
  144. package/dist/cua-desktop-tools.d.ts +19 -0
  145. package/dist/define-schema.d.ts +8 -0
  146. package/dist/desktop-app.d.ts +28 -0
  147. package/dist/direct-model-provider.d.ts +38 -0
  148. package/dist/document-artifact-commands.js +2 -2
  149. package/dist/document-artifact-query.js +2 -2
  150. package/dist/editable-artifact-binary.d.ts +7 -0
  151. package/dist/editable-artifact-causal-frontier.js +2 -2
  152. package/dist/editable-artifact-codec-registry.js +7 -7
  153. package/dist/editable-artifact-committed-transaction.js +4 -2
  154. package/dist/editable-artifact-live.js +8 -8
  155. package/dist/editable-artifact-serialized-commit.js +9 -9
  156. package/dist/editable-artifact-versions.d.ts +7 -1
  157. package/dist/editable-artifact-versions.js +1 -1
  158. package/dist/editable-artifacts.js +49 -43
  159. package/dist/event-preview.d.ts +22 -0
  160. package/dist/event-triggers.d.ts +1253 -0
  161. package/dist/event-triggers.js +148 -0
  162. package/dist/event-triggers.js.map +1 -0
  163. package/dist/external-identities.d.ts +34 -0
  164. package/dist/external-identities.js +4 -2
  165. package/dist/feedback.d.ts +181 -0
  166. package/dist/file-access.d.ts +23 -0
  167. package/dist/first-party-tool-authorization.d.ts +852 -0
  168. package/dist/github-repository-contracts.js +64 -43
  169. package/dist/github-repository-contracts.js.map +1 -1
  170. package/dist/google-drive-native-retirement.d.ts +12 -0
  171. package/dist/google-drive-native-retirement.js +20 -0
  172. package/dist/google-drive-native-retirement.js.map +1 -0
  173. package/dist/google-drive.d.ts +1 -1
  174. package/dist/google-drive.js +323 -239
  175. package/dist/google-drive.js.map +1 -1
  176. package/dist/host-mcp-bindings.js +250 -198
  177. package/dist/host-mcp-bindings.js.map +1 -1
  178. package/dist/index.d.ts +29072 -20593
  179. package/dist/index.js +2432 -366
  180. package/dist/inference-residency.d.ts +22 -0
  181. package/dist/insights-usage.d.ts +948 -0
  182. package/dist/insights-usage.js +608 -0
  183. package/dist/insights-usage.js.map +1 -0
  184. package/dist/integration-capability-id.d.ts +8 -0
  185. package/dist/interaction-action-deadline.d.ts +48 -0
  186. package/dist/interaction-driver-diagnostic.d.ts +28 -0
  187. package/dist/interaction.d.ts +2126 -881
  188. package/dist/knowledge-entries.d.ts +38 -0
  189. package/dist/knowledge-preparation.d.ts +4 -0
  190. package/dist/learning-refusal.d.ts +43 -0
  191. package/dist/learning-refusal.js +49 -0
  192. package/dist/learning-refusal.js.map +1 -0
  193. package/dist/managed-auth-session-sets.d.ts +1 -0
  194. package/dist/managed-auth-session-sets.js +207 -146
  195. package/dist/managed-auth-session-sets.js.map +1 -1
  196. package/dist/managed-sign-in-methods.d.ts +96 -0
  197. package/dist/managed-sign-in-methods.js +157 -35
  198. package/dist/managed-sign-in-methods.js.map +1 -1
  199. package/dist/mcp-structured-content.d.ts +25 -0
  200. package/dist/message-time-zone.d.ts +38 -0
  201. package/dist/message-time-zone.js +19 -0
  202. package/dist/message-time-zone.js.map +1 -0
  203. package/dist/modal-native-proof-v2.d.ts +587 -0
  204. package/dist/modal-native-proof-v2.js +39 -0
  205. package/dist/modal-native-proof-v2.js.map +1 -0
  206. package/dist/model-account-choice.d.ts +237 -0
  207. package/dist/model-account-settings.d.ts +422 -0
  208. package/dist/model-availability.d.ts +15 -0
  209. package/dist/model-connection-access.d.ts +13 -0
  210. package/dist/model-context-inspector.d.ts +8 -0
  211. package/dist/model-display.d.ts +43 -0
  212. package/dist/model-display.js +17 -0
  213. package/dist/model-display.js.map +1 -0
  214. package/dist/model-picker-order.js.map +1 -1
  215. package/dist/model-residency.d.ts +304 -0
  216. package/dist/organization-access.d.ts +416 -0
  217. package/dist/organization-access.js +40 -0
  218. package/dist/organization-access.js.map +1 -0
  219. package/dist/organization-integration-policy.d.ts +18 -0
  220. package/dist/organization-membership-lifecycle.d.ts +66 -0
  221. package/dist/organization-model-usage.d.ts +146 -0
  222. package/dist/organization-model-usage.js +87 -0
  223. package/dist/organization-model-usage.js.map +1 -0
  224. package/dist/organization-recovery.js +3 -1
  225. package/dist/organization-usage.d.ts +12 -0
  226. package/dist/passkey-only-account.d.ts +14 -0
  227. package/dist/passkey-only-account.js +13 -0
  228. package/dist/passkey-only-account.js.map +1 -0
  229. package/dist/permissions.d.ts +19 -0
  230. package/dist/personal-github.js +220 -148
  231. package/dist/personal-github.js.map +1 -1
  232. package/dist/personal-integration-setup.d.ts +81 -0
  233. package/dist/personal-integration-setup.js +42 -0
  234. package/dist/personal-integration-setup.js.map +1 -0
  235. package/dist/prepared-mcp-setup.d.ts +54 -0
  236. package/dist/prepared-mcp-setup.js +13 -0
  237. package/dist/prepared-mcp-setup.js.map +1 -0
  238. package/dist/presentation-artifact-commands.js +2 -2
  239. package/dist/presentation-artifact-query.js +2 -2
  240. package/dist/primitives.d.ts +18 -0
  241. package/dist/product-analytics.d.ts +27 -10
  242. package/dist/product-lifecycle-facts.d.ts +26 -3
  243. package/dist/prompt-cache-diagnostics.d.ts +92 -0
  244. package/dist/recordings.d.ts +1371 -0
  245. package/dist/remember.d.ts +98 -2
  246. package/dist/retained-output.d.ts +4 -2
  247. package/dist/sandbox-file-artifacts.d.ts +19 -2
  248. package/dist/sandbox-provider-command.d.ts +5 -44
  249. package/dist/sandbox-recovery.d.ts +139 -8
  250. package/dist/secret-generator.d.ts +44 -0
  251. package/dist/secret-mask-strings.d.ts +32 -0
  252. package/dist/secret-references.d.ts +90 -0
  253. package/dist/secret-resolution.d.ts +143 -0
  254. package/dist/secret-shape-masking.d.ts +52 -0
  255. package/dist/secret-shape-masking.js +19 -0
  256. package/dist/secret-shape-masking.js.map +1 -0
  257. package/dist/secret-totp.d.ts +41 -0
  258. package/dist/secret-use-approval-question.d.ts +11 -0
  259. package/dist/secret-use-approval-question.js +11 -0
  260. package/dist/secret-use-approval-question.js.map +1 -0
  261. package/dist/secret-use-approvals.d.ts +106 -0
  262. package/dist/secret-value-masking.d.ts +299 -0
  263. package/dist/secret-value-masking.js +62 -0
  264. package/dist/secret-value-masking.js.map +1 -0
  265. package/dist/secret-value.d.ts +19 -0
  266. package/dist/session-history-import.d.ts +444 -8
  267. package/dist/session-history.d.ts +111 -0
  268. package/dist/session-history.js +35 -0
  269. package/dist/session-history.js.map +1 -0
  270. package/dist/session-list-entries.d.ts +8 -0
  271. package/dist/session-list-entries.js +61 -0
  272. package/dist/session-list-entries.js.map +1 -0
  273. package/dist/session-mcp-projections.d.ts +13 -1
  274. package/dist/session-mcp-tool-permissions.d.ts +62 -0
  275. package/dist/session-target.d.ts +18 -0
  276. package/dist/session-titles.d.ts +8 -0
  277. package/dist/session-titles.js +5 -1
  278. package/dist/session-usage-limit-refusal.d.ts +34 -0
  279. package/dist/session-usage-limit-refusal.js +15 -0
  280. package/dist/session-usage-limit-refusal.js.map +1 -0
  281. package/dist/session-usage-limits.d.ts +127 -0
  282. package/dist/session-usage-limits.js +43 -0
  283. package/dist/session-usage-limits.js.map +1 -0
  284. package/dist/site-data.d.ts +286 -0
  285. package/dist/site-operations.d.ts +39 -0
  286. package/dist/site-publishing.d.ts +813 -0
  287. package/dist/site-session-http.d.ts +103 -4
  288. package/dist/site-session-http.js +27 -1
  289. package/dist/site-sql.d.ts +425 -0
  290. package/dist/skills.d.ts +38 -0
  291. package/dist/slack-bot-scopes.d.ts +9 -7
  292. package/dist/slack-bot-scopes.js +6 -3
  293. package/dist/slack-rest-mcp.d.ts +36 -0
  294. package/dist/slack-rest-mcp.js +25 -0
  295. package/dist/slack-rest-mcp.js.map +1 -0
  296. package/dist/spreadsheet-artifact-commands.d.ts +14 -1
  297. package/dist/spreadsheet-artifact-commands.js +9 -2
  298. package/dist/spreadsheet-artifact-query.d.ts +13 -6
  299. package/dist/spreadsheet-artifact-query.js +4 -3
  300. package/dist/subscription-account-actions.d.ts +83 -0
  301. package/dist/subscription-account-pools.d.ts +326 -0
  302. package/dist/subscription-personal-authority-v2.d.ts +28 -0
  303. package/dist/subscription-personal-authority-v2.js +13 -0
  304. package/dist/subscription-personal-authority-v2.js.map +1 -0
  305. package/dist/subscription-plans.d.ts +38 -0
  306. package/dist/subscription-usage-pool.d.ts +89 -0
  307. package/dist/tool-action-review.d.ts +141 -0
  308. package/dist/tool-catalog.d.ts +479 -0
  309. package/dist/tool-policy.d.ts +5 -0
  310. package/dist/tool-review-presentation.d.ts +29 -0
  311. package/dist/tool-review-presentation.js +21 -0
  312. package/dist/tool-review-presentation.js.map +1 -0
  313. package/dist/turn-serving-policy.d.ts +223 -0
  314. package/dist/usage-allowances.d.ts +30 -0
  315. package/dist/usage-allowances.js +5 -1
  316. package/dist/values.d.ts +11 -0
  317. package/dist/values.js +19 -0
  318. package/dist/values.js.map +1 -0
  319. package/dist/vault-provider-wire.d.ts +907 -0
  320. package/dist/vault-provider-wire.js +74 -0
  321. package/dist/vault-provider-wire.js.map +1 -0
  322. package/dist/vaults.d.ts +2185 -0
  323. package/dist/video-generation.d.ts +75 -0
  324. package/dist/video-generation.js +8 -1
  325. package/dist/workspace-control-event.d.ts +18 -0
  326. package/dist/workspace-control-event.js +18 -0
  327. package/dist/workspace-control-event.js.map +1 -0
  328. package/dist/workspace-governance-context.d.ts +18 -0
  329. package/dist/workspace-integration-wire.d.ts +1 -1
  330. package/dist/workspace-integration-wire.js +1 -1
  331. package/dist/workspace-integrations.d.ts +212 -12
  332. package/dist/xai-provider-account-authority.js +3 -1
  333. package/package.json +121 -4
  334. package/src/agent-authored-durable-text.ts +14 -11
  335. package/src/agent-config.ts +382 -203
  336. package/src/agent-instruction-changes.ts +94 -74
  337. package/src/agent-learning.ts +94 -66
  338. package/src/agent-topology.ts +58 -52
  339. package/src/api-key-presets.ts +28 -0
  340. package/src/app-action-catalog-types.ts +32 -0
  341. package/src/app-action-catalog.gen.ts +9905 -0
  342. package/src/app-actions.ts +365 -0
  343. package/src/app-shot.ts +176 -0
  344. package/src/artifact-catalog.ts +81 -46
  345. package/src/artifacts.ts +360 -227
  346. package/src/atlassian-native-retirement.ts +33 -0
  347. package/src/atlassian.ts +136 -108
  348. package/src/automation-templates.ts +201 -0
  349. package/src/billing-subscriptions.ts +48 -0
  350. package/src/bots.ts +238 -0
  351. package/src/bundled-skills.ts +79 -22
  352. package/src/canonical-human-identities.ts +65 -62
  353. package/src/child-lifecycle-notice-protocol.gen.json +1310 -0
  354. package/src/child-lifecycle-notice-protocol.ts +224 -0
  355. package/src/claude-provider-account-authority.ts +12 -0
  356. package/src/claude-subscription-oauth.ts +61 -19
  357. package/src/claude-subscription-usage.ts +64 -35
  358. package/src/client-error-report.ts +344 -9
  359. package/src/code-search.ts +1 -1
  360. package/src/codex-provider-account-authority.ts +22 -16
  361. package/src/company-brain-governed-writes.ts +265 -244
  362. package/src/company-brain.ts +165 -154
  363. package/src/company-profile.ts +362 -297
  364. package/src/connect.ts +222 -173
  365. package/src/connection-account-label.ts +45 -0
  366. package/src/connection-authority.ts +172 -152
  367. package/src/connector-attachments.ts +139 -123
  368. package/src/connector-destinations.ts +48 -43
  369. package/src/connector-tool-permissions.ts +104 -46
  370. package/src/credential-profiles.ts +161 -0
  371. package/src/cua-desktop-tools.gen.json +6722 -0
  372. package/src/cua-desktop-tools.linux.gen.json +6798 -0
  373. package/src/cua-desktop-tools.ts +42 -0
  374. package/src/cua-desktop-tools.windows.gen.json +6739 -0
  375. package/src/define-schema.ts +10 -0
  376. package/src/desktop-app.ts +50 -0
  377. package/src/direct-model-provider.ts +112 -0
  378. package/src/editable-artifact-binary.ts +29 -8
  379. package/src/editable-artifact-committed-transaction.ts +19 -18
  380. package/src/editable-artifact-serialized-commit.ts +8 -2
  381. package/src/editable-artifact-versions.ts +7 -1
  382. package/src/event-preview.ts +53 -3
  383. package/src/event-triggers.ts +891 -0
  384. package/src/external-identities.ts +239 -195
  385. package/src/feedback.ts +125 -30
  386. package/src/file-access.ts +26 -0
  387. package/src/first-party-tool-authorization.ts +383 -0
  388. package/src/github-repository-contracts.ts +78 -64
  389. package/src/google-drive-native-retirement.ts +20 -0
  390. package/src/google-drive.ts +286 -234
  391. package/src/governed-learning-activation.ts +159 -137
  392. package/src/governed-learning-evaluator.ts +141 -133
  393. package/src/host-mcp-bindings.ts +244 -221
  394. package/src/image-generation.ts +105 -95
  395. package/src/index.ts +13928 -9899
  396. package/src/inference-residency.ts +36 -0
  397. package/src/insights-usage.ts +774 -0
  398. package/src/integration-capability-id.ts +16 -0
  399. package/src/interaction-action-deadline.ts +143 -0
  400. package/src/interaction-driver-diagnostic.ts +89 -0
  401. package/src/interaction.ts +3527 -2427
  402. package/src/knowledge-entries.ts +386 -299
  403. package/src/knowledge-preparation.ts +49 -41
  404. package/src/knowledge.ts +242 -213
  405. package/src/learning-refusal.ts +90 -0
  406. package/src/managed-auth-session-sets.ts +180 -133
  407. package/src/managed-sign-in-methods.ts +156 -34
  408. package/src/mcp-oauth.ts +58 -46
  409. package/src/mcp-receipts.ts +199 -194
  410. package/src/mcp-structured-content.ts +81 -0
  411. package/src/memory-slack-delivery.ts +172 -142
  412. package/src/message-time-zone.ts +109 -0
  413. package/src/modal-native-proof-v2.ts +430 -0
  414. package/src/model-account-choice.ts +178 -0
  415. package/src/model-account-settings.ts +210 -0
  416. package/src/model-availability.ts +22 -0
  417. package/src/model-connection-access.ts +62 -14
  418. package/src/model-context-inspector.ts +130 -109
  419. package/src/model-display.ts +221 -0
  420. package/src/model-picker-order.ts +1 -1
  421. package/src/model-residency.ts +535 -0
  422. package/src/organization-access.ts +216 -0
  423. package/src/organization-integration-policy.ts +47 -28
  424. package/src/organization-membership-lifecycle.ts +558 -384
  425. package/src/organization-model-usage.ts +82 -0
  426. package/src/organization-recovery.ts +148 -135
  427. package/src/organization-usage.ts +84 -52
  428. package/src/passkey-only-account.ts +29 -0
  429. package/src/permissions.ts +94 -52
  430. package/src/personal-github.ts +211 -171
  431. package/src/personal-integration-setup.ts +150 -0
  432. package/src/preference-registry.ts +319 -263
  433. package/src/prepared-mcp-setup.ts +190 -0
  434. package/src/primitives.ts +22 -0
  435. package/src/product-analytics.ts +40 -15
  436. package/src/product-lifecycle-facts.ts +50 -20
  437. package/src/prompt-cache-diagnostics.ts +212 -0
  438. package/src/recordings.ts +1153 -0
  439. package/src/remember.ts +184 -172
  440. package/src/retained-output.ts +181 -168
  441. package/src/sandbox-file-artifacts.ts +78 -57
  442. package/src/sandbox-provider-command.ts +55 -72
  443. package/src/sandbox-recovery.ts +163 -77
  444. package/src/scoped-knowledge.ts +62 -43
  445. package/src/secret-generator.ts +156 -0
  446. package/src/secret-mask-strings.ts +175 -0
  447. package/src/secret-references.ts +414 -0
  448. package/src/secret-resolution.ts +322 -0
  449. package/src/secret-shape-masking.ts +573 -0
  450. package/src/secret-totp.ts +188 -0
  451. package/src/secret-use-approval-question.ts +22 -0
  452. package/src/secret-use-approvals.ts +219 -0
  453. package/src/secret-value-masking.ts +1283 -0
  454. package/src/secret-value.ts +22 -0
  455. package/src/session-goal-reports.ts +55 -49
  456. package/src/session-history-import.ts +84 -68
  457. package/src/session-history.ts +197 -0
  458. package/src/session-list-entries.ts +106 -0
  459. package/src/session-mcp-projections.ts +21 -3
  460. package/src/session-mcp-tool-permissions.ts +109 -0
  461. package/src/session-message-search.ts +46 -38
  462. package/src/session-target.ts +58 -0
  463. package/src/session-titles.ts +40 -4
  464. package/src/session-topology-primitives.ts +20 -12
  465. package/src/session-usage-limit-refusal.ts +101 -0
  466. package/src/session-usage-limits.ts +169 -0
  467. package/src/signup-attribution.ts +20 -15
  468. package/src/site-data.ts +337 -0
  469. package/src/site-operations.ts +154 -0
  470. package/src/site-publishing.ts +903 -0
  471. package/src/site-session-http.ts +344 -16
  472. package/src/site-sql.ts +1120 -0
  473. package/src/skill-use.ts +18 -17
  474. package/src/skills.ts +105 -50
  475. package/src/slack-bot-scopes.ts +18 -35
  476. package/src/slack-rest-mcp.ts +222 -0
  477. package/src/slack-task-policy.ts +97 -73
  478. package/src/spreadsheet-artifact-commands.ts +74 -13
  479. package/src/spreadsheet-artifact-query.ts +188 -50
  480. package/src/subscription-account-actions.ts +103 -0
  481. package/src/subscription-account-pools.ts +74 -0
  482. package/src/subscription-personal-authority-v2.ts +69 -0
  483. package/src/subscription-plans.ts +51 -0
  484. package/src/subscription-usage-pool.ts +44 -0
  485. package/src/task-notes.ts +70 -68
  486. package/src/tool-action-review.ts +271 -0
  487. package/src/tool-catalog.ts +694 -379
  488. package/src/tool-policy.ts +82 -0
  489. package/src/tool-result-spill.ts +13 -9
  490. package/src/tool-review-presentation.ts +643 -0
  491. package/src/turn-serving-policy.ts +167 -0
  492. package/src/usage-allowances.ts +212 -136
  493. package/src/values.ts +25 -0
  494. package/src/vault-provider-wire.ts +580 -0
  495. package/src/vaults.ts +1296 -0
  496. package/src/video-generation.ts +430 -361
  497. package/src/work-claims.ts +183 -166
  498. package/src/workspace-control-event.ts +134 -0
  499. package/src/workspace-governance-context.ts +63 -0
  500. package/src/workspace-instruction-policies.ts +346 -279
  501. package/src/workspace-integration-wire.ts +10 -0
  502. package/src/workspace-integrations.ts +488 -398
  503. package/src/workspace-learning-administration.ts +58 -44
  504. package/src/workspace-learning-policy.ts +126 -99
  505. package/src/workspace-state.ts +239 -220
  506. package/src/xai-provider-account-authority.ts +23 -17
  507. package/dist/chunk-3SIZGL3O.js.map +0 -1
  508. package/dist/chunk-566IFOVP.js +0 -26133
  509. package/dist/chunk-566IFOVP.js.map +0 -1
  510. package/dist/chunk-5IXYF6XN.js +0 -728
  511. package/dist/chunk-5IXYF6XN.js.map +0 -1
  512. package/dist/chunk-5Q54VCCH.js.map +0 -1
  513. package/dist/chunk-BCS7WHCK.js +0 -139
  514. package/dist/chunk-BCS7WHCK.js.map +0 -1
  515. package/dist/chunk-EK7NDGFR.js +0 -128
  516. package/dist/chunk-EK7NDGFR.js.map +0 -1
  517. package/dist/chunk-GRG7PHWQ.js +0 -25
  518. package/dist/chunk-GRG7PHWQ.js.map +0 -1
  519. package/dist/chunk-HHZSZYYF.js.map +0 -1
  520. package/dist/chunk-ICDZGUX2.js +0 -186
  521. package/dist/chunk-ICDZGUX2.js.map +0 -1
  522. package/dist/chunk-JUFK3T4Q.js +0 -80
  523. package/dist/chunk-JUFK3T4Q.js.map +0 -1
  524. package/dist/chunk-MYBZRDTY.js.map +0 -1
  525. package/dist/chunk-NRMCVHAU.js.map +0 -1
  526. package/dist/chunk-O77VSFYZ.js.map +0 -1
  527. package/dist/chunk-P3HLDT77.js +0 -59
  528. package/dist/chunk-P3HLDT77.js.map +0 -1
  529. package/dist/chunk-TXTQIYCV.js.map +0 -1
  530. package/dist/chunk-WYBDERIY.js.map +0 -1
  531. package/dist/chunk-Y3KNXVTD.js.map +0 -1
  532. package/dist/chunk-YBW5JSA3.js.map +0 -1
  533. package/dist/chunk-YRXAWWCU.js +0 -45
  534. package/dist/chunk-YRXAWWCU.js.map +0 -1
  535. package/dist/chunk-YWMOIZ6A.js +0 -185
  536. package/dist/chunk-YWMOIZ6A.js.map +0 -1
  537. package/dist/site-request-headers.test.d.ts +0 -1
  538. package/dist/transcription-recordings.d.ts +0 -300
  539. package/src/transcription-recordings.ts +0 -169
  540. /package/dist/{chunk-SIOU2K4U.js.map → chunk-LJH2EYGT.js.map} +0 -0
  541. /package/dist/{chunk-RIY7GYQS.js.map → chunk-PTSROVDG.js.map} +0 -0
  542. /package/dist/{chunk-YRKRZ6OF.js.map → chunk-TOOJIBJC.js.map} +0 -0
  543. /package/dist/{chunk-D2HKF2EF.js.map → chunk-XP5M3IKT.js.map} +0 -0
@@ -0,0 +1,167 @@
1
+ import * as primitives from "./primitives";
2
+ import { defineSchema } from "./define-schema";
3
+ import { z } from "zod";
4
+ import { TurnExecutionPolicyV1 } from "./index";
5
+
6
+ export const TURN_SERVING_POLICY_METADATA_KEY = "turnServingPolicyV1" as const;
7
+ export const TURN_PENDING_SERVING_POLICY_METADATA_KEY = "turnPendingServingPolicyV1" as const;
8
+
9
+ const ServingReason = /* @__PURE__ */ defineSchema(() =>
10
+ z.enum([
11
+ "initial",
12
+ "sticky",
13
+ "pinned",
14
+ "reselected_cold",
15
+ "failover_same_provider",
16
+ "failover_cross_provider",
17
+ "return_to_preferred",
18
+ ]),
19
+ );
20
+
21
+ /** One immutable serving receipt, not a replacement for the accepted policy.
22
+ * The lazy reference keeps the contracts barrel free of initialization cycles.
23
+ * Connection ids are references only; no credential material belongs here.
24
+ */
25
+ export const TurnServingPolicyV1 = /* @__PURE__ */ defineSchema(() =>
26
+ z
27
+ .object({
28
+ schemaVersion: z.literal(1),
29
+ policy: z.lazy(() => TurnExecutionPolicyV1),
30
+ executionGeneration: primitives.positiveInteger.max(Number.MAX_SAFE_INTEGER),
31
+ /** Selection reference; advisory until the generation is placed. */
32
+ connectionId: primitives.uuid,
33
+ reason: ServingReason,
34
+ /** Highest session history position at recording, including inactive rows.
35
+ * Fractional positions exist in historical compaction layouts. A revision
36
+ * applies strictly AFTER this boundary, never to the row at the boundary.
37
+ */
38
+ historyPosition: z.number().finite().nonnegative(),
39
+ })
40
+ .strict()
41
+ .superRefine((revision, context) => {
42
+ if (revision.policy.credentialRestriction !== undefined) {
43
+ context.addIssue({
44
+ code: "custom",
45
+ path: ["policy", "credentialRestriction"],
46
+ message: "Restricted policies cannot switch",
47
+ });
48
+ }
49
+ if (
50
+ revision.policy.billing.metering !== "external" ||
51
+ revision.policy.credentialSource.kind === "deployment"
52
+ ) {
53
+ context.addIssue({
54
+ code: "custom",
55
+ path: ["policy", "billing"],
56
+ message: "Serving revisions require externally funded connected access",
57
+ });
58
+ }
59
+ }),
60
+ );
61
+ export type TurnServingPolicyV1 = z.infer<typeof TurnServingPolicyV1>;
62
+
63
+ /** A recovery proposal, NOT provenance. Its history boundary is assigned only
64
+ * when a newer claimed generation commits a serving revision. C2 will stage it
65
+ * atomically with recovery using the transaction-local database helper.
66
+ */
67
+ export const TurnPendingServingPolicyV1 = /* @__PURE__ */ defineSchema(() =>
68
+ z
69
+ .object({
70
+ schemaVersion: z.literal(1),
71
+ sourceExecutionGeneration: primitives.positiveInteger.max(Number.MAX_SAFE_INTEGER),
72
+ sourceAttemptId: primitives.uuid,
73
+ policy: z.lazy(() => TurnExecutionPolicyV1),
74
+ connectionId: primitives.uuid,
75
+ reason: ServingReason,
76
+ })
77
+ .strict()
78
+ .superRefine((target, context) => {
79
+ const candidate = TurnServingPolicyV1.safeParse({
80
+ schemaVersion: 1,
81
+ policy: target.policy,
82
+ connectionId: target.connectionId,
83
+ reason: target.reason,
84
+ executionGeneration: target.sourceExecutionGeneration,
85
+ historyPosition: 0,
86
+ });
87
+ if (!candidate.success)
88
+ context.addIssue({ code: "custom", message: "Invalid pending serving selection" });
89
+ }),
90
+ );
91
+ export type TurnPendingServingPolicyV1 = z.infer<typeof TurnPendingServingPolicyV1>;
92
+
93
+ export function readTurnPendingServingPolicyV1(
94
+ metadata: unknown,
95
+ ): TurnPendingServingPolicyV1 | null {
96
+ if (metadata === null || metadata === undefined) return null;
97
+ if (typeof metadata !== "object" || Array.isArray(metadata))
98
+ throw new Error("Malformed pending serving metadata");
99
+ if (!Object.prototype.hasOwnProperty.call(metadata, TURN_PENDING_SERVING_POLICY_METADATA_KEY))
100
+ return null;
101
+ const parsed = TurnPendingServingPolicyV1.safeParse(
102
+ (metadata as Record<string, unknown>)[TURN_PENDING_SERVING_POLICY_METADATA_KEY],
103
+ );
104
+ if (!parsed.success) throw new Error("Malformed pending serving policy");
105
+ return parsed.data;
106
+ }
107
+
108
+ const ServingRevisions = /* @__PURE__ */ defineSchema(() =>
109
+ z
110
+ .array(TurnServingPolicyV1)
111
+ .nonempty()
112
+ .superRefine((revisions, context) => {
113
+ for (let index = 1; index < revisions.length; index++) {
114
+ const previous = revisions[index - 1]!;
115
+ const current = revisions[index]!;
116
+ if (
117
+ current.executionGeneration <= previous.executionGeneration ||
118
+ current.historyPosition < previous.historyPosition
119
+ ) {
120
+ context.addIssue({
121
+ code: "custom",
122
+ path: [index],
123
+ message: "Serving revisions must advance generation and never move history backwards",
124
+ });
125
+ }
126
+ }
127
+ }),
128
+ );
129
+
130
+ export type TurnServingPolicyReadV1 =
131
+ | { kind: "absent" }
132
+ | { kind: "valid"; revisions: TurnServingPolicyV1[] };
133
+
134
+ /** Only absence is legacy. Malformed present metadata fails closed, without
135
+ * reflecting untrusted values (which might contain credentials) into errors.
136
+ */
137
+ export function readTurnServingPolicyV1(metadata: unknown): TurnServingPolicyReadV1 {
138
+ if (metadata === null || metadata === undefined) return { kind: "absent" };
139
+ if (typeof metadata !== "object" || Array.isArray(metadata)) {
140
+ throw new Error("Malformed turn serving policy metadata");
141
+ }
142
+ if (!Object.prototype.hasOwnProperty.call(metadata, TURN_SERVING_POLICY_METADATA_KEY))
143
+ return { kind: "absent" };
144
+ const parsed = ServingRevisions.safeParse(
145
+ (metadata as Record<string, unknown>)[TURN_SERVING_POLICY_METADATA_KEY],
146
+ );
147
+ if (!parsed.success) throw new Error("Malformed turn serving policy revisions");
148
+ return { kind: "valid", revisions: parsed.data };
149
+ }
150
+
151
+ /** D-39: the first receipt establishes the baseline. Reclaims, account-only
152
+ * rotations and reasoning changes do not spend the model/provider bound.
153
+ * Combine this with the all-provider refusal count at the recovery boundary.
154
+ */
155
+ export function countTurnServingPolicyChangesV1(revisions: readonly TurnServingPolicyV1[]): number {
156
+ let count = 0;
157
+ for (let index = 1; index < revisions.length; index++) {
158
+ const previous = revisions[index - 1]!.policy;
159
+ const current = revisions[index]!.policy;
160
+ if (
161
+ previous.providerId !== current.providerId ||
162
+ previous.productModelId !== current.productModelId
163
+ )
164
+ count++;
165
+ }
166
+ return count;
167
+ }
@@ -1,25 +1,33 @@
1
+ import * as primitives from "./primitives";
2
+ import { defineSchema } from "./define-schema";
1
3
  import { z } from "zod";
2
4
 
3
5
  /** Credit amounts are integer USD micros (1 USD = 1,000,000), never floating-point dollars. */
4
- export const AllowanceCredits = z.number().int().nonnegative().safe();
5
- const Version = z.number().int().nonnegative().safe();
6
- const Timestamp = z.string().datetime({ offset: true });
7
- const OperationId = z
8
- .string()
9
- .min(1)
10
- .max(256)
11
- .refine(
12
- (value) =>
13
- value.trim().length > 0 &&
14
- !value.includes("\0") &&
15
- !/[\uD800-\uDFFF]/u.test(value) &&
16
- new TextEncoder().encode(value).byteLength <= 256,
17
- );
18
- const SubjectId = z
19
- .string()
20
- .min(1)
21
- .max(1024)
22
- .refine((value) => !value.includes("\0"));
6
+ export const AllowanceCredits = /* @__PURE__ */ defineSchema(() =>
7
+ primitives.nonnegativeInteger.safe(),
8
+ );
9
+ const Version = /* @__PURE__ */ defineSchema(() => primitives.nonnegativeInteger.safe());
10
+ const Timestamp = /* @__PURE__ */ defineSchema(() => primitives.string.datetime({ offset: true }));
11
+ const OperationId = /* @__PURE__ */ defineSchema(() =>
12
+ z
13
+ .string()
14
+ .min(1)
15
+ .max(256)
16
+ .refine(
17
+ (value) =>
18
+ value.trim().length > 0 &&
19
+ !value.includes("\0") &&
20
+ !/[\uD800-\uDFFF]/u.test(value) &&
21
+ new TextEncoder().encode(value).byteLength <= 256,
22
+ ),
23
+ );
24
+ const SubjectId = /* @__PURE__ */ defineSchema(() =>
25
+ z
26
+ .string()
27
+ .min(1)
28
+ .max(1024)
29
+ .refine((value) => !value.includes("\0")),
30
+ );
23
31
 
24
32
  /**
25
33
  * A share scales with the current workspace pool, including unexpired grants.
@@ -28,160 +36,228 @@ const SubjectId = z
28
36
  * happens before the next call, after actual usage is settled.
29
37
  * null removes the override and uses the workspace's memberDefault.
30
38
  */
31
- export const MemberAllowanceRule = z.union([
32
- z.object({ share: z.number().finite().nonnegative() }).strict(),
33
- z.object({ credits: AllowanceCredits }).strict(),
34
- z.null(),
35
- ]);
39
+ export const MemberAllowanceRule = /* @__PURE__ */ defineSchema(() =>
40
+ z.union([
41
+ z.object({ share: z.number().finite().nonnegative() }).strict(),
42
+ z.object({ credits: AllowanceCredits }).strict(),
43
+ z.null(),
44
+ ]),
45
+ );
36
46
  export type MemberAllowanceRule = z.infer<typeof MemberAllowanceRule>;
37
47
 
38
- export const MemberAllowanceDefault = z.union([
39
- z.enum(["none", "equal_share"]),
40
- z.object({ share: z.number().finite().nonnegative() }).strict(),
41
- z.object({ credits: AllowanceCredits }).strict(),
42
- ]);
48
+ export const MemberAllowanceDefault = /* @__PURE__ */ defineSchema(() =>
49
+ z.union([
50
+ z.enum(["none", "equal_share"]),
51
+ z.object({ share: z.number().finite().nonnegative() }).strict(),
52
+ z.object({ credits: AllowanceCredits }).strict(),
53
+ ]),
54
+ );
43
55
  export type MemberAllowanceDefault = z.infer<typeof MemberAllowanceDefault>;
44
56
 
45
- const Thresholds = z.array(z.number().finite().positive().max(1)).max(16);
57
+ const Thresholds = /* @__PURE__ */ defineSchema(() =>
58
+ z.array(z.number().finite().positive().max(1)).max(16),
59
+ );
60
+ /**
61
+ * How model calls that spend no Opengeni credits count: subscription
62
+ * connections, workspace-owned keys and deployments without credit billing.
63
+ * "ignore" (the default) keeps the allowance credit-only. "list_price" counts
64
+ * each such call at its configured list-price estimate in USD micros and
65
+ * admits those turns against the allowance; calls without a list price are
66
+ * not counted.
67
+ */
68
+ export const UnbilledUsageMetering = /* @__PURE__ */ defineSchema(() =>
69
+ z.enum(["ignore", "list_price"]),
70
+ );
71
+ export type UnbilledUsageMetering = z.infer<typeof UnbilledUsageMetering>;
46
72
  /** Omitted threshold lists default to [0.8, 1]. Monthly boundaries are UTC. */
47
- export const WorkspaceAllowanceConfig = z
48
- .object({
49
- includedCredits: AllowanceCredits,
50
- period: z.enum(["monthly", "none"]),
51
- anchorDay: z.number().int().min(1).max(31).optional(),
52
- memberDefault: MemberAllowanceDefault.optional(),
53
- thresholds: z
54
- .object({ workspace: Thresholds.optional(), member: Thresholds.optional() })
55
- .strict()
56
- .optional(),
57
- })
58
- .strict();
73
+ export const WorkspaceAllowanceConfig = /* @__PURE__ */ defineSchema(() =>
74
+ z
75
+ .object({
76
+ includedCredits: AllowanceCredits,
77
+ period: z.enum(["monthly", "none"]),
78
+ anchorDay: z.number().int().min(1).max(31).optional(),
79
+ memberDefault: MemberAllowanceDefault.optional(),
80
+ thresholds: z
81
+ .object({ workspace: Thresholds.optional(), member: Thresholds.optional() })
82
+ .strict()
83
+ .optional(),
84
+ unbilledUsage: UnbilledUsageMetering.optional(),
85
+ })
86
+ .strict(),
87
+ );
59
88
  export type WorkspaceAllowanceConfig = z.infer<typeof WorkspaceAllowanceConfig>;
60
89
 
61
- export const WorkspaceAllowance = WorkspaceAllowanceConfig.extend({ version: Version.min(1) });
90
+ export const WorkspaceAllowance = /* @__PURE__ */ defineSchema(() =>
91
+ WorkspaceAllowanceConfig.extend({ version: Version.min(1) }),
92
+ );
62
93
  export type WorkspaceAllowance = z.infer<typeof WorkspaceAllowance>;
63
94
  /**
64
95
  * Lifecycle version survives clear. version=0 means never configured; a null
65
96
  * config with a positive version is cleared. Use this version for recreation.
66
97
  * The existing nullable configuration read remains unchanged.
67
98
  */
68
- export const WorkspaceAllowanceState = z
69
- .object({ version: Version, config: WorkspaceAllowance.nullable() })
70
- .strict()
71
- .refine((state) => state.config === null || state.config.version === state.version, {
72
- message: "Allowance configuration and lifecycle versions must match",
73
- path: ["config", "version"],
74
- });
99
+ export const WorkspaceAllowanceState = /* @__PURE__ */ defineSchema(() =>
100
+ z
101
+ .object({ version: Version, config: WorkspaceAllowance.nullable() })
102
+ .strict()
103
+ .refine((state) => state.config === null || state.config.version === state.version, {
104
+ message: "Allowance configuration and lifecycle versions must match",
105
+ path: ["config", "version"],
106
+ }),
107
+ );
75
108
  export type WorkspaceAllowanceState = z.infer<typeof WorkspaceAllowanceState>;
76
- export const SetWorkspaceAllowanceRequest = WorkspaceAllowanceConfig.extend({
77
- expectedVersion: Version,
78
- });
109
+ export const SetWorkspaceAllowanceRequest = /* @__PURE__ */ defineSchema(() =>
110
+ WorkspaceAllowanceConfig.extend({
111
+ expectedVersion: Version,
112
+ }),
113
+ );
79
114
  export type SetWorkspaceAllowanceRequest = z.infer<typeof SetWorkspaceAllowanceRequest>;
80
115
  /** Reuse operationId and the exact expectedVersion to recover a lost clear
81
116
  * receipt. A later lifecycle change conflicts; read the state before deciding
82
117
  * on a new mutation, never guess a version or change it for a retry. */
83
- export const ClearWorkspaceAllowanceRequest = z
84
- .object({ expectedVersion: Version.min(1), operationId: OperationId.optional() })
85
- .strict();
118
+ export const ClearWorkspaceAllowanceRequest = /* @__PURE__ */ defineSchema(() =>
119
+ z.object({ expectedVersion: Version.min(1), operationId: OperationId.optional() }).strict(),
120
+ );
86
121
  export type ClearWorkspaceAllowanceRequest = z.infer<typeof ClearWorkspaceAllowanceRequest>;
87
- export const ClearWorkspaceAllowanceResponse = z.object({ version: Version.min(1) }).strict();
122
+ export const ClearWorkspaceAllowanceResponse = /* @__PURE__ */ defineSchema(() =>
123
+ z.object({ version: Version.min(1) }).strict(),
124
+ );
88
125
  export type ClearWorkspaceAllowanceResponse = z.infer<typeof ClearWorkspaceAllowanceResponse>;
89
126
 
90
127
  /** Reuse the operationId and exact request to recover an uncertain grant response. */
91
- export const GrantWorkspaceCreditsRequest = z
92
- .object({
93
- operationId: OperationId,
94
- credits: AllowanceCredits.positive(),
95
- expiresAt: Timestamp.nullable().optional(),
96
- })
97
- .strict();
128
+ export const GrantWorkspaceCreditsRequest = /* @__PURE__ */ defineSchema(() =>
129
+ z
130
+ .object({
131
+ operationId: OperationId,
132
+ credits: AllowanceCredits.positive(),
133
+ expiresAt: Timestamp.nullable().optional(),
134
+ })
135
+ .strict(),
136
+ );
98
137
  export type GrantWorkspaceCreditsRequest = z.infer<typeof GrantWorkspaceCreditsRequest>;
99
- export const WorkspaceCreditGrant = GrantWorkspaceCreditsRequest.extend({
100
- remaining: AllowanceCredits,
101
- expiresAt: Timestamp.nullable(),
102
- });
138
+ export const WorkspaceCreditGrant = /* @__PURE__ */ defineSchema(() =>
139
+ GrantWorkspaceCreditsRequest.extend({
140
+ remaining: AllowanceCredits,
141
+ expiresAt: Timestamp.nullable(),
142
+ }),
143
+ );
103
144
  export type WorkspaceCreditGrant = z.infer<typeof WorkspaceCreditGrant>;
104
145
 
105
- export const SetMemberAllowanceRequest = z
106
- .object({
107
- rule: MemberAllowanceRule,
108
- expectedVersion: Version,
109
- })
110
- .strict();
146
+ export const SetMemberAllowanceRequest = /* @__PURE__ */ defineSchema(() =>
147
+ z
148
+ .object({
149
+ rule: MemberAllowanceRule,
150
+ expectedVersion: Version,
151
+ })
152
+ .strict(),
153
+ );
111
154
  export type SetMemberAllowanceRequest = z.infer<typeof SetMemberAllowanceRequest>;
112
- export const MemberAllowance = z
113
- .object({
114
- subjectId: SubjectId,
115
- rule: MemberAllowanceRule,
116
- version: Version,
117
- })
118
- .strict();
155
+ export const MemberAllowance = /* @__PURE__ */ defineSchema(() =>
156
+ z
157
+ .object({
158
+ subjectId: SubjectId,
159
+ rule: MemberAllowanceRule,
160
+ version: Version,
161
+ })
162
+ .strict(),
163
+ );
119
164
  export type MemberAllowance = z.infer<typeof MemberAllowance>;
120
165
 
121
- export const UsageAllowancePeriod = z.union([
122
- z.literal("current"),
123
- z.string().regex(/^\d{4}-(0[1-9]|1[0-2])$/),
124
- ]);
166
+ export const UsageAllowancePeriod = /* @__PURE__ */ defineSchema(() =>
167
+ z.union([z.literal("current"), primitives.string.regex(/^\d{4}-(0[1-9]|1[0-2])$/)]),
168
+ );
125
169
  export type UsageAllowancePeriod = z.infer<typeof UsageAllowancePeriod>;
126
- export const GetUsageRequest = z
127
- .object({
128
- period: UsageAllowancePeriod.optional(),
129
- limit: z.number().int().min(1).max(200).optional(),
130
- cursor: z.string().min(1).max(2048).optional(),
131
- })
132
- .strict();
170
+ export const GetUsageRequest = /* @__PURE__ */ defineSchema(() =>
171
+ z
172
+ .object({
173
+ period: UsageAllowancePeriod.optional(),
174
+ limit: z.number().int().min(1).max(200).optional(),
175
+ cursor: z.string().min(1).max(2048).optional(),
176
+ })
177
+ .strict(),
178
+ );
133
179
  export type GetUsageRequest = z.infer<typeof GetUsageRequest>;
134
- export const GetMyUsageRequest = GetUsageRequest.pick({ period: true });
180
+ export const GetMyUsageRequest = /* @__PURE__ */ defineSchema(() =>
181
+ GetUsageRequest.pick({ period: true }),
182
+ );
135
183
  export type GetMyUsageRequest = z.infer<typeof GetMyUsageRequest>;
136
184
 
137
- export const UsageAllowanceStatus = z.enum(["ok", "warning", "exhausted"]);
185
+ export const UsageAllowanceStatus = /* @__PURE__ */ defineSchema(() =>
186
+ z.enum(["ok", "warning", "exhausted"]),
187
+ );
138
188
  export type UsageAllowanceStatus = z.infer<typeof UsageAllowanceStatus>;
139
- export const UsageAllowanceWindow = z
140
- .object({
141
- start: Timestamp.nullable(),
142
- end: Timestamp.nullable(),
143
- })
144
- .strict();
189
+ export const UsageAllowanceWindow = /* @__PURE__ */ defineSchema(() =>
190
+ z
191
+ .object({
192
+ start: Timestamp.nullable(),
193
+ end: Timestamp.nullable(),
194
+ })
195
+ .strict(),
196
+ );
145
197
  export type UsageAllowanceWindow = z.infer<typeof UsageAllowanceWindow>;
146
- const Usage = z.object({
147
- limit: AllowanceCredits.nullable(),
148
- used: AllowanceCredits,
149
- remaining: z.number().int().safe().nullable(),
150
- /** Display this ratio rather than raw USD micros in human-facing products. */
151
- fraction: z.number().finite().nonnegative().nullable(),
152
- status: UsageAllowanceStatus,
153
- resetsAt: Timestamp.nullable(),
154
- });
155
- export const WorkspaceAllowanceUsage = Usage.extend({
156
- includedCredits: AllowanceCredits,
157
- grantsRemaining: AllowanceCredits,
158
- }).strict();
198
+ const Usage = /* @__PURE__ */ defineSchema(() =>
199
+ z.object({
200
+ limit: AllowanceCredits.nullable(),
201
+ used: AllowanceCredits,
202
+ remaining: z.number().int().safe().nullable(),
203
+ /** Display this ratio rather than raw USD micros in human-facing products. */
204
+ fraction: z.number().finite().nonnegative().nullable(),
205
+ status: UsageAllowanceStatus,
206
+ resetsAt: Timestamp.nullable(),
207
+ }),
208
+ );
209
+ export const WorkspaceAllowanceUsage = /* @__PURE__ */ defineSchema(() =>
210
+ Usage.extend({
211
+ includedCredits: AllowanceCredits,
212
+ grantsRemaining: AllowanceCredits,
213
+ }).strict(),
214
+ );
159
215
  export type WorkspaceAllowanceUsage = z.infer<typeof WorkspaceAllowanceUsage>;
160
- export const MemberAllowanceUsage = Usage.extend({
161
- subjectId: SubjectId,
162
- externalIdentity: z.object({ source: z.string(), externalId: z.string() }).strict().nullable(),
163
- rule: MemberAllowanceRule,
164
- version: Version,
165
- }).strict();
216
+ export const MemberAllowanceUsage = /* @__PURE__ */ defineSchema(() =>
217
+ Usage.extend({
218
+ subjectId: SubjectId,
219
+ externalIdentity: z
220
+ .object({ source: primitives.string, externalId: primitives.string })
221
+ .strict()
222
+ .nullable(),
223
+ rule: MemberAllowanceRule,
224
+ version: Version,
225
+ }).strict(),
226
+ );
166
227
  export type MemberAllowanceUsage = z.infer<typeof MemberAllowanceUsage>;
167
228
  /** /usage/me returns only the authenticated subject's member row, never the roster. */
168
- export const WorkspaceUsageResponse = z
169
- .object({
170
- period: UsageAllowanceWindow,
171
- workspace: WorkspaceAllowanceUsage,
172
- members: z.array(MemberAllowanceUsage),
173
- nextCursor: z.string().nullable(),
174
- })
175
- .strict();
229
+ export const WorkspaceUsageResponse = /* @__PURE__ */ defineSchema(() =>
230
+ z
231
+ .object({
232
+ /**
233
+ * The unit of every amount (`limit`, `used`, `remaining`,
234
+ * `includedCredits`, `grantsRemaining`): integer USD micros, 1 USD =
235
+ * 1,000,000. Absent from servers that predate it; the unit is the same.
236
+ */
237
+ unit: z.literal("usd_micros").optional(),
238
+ /**
239
+ * The window the counters cover. Without a configured budget this is
240
+ * still the calendar month (UTC) being counted; null when the window
241
+ * is unknown (a past month with no recorded history) or lifetime.
242
+ */
243
+ period: UsageAllowanceWindow,
244
+ workspace: WorkspaceAllowanceUsage,
245
+ members: z.array(MemberAllowanceUsage),
246
+ nextCursor: primitives.nullableString,
247
+ })
248
+ .strict(),
249
+ );
176
250
  export type WorkspaceUsageResponse = z.infer<typeof WorkspaceUsageResponse>;
177
251
 
178
- export const AllowanceExhaustedRefusal = z
179
- .object({
180
- code: z.literal("allowance_exhausted"),
181
- scope: z.enum(["workspace", "member"]),
182
- resetsAt: Timestamp.nullable(),
183
- subjectId: SubjectId.optional(),
184
- message: z.string(),
185
- })
186
- .strict();
252
+ export const AllowanceExhaustedRefusal = /* @__PURE__ */ defineSchema(() =>
253
+ z
254
+ .object({
255
+ code: z.literal("allowance_exhausted"),
256
+ scope: z.enum(["workspace", "member"]),
257
+ resetsAt: Timestamp.nullable(),
258
+ subjectId: SubjectId.optional(),
259
+ message: primitives.string,
260
+ })
261
+ .strict(),
262
+ );
187
263
  export type AllowanceExhaustedRefusal = z.infer<typeof AllowanceExhaustedRefusal>;
package/src/values.ts ADDED
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Small runtime helpers shared across packages. Dependency-free and safe in
3
+ * browsers, React Native, workers and servers, so any package can import
4
+ * `@opengeni/contracts/values` without pulling in zod or Node built-ins.
5
+ */
6
+
7
+ /** A non-null object that is not an array. */
8
+ export function isRecord(value: unknown): value is Record<string, unknown> {
9
+ return typeof value === "object" && value !== null && !Array.isArray(value);
10
+ }
11
+
12
+ /** An `Error`'s message, or the value converted to a string. */
13
+ export function errorMessage(error: unknown): string {
14
+ return error instanceof Error ? error.message : String(error);
15
+ }
16
+
17
+ /** Lowercase hex SHA-256 of bytes, or of a string's UTF-8 encoding, with Web Crypto. */
18
+ export async function sha256Hex(data: string | Uint8Array): Promise<string> {
19
+ // A copy hands Web Crypto a plain ArrayBuffer even for views over shared memory.
20
+ const bytes =
21
+ typeof data === "string" ? new TextEncoder().encode(data) : new Uint8Array(data.byteLength);
22
+ if (typeof data !== "string") bytes.set(data);
23
+ const digest = new Uint8Array(await globalThis.crypto.subtle.digest("SHA-256", bytes));
24
+ return Array.from(digest, (byte) => byte.toString(16).padStart(2, "0")).join("");
25
+ }