@opengeni/contracts 3.1.0-canary.1 → 3.1.2

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 (434) hide show
  1. package/dist/agent-authored-durable-text.d.ts +9 -9
  2. package/dist/agent-config.d.ts +971 -0
  3. package/dist/agent-instruction-changes.d.ts +110 -0
  4. package/dist/agent-learning.d.ts +243 -0
  5. package/dist/allowance-refusal.d.ts +9 -0
  6. package/dist/allowance-refusal.js +50 -0
  7. package/dist/allowance-refusal.js.map +1 -0
  8. package/dist/analytics-consent-report.d.ts +19 -0
  9. package/dist/analytics-consent-report.js +10 -0
  10. package/dist/analytics-consent-report.js.map +1 -0
  11. package/dist/api-key-presets.d.ts +19 -0
  12. package/dist/artifact-catalog.d.ts +188 -0
  13. package/dist/artifacts.d.ts +86 -0
  14. package/dist/atlassian-native-retirement.d.ts +16 -0
  15. package/dist/atlassian-native-retirement.js +30 -0
  16. package/dist/atlassian-native-retirement.js.map +1 -0
  17. package/dist/atlassian.d.ts +1 -0
  18. package/dist/atlassian.js +34 -19
  19. package/dist/browser-storage.d.ts +5 -0
  20. package/dist/browser-storage.js +9 -0
  21. package/dist/browser-storage.js.map +1 -0
  22. package/dist/bundled-skills.d.ts +24 -1
  23. package/dist/canonical-human-identities.js +2 -1
  24. package/dist/chunk-2ZIHHL72.js +153 -0
  25. package/dist/chunk-2ZIHHL72.js.map +1 -0
  26. package/dist/{chunk-5LYFSZ7O.js → chunk-352X6ENP.js} +31 -31
  27. package/dist/chunk-4JGHSSB7.js +11 -0
  28. package/dist/chunk-4JGHSSB7.js.map +1 -0
  29. package/dist/chunk-4QO6GJUX.js +85 -0
  30. package/dist/chunk-4QO6GJUX.js.map +1 -0
  31. package/dist/chunk-4VDMHLLL.js +49 -0
  32. package/dist/chunk-4VDMHLLL.js.map +1 -0
  33. package/dist/chunk-56SNIMDO.js +9 -0
  34. package/dist/chunk-56SNIMDO.js.map +1 -0
  35. package/dist/chunk-6C2HKFTU.js +207 -0
  36. package/dist/chunk-6C2HKFTU.js.map +1 -0
  37. package/dist/chunk-6IXO76Z6.js +72 -0
  38. package/dist/chunk-6IXO76Z6.js.map +1 -0
  39. package/dist/chunk-7272KVWZ.js +60 -0
  40. package/dist/chunk-7272KVWZ.js.map +1 -0
  41. package/dist/{chunk-7ABONTXE.js → chunk-E3GGUBHS.js} +49 -5
  42. package/dist/chunk-E3GGUBHS.js.map +1 -0
  43. package/dist/chunk-EFZYKUE2.js +767 -0
  44. package/dist/chunk-EFZYKUE2.js.map +1 -0
  45. package/dist/chunk-EKWNTOG3.js +154 -0
  46. package/dist/chunk-EKWNTOG3.js.map +1 -0
  47. package/dist/chunk-HABQ7ADB.js +234 -0
  48. package/dist/chunk-HABQ7ADB.js.map +1 -0
  49. package/dist/chunk-HRRU4QPI.js +91 -0
  50. package/dist/chunk-HRRU4QPI.js.map +1 -0
  51. package/dist/{chunk-3SIZGL3O.js → chunk-IK36LXKC.js} +18 -2
  52. package/dist/chunk-IK36LXKC.js.map +1 -0
  53. package/dist/{chunk-TXTQIYCV.js → chunk-ILJ72KPO.js} +56 -3
  54. package/dist/chunk-ILJ72KPO.js.map +1 -0
  55. package/dist/chunk-J4HQ3UKY.js +93 -0
  56. package/dist/chunk-J4HQ3UKY.js.map +1 -0
  57. package/dist/chunk-KHHZTBP7.js +11 -0
  58. package/dist/chunk-KHHZTBP7.js.map +1 -0
  59. package/dist/{chunk-WYBDERIY.js → chunk-LZ2LAHIX.js} +47 -41
  60. package/dist/chunk-LZ2LAHIX.js.map +1 -0
  61. package/dist/chunk-NDZHPTCL.js +400 -0
  62. package/dist/chunk-NDZHPTCL.js.map +1 -0
  63. package/dist/chunk-OF6OKOBF.js +54793 -0
  64. package/dist/chunk-OF6OKOBF.js.map +1 -0
  65. package/dist/chunk-OL23ARTF.js +94 -0
  66. package/dist/chunk-OL23ARTF.js.map +1 -0
  67. package/dist/chunk-PUIUXIOL.js +189 -0
  68. package/dist/chunk-PUIUXIOL.js.map +1 -0
  69. package/dist/{chunk-WBYTNVIW.js → chunk-RKX3NQYS.js} +1 -1
  70. package/dist/{chunk-Y3KNXVTD.js → chunk-RMWXDZEO.js} +128 -21
  71. package/dist/chunk-RMWXDZEO.js.map +1 -0
  72. package/dist/{chunk-MRWYRAS5.js → chunk-SHO4YO4B.js} +27 -35
  73. package/dist/chunk-SHO4YO4B.js.map +1 -0
  74. package/dist/chunk-SWRN2DJ3.js +153 -0
  75. package/dist/chunk-SWRN2DJ3.js.map +1 -0
  76. package/dist/chunk-TCXCRBPF.js +267 -0
  77. package/dist/chunk-TCXCRBPF.js.map +1 -0
  78. package/dist/chunk-TLU3UEMD.js +324 -0
  79. package/dist/chunk-TLU3UEMD.js.map +1 -0
  80. package/dist/chunk-TSWWZMUS.js +186 -0
  81. package/dist/chunk-TSWWZMUS.js.map +1 -0
  82. package/dist/{chunk-PX3VCKAU.js → chunk-WVCFSOUZ.js} +1 -1
  83. package/dist/{chunk-PX3VCKAU.js.map → chunk-WVCFSOUZ.js.map} +1 -1
  84. package/dist/chunk-XDLAGX66.js +127 -0
  85. package/dist/chunk-XDLAGX66.js.map +1 -0
  86. package/dist/chunk-YKZ4WU4P.js +33 -0
  87. package/dist/chunk-YKZ4WU4P.js.map +1 -0
  88. package/dist/{chunk-O5LEQHDM.js → chunk-Z7WEVGCL.js} +3 -3
  89. package/dist/{chunk-YBW5JSA3.js → chunk-ZDCRWCGZ.js} +119 -101
  90. package/dist/chunk-ZDCRWCGZ.js.map +1 -0
  91. package/dist/claude-provider-account-authority.d.ts +18 -0
  92. package/dist/claude-subscription-oauth.d.ts +42 -0
  93. package/dist/claude-subscription-usage.d.ts +159 -0
  94. package/dist/client-error-report.d.ts +158 -0
  95. package/dist/client-error-report.js +164 -0
  96. package/dist/client-error-report.js.map +1 -0
  97. package/dist/code-search.d.ts +52 -0
  98. package/dist/code-search.js +40 -0
  99. package/dist/code-search.js.map +1 -0
  100. package/dist/codex-provider-account-authority.js +20 -12
  101. package/dist/codex-provider-account-authority.js.map +1 -1
  102. package/dist/company-brain.d.ts +19 -81
  103. package/dist/company-profile.d.ts +144 -6
  104. package/dist/connect.d.ts +37 -0
  105. package/dist/connect.js +216 -159
  106. package/dist/connect.js.map +1 -1
  107. package/dist/connection-account-label.d.ts +2 -0
  108. package/dist/connection-account-label.js +35 -0
  109. package/dist/connection-account-label.js.map +1 -0
  110. package/dist/connection-authority.d.ts +9 -317
  111. package/dist/connection-authority.js +37 -42
  112. package/dist/connector-attachments.js +2 -1
  113. package/dist/connector-destinations.js +2 -1
  114. package/dist/connector-tool-permissions.d.ts +137 -0
  115. package/dist/cua-desktop-tools.d.ts +17 -0
  116. package/dist/define-schema.d.ts +8 -0
  117. package/dist/direct-model-provider.d.ts +36 -0
  118. package/dist/editable-artifact-codec-registry.js +5 -5
  119. package/dist/editable-artifact-committed-transaction.js +3 -2
  120. package/dist/editable-artifact-live.js +5 -5
  121. package/dist/editable-artifact-serialized-commit.js +6 -6
  122. package/dist/editable-artifact-versions.d.ts +7 -1
  123. package/dist/editable-artifact-versions.js +1 -1
  124. package/dist/editable-artifacts.js +62 -56
  125. package/dist/event-preview.d.ts +22 -0
  126. package/dist/external-identities.d.ts +174 -0
  127. package/dist/external-identities.js +15 -4
  128. package/dist/first-party-tool-authorization.d.ts +815 -0
  129. package/dist/github-repository-contracts.js +60 -43
  130. package/dist/github-repository-contracts.js.map +1 -1
  131. package/dist/google-drive.d.ts +2 -1
  132. package/dist/google-drive.js +305 -238
  133. package/dist/google-drive.js.map +1 -1
  134. package/dist/host-mcp-bindings.d.ts +39 -10
  135. package/dist/host-mcp-bindings.js +256 -171
  136. package/dist/host-mcp-bindings.js.map +1 -1
  137. package/dist/image-generation.d.ts +1 -0
  138. package/dist/index.d.ts +15715 -3850
  139. package/dist/index.js +2088 -289
  140. package/dist/insights-usage.d.ts +877 -0
  141. package/dist/insights-usage.js +559 -0
  142. package/dist/insights-usage.js.map +1 -0
  143. package/dist/interaction.d.ts +1176 -829
  144. package/dist/knowledge-entries.d.ts +984 -0
  145. package/dist/knowledge-preparation.d.ts +239 -0
  146. package/dist/managed-auth-session-sets.d.ts +7 -0
  147. package/dist/managed-auth-session-sets.js +198 -132
  148. package/dist/managed-auth-session-sets.js.map +1 -1
  149. package/dist/managed-sign-in-methods.d.ts +56 -0
  150. package/dist/managed-sign-in-methods.js +64 -0
  151. package/dist/managed-sign-in-methods.js.map +1 -0
  152. package/dist/mcp-catalog-limits.d.ts +2 -0
  153. package/dist/mcp-endpoint.js +9 -0
  154. package/dist/mcp-endpoint.js.map +1 -0
  155. package/dist/mcp-oauth.d.ts +2 -2
  156. package/dist/mcp-structured-content.d.ts +25 -0
  157. package/dist/modal-native-proof-v2.d.ts +587 -0
  158. package/dist/modal-native-proof-v2.js +38 -0
  159. package/dist/modal-native-proof-v2.js.map +1 -0
  160. package/dist/model-account-choice.d.ts +235 -0
  161. package/dist/model-account-settings.d.ts +422 -0
  162. package/dist/model-availability.d.ts +15 -0
  163. package/dist/model-connection-access.d.ts +13 -0
  164. package/dist/model-context-inspector.d.ts +98 -0
  165. package/dist/model-display.d.ts +43 -0
  166. package/dist/model-display.js +17 -0
  167. package/dist/model-display.js.map +1 -0
  168. package/dist/model-picker-order.d.ts +3 -1
  169. package/dist/model-picker-order.js +3 -0
  170. package/dist/model-picker-order.js.map +1 -1
  171. package/dist/organization-access.d.ts +412 -0
  172. package/dist/organization-access.js +39 -0
  173. package/dist/organization-access.js.map +1 -0
  174. package/dist/organization-integration-policy.d.ts +27 -0
  175. package/dist/organization-membership-lifecycle.d.ts +38 -0
  176. package/dist/organization-model-usage.d.ts +146 -0
  177. package/dist/organization-model-usage.js +78 -0
  178. package/dist/organization-model-usage.js.map +1 -0
  179. package/dist/organization-recovery.js +2 -1
  180. package/dist/organization-usage.d.ts +138 -0
  181. package/dist/permissions.d.ts +18 -0
  182. package/dist/personal-github.d.ts +1 -0
  183. package/dist/personal-github.js +199 -144
  184. package/dist/personal-github.js.map +1 -1
  185. package/dist/plugin-discovery.js +1 -1
  186. package/dist/prepared-mcp-setup.d.ts +54 -0
  187. package/dist/prepared-mcp-setup.js +12 -0
  188. package/dist/prepared-mcp-setup.js.map +1 -0
  189. package/dist/product-analytics.d.ts +116 -0
  190. package/dist/product-lifecycle-facts.d.ts +73 -0
  191. package/dist/remember.d.ts +98 -6
  192. package/dist/retained-output.d.ts +8 -0
  193. package/dist/sandbox-file-artifacts.d.ts +1 -0
  194. package/dist/sandbox-provider-command.d.ts +91 -1
  195. package/dist/sandbox-recovery.d.ts +146 -0
  196. package/dist/secret-generator.d.ts +44 -0
  197. package/dist/secret-references.d.ts +90 -0
  198. package/dist/secret-resolution.d.ts +111 -0
  199. package/dist/secret-totp.d.ts +41 -0
  200. package/dist/session-final-reply.d.ts +6 -0
  201. package/dist/session-final-reply.js +9 -0
  202. package/dist/session-final-reply.js.map +1 -0
  203. package/dist/session-goal-reports.d.ts +21 -0
  204. package/dist/session-history-import.d.ts +1272 -0
  205. package/dist/session-list-entries.d.ts +4 -0
  206. package/dist/session-list-entries.js +56 -0
  207. package/dist/session-list-entries.js.map +1 -0
  208. package/dist/session-mcp-projections.d.ts +6 -0
  209. package/dist/session-mcp-tool-permissions.d.ts +62 -0
  210. package/dist/session-message-search.d.ts +68 -0
  211. package/dist/session-target.d.ts +18 -0
  212. package/dist/session-titles.d.ts +8 -0
  213. package/dist/session-titles.js +5 -1
  214. package/dist/session-usage-limit-refusal.d.ts +34 -0
  215. package/dist/session-usage-limit-refusal.js +15 -0
  216. package/dist/session-usage-limit-refusal.js.map +1 -0
  217. package/dist/session-usage-limits.d.ts +127 -0
  218. package/dist/session-usage-limits.js +41 -0
  219. package/dist/session-usage-limits.js.map +1 -0
  220. package/dist/signup-attribution.d.ts +39 -0
  221. package/dist/site-data.d.ts +286 -0
  222. package/dist/site-operations.d.ts +39 -0
  223. package/dist/site-publishing.d.ts +778 -0
  224. package/dist/site-session-http.d.ts +89 -4
  225. package/dist/site-session-http.js +25 -1
  226. package/dist/site-sql.d.ts +421 -0
  227. package/dist/skill-catalog-context.d.ts +7 -0
  228. package/dist/skill-files.d.ts +1 -1
  229. package/dist/skill-use.d.ts +61 -0
  230. package/dist/skills.d.ts +15 -0
  231. package/dist/slack-bot-scopes.d.ts +17 -12
  232. package/dist/slack-bot-scopes.js +10 -3
  233. package/dist/slack-rest-mcp.d.ts +36 -0
  234. package/dist/slack-rest-mcp.js +25 -0
  235. package/dist/slack-rest-mcp.js.map +1 -0
  236. package/dist/spreadsheet-artifact-commands.d.ts +14 -1
  237. package/dist/spreadsheet-artifact-commands.js +8 -2
  238. package/dist/spreadsheet-artifact-query.d.ts +13 -6
  239. package/dist/spreadsheet-artifact-query.js +3 -3
  240. package/dist/subscription-account-actions.d.ts +64 -0
  241. package/dist/subscription-account-pools.d.ts +292 -0
  242. package/dist/subscription-personal-authority-v2.d.ts +28 -0
  243. package/dist/subscription-personal-authority-v2.js +12 -0
  244. package/dist/subscription-personal-authority-v2.js.map +1 -0
  245. package/dist/tool-action-review.d.ts +132 -0
  246. package/dist/tool-catalog.d.ts +408 -0
  247. package/dist/tool-policy.d.ts +5 -0
  248. package/dist/tool-review-presentation.d.ts +12 -0
  249. package/dist/tool-review-presentation.js +17 -0
  250. package/dist/tool-review-presentation.js.map +1 -0
  251. package/dist/transcription-recordings.d.ts +21 -0
  252. package/dist/turn-serving-policy.d.ts +221 -0
  253. package/dist/usage-allowances.d.ts +314 -0
  254. package/dist/usage-allowances.js +52 -0
  255. package/dist/usage-allowances.js.map +1 -0
  256. package/dist/vaults.d.ts +1286 -0
  257. package/dist/video-generation.d.ts +3 -0
  258. package/dist/video-generation.js +2 -1
  259. package/dist/workspace-instruction-policies.d.ts +13 -0
  260. package/dist/workspace-integration-wire.d.ts +36 -0
  261. package/dist/workspace-integration-wire.js +23 -0
  262. package/dist/workspace-integration-wire.js.map +1 -0
  263. package/dist/workspace-integrations.d.ts +1028 -0
  264. package/dist/workspace-state.d.ts +85 -416
  265. package/dist/xai-provider-account-authority.js +2 -1
  266. package/package.json +98 -2
  267. package/src/agent-authored-durable-text.ts +14 -11
  268. package/src/agent-config.ts +1698 -0
  269. package/src/agent-instruction-changes.ts +115 -0
  270. package/src/agent-learning.ts +188 -0
  271. package/src/agent-topology.ts +57 -52
  272. package/src/allowance-refusal.ts +81 -0
  273. package/src/analytics-consent-report.ts +20 -0
  274. package/src/api-key-presets.ts +28 -0
  275. package/src/artifact-catalog.ts +82 -0
  276. package/src/artifacts.ts +299 -227
  277. package/src/atlassian-native-retirement.ts +33 -0
  278. package/src/atlassian.ts +135 -108
  279. package/src/browser-storage.ts +10 -0
  280. package/src/bundled-skills.ts +60 -17
  281. package/src/canonical-human-identities.ts +60 -58
  282. package/src/claude-provider-account-authority.ts +12 -0
  283. package/src/claude-subscription-oauth.ts +73 -0
  284. package/src/claude-subscription-usage.ts +68 -0
  285. package/src/client-error-report.ts +343 -0
  286. package/src/code-search.ts +105 -0
  287. package/src/codex-provider-account-authority.ts +21 -16
  288. package/src/company-brain-governed-writes.ts +255 -233
  289. package/src/company-brain.ts +164 -153
  290. package/src/company-profile.ts +365 -292
  291. package/src/connect.ts +212 -173
  292. package/src/connection-account-label.ts +46 -0
  293. package/src/connection-authority.ts +183 -364
  294. package/src/connector-attachments.ts +137 -122
  295. package/src/connector-destinations.ts +46 -42
  296. package/src/connector-tool-permissions.ts +117 -0
  297. package/src/cua-desktop-tools.gen.json +6512 -0
  298. package/src/cua-desktop-tools.linux.gen.json +6600 -0
  299. package/src/cua-desktop-tools.ts +36 -0
  300. package/src/cua-desktop-tools.windows.gen.json +6353 -0
  301. package/src/define-schema.ts +10 -0
  302. package/src/direct-model-provider.ts +108 -0
  303. package/src/editable-artifact-committed-transaction.ts +17 -0
  304. package/src/editable-artifact-versions.ts +7 -1
  305. package/src/event-preview.ts +53 -3
  306. package/src/external-identities.ts +262 -145
  307. package/src/feedback.ts +43 -30
  308. package/src/first-party-tool-authorization.ts +356 -0
  309. package/src/github-repository-contracts.ts +78 -64
  310. package/src/google-drive.ts +285 -234
  311. package/src/governed-learning-activation.ts +152 -131
  312. package/src/governed-learning-evaluator.ts +140 -133
  313. package/src/host-mcp-bindings.ts +292 -198
  314. package/src/image-generation.ts +104 -95
  315. package/src/index.ts +13354 -8654
  316. package/src/insights-usage.ts +727 -0
  317. package/src/interaction.ts +3070 -2326
  318. package/src/knowledge-entries.ts +428 -0
  319. package/src/knowledge-preparation.ts +57 -0
  320. package/src/knowledge.ts +246 -213
  321. package/src/managed-auth-session-sets.ts +220 -144
  322. package/src/managed-sign-in-methods.ts +52 -0
  323. package/src/mcp-catalog-limits.ts +2 -0
  324. package/src/mcp-oauth.ts +43 -34
  325. package/src/mcp-receipts.ts +192 -192
  326. package/src/mcp-structured-content.ts +81 -0
  327. package/src/memory-slack-delivery.ts +171 -142
  328. package/src/modal-native-proof-v2.ts +429 -0
  329. package/src/model-account-choice.ts +177 -0
  330. package/src/model-account-settings.ts +210 -0
  331. package/src/model-availability.ts +22 -0
  332. package/src/model-connection-access.ts +61 -14
  333. package/src/model-context-inspector.ts +133 -99
  334. package/src/model-display.ts +221 -0
  335. package/src/model-picker-order.ts +12 -1
  336. package/src/organization-access.ts +217 -0
  337. package/src/organization-integration-policy.ts +63 -0
  338. package/src/organization-membership-lifecycle.ts +528 -382
  339. package/src/organization-model-usage.ts +81 -0
  340. package/src/organization-recovery.ts +147 -135
  341. package/src/organization-usage.ts +94 -0
  342. package/src/permissions.ts +88 -52
  343. package/src/personal-github.ts +210 -171
  344. package/src/preference-registry.ts +314 -258
  345. package/src/prepared-mcp-setup.ts +189 -0
  346. package/src/product-analytics.ts +261 -0
  347. package/src/product-lifecycle-facts.ts +122 -0
  348. package/src/remember.ts +181 -167
  349. package/src/retained-output.ts +194 -165
  350. package/src/sandbox-file-artifacts.ts +60 -47
  351. package/src/sandbox-provider-command.ts +88 -20
  352. package/src/sandbox-recovery.ts +129 -0
  353. package/src/scoped-knowledge.ts +61 -43
  354. package/src/secret-generator.ts +155 -0
  355. package/src/secret-references.ts +414 -0
  356. package/src/secret-resolution.ts +274 -0
  357. package/src/secret-totp.ts +188 -0
  358. package/src/session-final-reply.ts +16 -0
  359. package/src/session-goal-reports.ts +64 -0
  360. package/src/session-history-import.ts +177 -0
  361. package/src/session-list-entries.ts +96 -0
  362. package/src/session-mcp-projections.ts +11 -0
  363. package/src/session-mcp-tool-permissions.ts +108 -0
  364. package/src/session-message-search.ts +61 -0
  365. package/src/session-target.ts +57 -0
  366. package/src/session-titles.ts +80 -10
  367. package/src/session-topology-primitives.ts +19 -12
  368. package/src/session-usage-limit-refusal.ts +101 -0
  369. package/src/session-usage-limits.ts +171 -0
  370. package/src/signup-attribution.ts +86 -0
  371. package/src/site-data.ts +339 -0
  372. package/src/site-operations.ts +154 -0
  373. package/src/site-publishing.ts +876 -0
  374. package/src/site-session-http.ts +294 -16
  375. package/src/site-sql.ts +1123 -0
  376. package/src/skill-catalog-context.ts +50 -0
  377. package/src/skill-files.ts +3 -3
  378. package/src/skill-use.ts +80 -0
  379. package/src/skills.ts +82 -54
  380. package/src/slack-bot-scopes.ts +31 -39
  381. package/src/slack-rest-mcp.ts +222 -0
  382. package/src/slack-task-policy.ts +96 -73
  383. package/src/spreadsheet-artifact-commands.ts +73 -2
  384. package/src/spreadsheet-artifact-query.ts +187 -39
  385. package/src/subscription-account-actions.ts +84 -0
  386. package/src/subscription-account-pools.ts +53 -0
  387. package/src/subscription-personal-authority-v2.ts +66 -0
  388. package/src/task-notes.ts +55 -51
  389. package/src/tool-action-review.ts +258 -0
  390. package/src/tool-catalog.ts +609 -372
  391. package/src/tool-policy.ts +82 -0
  392. package/src/tool-result-spill.ts +12 -9
  393. package/src/tool-review-presentation.ts +385 -0
  394. package/src/transcription-recordings.ts +145 -131
  395. package/src/turn-serving-policy.ts +166 -0
  396. package/src/usage-allowances.ts +248 -0
  397. package/src/vaults.ts +850 -0
  398. package/src/video-generation.ts +385 -360
  399. package/src/work-claims.ts +173 -149
  400. package/src/workspace-instruction-policies.ts +349 -275
  401. package/src/workspace-integration-wire.ts +101 -0
  402. package/src/workspace-integrations.ts +724 -0
  403. package/src/workspace-learning-administration.ts +57 -44
  404. package/src/workspace-learning-policy.ts +127 -96
  405. package/src/workspace-state.ts +253 -333
  406. package/src/xai-provider-account-authority.ts +22 -17
  407. package/dist/chunk-3SIZGL3O.js.map +0 -1
  408. package/dist/chunk-7ABONTXE.js.map +0 -1
  409. package/dist/chunk-BCS7WHCK.js +0 -139
  410. package/dist/chunk-BCS7WHCK.js.map +0 -1
  411. package/dist/chunk-GRG7PHWQ.js +0 -25
  412. package/dist/chunk-GRG7PHWQ.js.map +0 -1
  413. package/dist/chunk-JUFK3T4Q.js +0 -80
  414. package/dist/chunk-JUFK3T4Q.js.map +0 -1
  415. package/dist/chunk-M5ZGRVIQ.js +0 -719
  416. package/dist/chunk-M5ZGRVIQ.js.map +0 -1
  417. package/dist/chunk-MRWYRAS5.js.map +0 -1
  418. package/dist/chunk-OSBYTE3O.js +0 -348
  419. package/dist/chunk-OSBYTE3O.js.map +0 -1
  420. package/dist/chunk-P3HLDT77.js +0 -59
  421. package/dist/chunk-P3HLDT77.js.map +0 -1
  422. package/dist/chunk-TEMFILR7.js +0 -143
  423. package/dist/chunk-TEMFILR7.js.map +0 -1
  424. package/dist/chunk-TXTQIYCV.js.map +0 -1
  425. package/dist/chunk-UR2GFYIE.js +0 -22598
  426. package/dist/chunk-UR2GFYIE.js.map +0 -1
  427. package/dist/chunk-WYBDERIY.js.map +0 -1
  428. package/dist/chunk-Y3KNXVTD.js.map +0 -1
  429. package/dist/chunk-YBW5JSA3.js.map +0 -1
  430. package/dist/chunk-YRXAWWCU.js +0 -45
  431. package/dist/chunk-YRXAWWCU.js.map +0 -1
  432. /package/dist/{chunk-5LYFSZ7O.js.map → chunk-352X6ENP.js.map} +0 -0
  433. /package/dist/{chunk-WBYTNVIW.js.map → chunk-RKX3NQYS.js.map} +0 -0
  434. /package/dist/{chunk-O5LEQHDM.js.map → chunk-Z7WEVGCL.js.map} +0 -0
@@ -1,115 +1,204 @@
1
+ import { defineSchema } from "./define-schema";
1
2
  import { z } from "zod";
2
3
  export { HostMcpCreateSelections, type HostMcpCreateSelection } from "./index";
3
- import { McpServerConnectionRef, SessionTenancyVisibility } from "./index";
4
4
  import {
5
- ConnectionUseAuthoritySnapshot,
6
- IssueConnectionUseGrantRequest,
7
- } from "./connection-authority";
5
+ McpServerConnectionRef,
6
+ SessionTenancyVisibility,
7
+ ManagedUserResourceGrantMode,
8
+ stableJson,
9
+ } from "./index";
10
+ import { ConnectionUseAuthoritySnapshot } from "./connection-authority";
8
11
  import { ExternalIdentity } from "./external-identities";
9
- export const HostMcpOwnerSubject = z.union([
10
- ExternalIdentity.shape.subjectId,
11
- z
12
- .string()
13
- .max(4096)
14
- .regex(/^user:[^\r\n\u0000]+$/),
15
- ]);
16
-
17
- /** Credential-free, immutable destination and host connection selection. */
18
- export const HostMcpBindingDefinition = z
19
- .object({
20
- serverId: z.string().min(1).max(256),
21
- destinationUrl: z
12
+ export const HostMcpOwnerSubject = /* @__PURE__ */ defineSchema(() =>
13
+ z.union([
14
+ ExternalIdentity.shape.subjectId,
15
+ z
22
16
  .string()
23
- .url()
24
17
  .max(4096)
25
- .refine((value) => {
26
- const url = new URL(value);
27
- return url.protocol === "https:" && !url.username && !url.password && !url.hash;
28
- }, "Host binding requires an HTTPS destination without userinfo or fragment")
29
- .transform((value) => new URL(value).toString()),
30
- connectionRef: McpServerConnectionRef,
31
- })
32
- .strict()
33
- .superRefine((value, context) => {
34
- if (value.connectionRef.hostBinding)
35
- context.addIssue({
36
- code: "custom",
37
- path: ["connectionRef", "hostBinding"],
38
- message: "A binding definition cannot reference another binding",
39
- });
40
- if (value.connectionRef.authoritySource !== "host" || !value.connectionRef.connectionId)
41
- context.addIssue({
42
- code: "custom",
43
- path: ["connectionRef"],
44
- message: "Explicit host connection authority is required",
45
- });
46
- if (new TextEncoder().encode(JSON.stringify(value)).byteLength > 65_536)
47
- context.addIssue({ code: "custom", message: "Host binding definition exceeds 64 KiB" });
48
- });
18
+ .regex(/^user:[^\r\n\u0000]+$/),
19
+ ]),
20
+ );
21
+
22
+ /** Credential-free, immutable destination and host connection selection. */
23
+ export const HostMcpBindingDefinition = /* @__PURE__ */ defineSchema(() =>
24
+ z
25
+ .object({
26
+ serverId: z.string().min(1).max(256),
27
+ destinationUrl: z
28
+ .string()
29
+ .url()
30
+ .max(4096)
31
+ .refine((value) => {
32
+ const url = new URL(value);
33
+ return url.protocol === "https:" && !url.username && !url.password && !url.hash;
34
+ }, "Host binding requires an HTTPS destination without userinfo or fragment")
35
+ .transform((value) => new URL(value).toString()),
36
+ connectionRef: McpServerConnectionRef,
37
+ })
38
+ .strict()
39
+ .superRefine((value, context) => {
40
+ if (value.connectionRef.hostBinding)
41
+ context.addIssue({
42
+ code: "custom",
43
+ path: ["connectionRef", "hostBinding"],
44
+ message: "A binding definition cannot reference another binding",
45
+ });
46
+ if (value.connectionRef.authoritySource !== "host" || !value.connectionRef.connectionId)
47
+ context.addIssue({
48
+ code: "custom",
49
+ path: ["connectionRef"],
50
+ message: "Explicit host connection authority is required",
51
+ });
52
+ if (new TextEncoder().encode(JSON.stringify(value)).byteLength > 65_536)
53
+ context.addIssue({ code: "custom", message: "Host binding definition exceeds 64 KiB" });
54
+ }),
55
+ );
49
56
  export type HostMcpBindingDefinition = z.infer<typeof HostMcpBindingDefinition>;
50
57
 
51
- export const HostMcpBinding = z
52
- .object({
53
- id: z.string().uuid(),
54
- accountId: z.string().uuid(),
55
- workspaceId: z.string().uuid(),
56
- ownerSubjectId: HostMcpOwnerSubject,
57
- authorizationRevision: z.number().int().positive().safe(),
58
- generation: z.number().int().positive().safe(),
59
- status: z.enum(["active", "revoked"]),
60
- definition: HostMcpBindingDefinition,
61
- createdAt: z.string().datetime({ offset: true }),
62
- revokedAt: z.string().datetime({ offset: true }).nullable(),
63
- })
64
- .strict();
58
+ /** Configuration ceiling, never execution authority. The complete destination
59
+ * and provider/scope/resource selection stay exact; only the account identifier
60
+ * is chosen by a captured owner grant in explicit accepted-turn mode. */
61
+ export type HostMcpBindingSelection = {
62
+ serverId: string;
63
+ destinationUrl: string;
64
+ connectionRef: McpServerConnectionRef;
65
+ };
66
+
67
+ export function hostMcpBindingMatchesSelection(
68
+ binding: { id: string; generation: number; definition: HostMcpBindingDefinition },
69
+ selection: HostMcpBindingSelection,
70
+ ): boolean {
71
+ const parsed = McpServerConnectionRef.safeParse(selection.connectionRef);
72
+ if (!parsed.success || !parsed.data.hostBinding) return false;
73
+ const { hostBinding, ...configuredRef } = parsed.data;
74
+ const definition = HostMcpBindingDefinition.safeParse(binding.definition);
75
+ if (!definition.success) return false;
76
+ let destinationUrl: string;
77
+ try {
78
+ destinationUrl = new URL(selection.destinationUrl).toString();
79
+ } catch {
80
+ return false;
81
+ }
82
+ if (
83
+ selection.serverId !== definition.data.serverId ||
84
+ destinationUrl !== definition.data.destinationUrl
85
+ )
86
+ return false;
87
+ if ("selection" in hostBinding) {
88
+ const { connectionId: _connectionId, ...selectedRef } = definition.data.connectionRef;
89
+ return stableJson(configuredRef) === stableJson(selectedRef);
90
+ }
91
+ return (
92
+ binding.id === hostBinding.bindingId &&
93
+ binding.generation === hostBinding.generation &&
94
+ stableJson(configuredRef) === stableJson(definition.data.connectionRef)
95
+ );
96
+ }
97
+
98
+ export const HostMcpBinding = /* @__PURE__ */ defineSchema(() =>
99
+ z
100
+ .object({
101
+ id: z.string().uuid(),
102
+ accountId: z.string().uuid(),
103
+ workspaceId: z.string().uuid(),
104
+ ownerSubjectId: HostMcpOwnerSubject,
105
+ authorizationRevision: z.number().int().positive().safe(),
106
+ generation: z.number().int().positive().safe(),
107
+ status: z.enum(["active", "revoked"]),
108
+ definition: HostMcpBindingDefinition,
109
+ createdAt: z.string().datetime({ offset: true }),
110
+ revokedAt: z.string().datetime({ offset: true }).nullable(),
111
+ })
112
+ .strict(),
113
+ );
65
114
  export type HostMcpBinding = z.infer<typeof HostMcpBinding>;
66
115
 
67
- export const CreateHostMcpBindingRequest = z
68
- .object({
69
- operationId: z.string().uuid(),
70
- definition: HostMcpBindingDefinition,
71
- })
72
- .strict();
116
+ export const CreateHostMcpBindingRequest = /* @__PURE__ */ defineSchema(() =>
117
+ z
118
+ .object({
119
+ operationId: z.string().uuid(),
120
+ definition: HostMcpBindingDefinition,
121
+ })
122
+ .strict(),
123
+ );
73
124
  export type CreateHostMcpBindingRequest = z.infer<typeof CreateHostMcpBindingRequest>;
74
125
 
126
+ const HostMcpGrantRequest = /* @__PURE__ */ defineSchema(() =>
127
+ z
128
+ .object({
129
+ scope: z.literal("user"),
130
+ mode: ManagedUserResourceGrantMode,
131
+ context: SessionTenancyVisibility,
132
+ sessionId: z.string().uuid().nullable().optional(),
133
+ expectedAuthorityEpoch: z.number().int().positive().nullable().optional(),
134
+ workspaceSharedAcknowledged: z.boolean().default(false),
135
+ })
136
+ .strict()
137
+ .superRefine((value, context) => {
138
+ if (value.context === "workspace_shared" && !value.workspaceSharedAcknowledged) {
139
+ context.addIssue({
140
+ code: "custom",
141
+ path: ["workspaceSharedAcknowledged"],
142
+ message: "workspace_shared requires durable shared-output acknowledgement",
143
+ });
144
+ }
145
+ if (value.mode === "always" && (value.sessionId || value.expectedAuthorityEpoch)) {
146
+ context.addIssue({ code: "custom", path: ["sessionId"], message: "always is unbound" });
147
+ }
148
+ if (value.mode === "session" && (!value.sessionId || !value.expectedAuthorityEpoch)) {
149
+ context.addIssue({
150
+ code: "custom",
151
+ path: ["sessionId"],
152
+ message: "session requires a target session and expectedAuthorityEpoch",
153
+ });
154
+ }
155
+ }),
156
+ );
157
+
75
158
  /** Internal owner-authorized issuance; never itself proves caller identity. */
76
- const HostMcpDelegationGrant = IssueConnectionUseGrantRequest.superRefine((value, context) => {
77
- if (
78
- Boolean(value.sessionId) !== (value.expectedAuthorityEpoch != null) ||
79
- (value.expectedAuthorityEpoch != null && !Number.isSafeInteger(value.expectedAuthorityEpoch))
80
- ) {
81
- context.addIssue({
82
- code: "custom",
83
- message: "Host session grants require a matching safe authority epoch",
84
- });
85
- }
86
- });
87
- export const IssueHostMcpDelegationRequest = z
88
- .object({
89
- operationId: z.string().uuid(),
90
- bindingId: z.string().uuid(),
91
- expectedBindingGeneration: z.number().int().positive().safe(),
92
- grant: HostMcpDelegationGrant,
93
- })
94
- .strict();
159
+ const HostMcpDelegationGrant = /* @__PURE__ */ defineSchema(() =>
160
+ HostMcpGrantRequest.superRefine((value, context) => {
161
+ if (
162
+ Boolean(value.sessionId) !== (value.expectedAuthorityEpoch != null) ||
163
+ (value.expectedAuthorityEpoch != null && !Number.isSafeInteger(value.expectedAuthorityEpoch))
164
+ ) {
165
+ context.addIssue({
166
+ code: "custom",
167
+ message: "Host session grants require a matching safe authority epoch",
168
+ });
169
+ }
170
+ }),
171
+ );
172
+ export const IssueHostMcpDelegationRequest = /* @__PURE__ */ defineSchema(() =>
173
+ z
174
+ .object({
175
+ operationId: z.string().uuid(),
176
+ bindingId: z.string().uuid(),
177
+ expectedBindingGeneration: z.number().int().positive().safe(),
178
+ grant: HostMcpDelegationGrant,
179
+ })
180
+ .strict(),
181
+ );
95
182
  export type IssueHostMcpDelegationRequest = z.infer<typeof IssueHostMcpDelegationRequest>;
96
183
 
97
- export const HostMcpDelegation = z
98
- .object({
99
- id: z.string().uuid(),
100
- accountId: z.string().uuid(),
101
- workspaceId: z.string().uuid(),
102
- ownerSubjectId: HostMcpOwnerSubject,
103
- ownerAuthorizationRevision: z.number().int().positive().safe(),
104
- bindingId: z.string().uuid(),
105
- bindingGeneration: z.number().int().positive().safe(),
106
- grant: HostMcpDelegationGrant,
107
- generation: z.number().int().positive().safe(),
108
- status: z.enum(["active", "revoked"]),
109
- createdAt: z.string().datetime({ offset: true }),
110
- revokedAt: z.string().datetime({ offset: true }).nullable(),
111
- })
112
- .strict();
184
+ export const HostMcpDelegation = /* @__PURE__ */ defineSchema(() =>
185
+ z
186
+ .object({
187
+ id: z.string().uuid(),
188
+ accountId: z.string().uuid(),
189
+ workspaceId: z.string().uuid(),
190
+ ownerSubjectId: HostMcpOwnerSubject,
191
+ ownerAuthorizationRevision: z.number().int().positive().safe(),
192
+ bindingId: z.string().uuid(),
193
+ bindingGeneration: z.number().int().positive().safe(),
194
+ grant: HostMcpDelegationGrant,
195
+ generation: z.number().int().positive().safe(),
196
+ status: z.enum(["active", "revoked"]),
197
+ createdAt: z.string().datetime({ offset: true }),
198
+ revokedAt: z.string().datetime({ offset: true }).nullable(),
199
+ })
200
+ .strict(),
201
+ );
113
202
  export type HostMcpDelegation = z.infer<typeof HostMcpDelegation>;
114
203
 
115
204
  /** Internal admission evidence, not a caller-supplied permission or credential.
@@ -117,110 +206,115 @@ export type HostMcpDelegation = z.infer<typeof HostMcpDelegation>;
117
206
  * it with accepted work. Runtime use must independently revalidate that work,
118
207
  * membership, binding and delegation. No API key is retained as execution rights.
119
208
  */
120
- export const HostMcpAcceptedAuthority = z
121
- .object({
122
- version: z.literal(1),
123
- accountId: z.string().uuid(),
124
- workspaceId: z.string().uuid(),
125
- targetSessionId: z.string().uuid(),
126
- targetSessionVisibility: SessionTenancyVisibility,
127
- targetSessionAuthorityEpoch: z.number().int().positive().safe(),
128
- acceptedWork: ConnectionUseAuthoritySnapshot.shape.acceptedWork,
129
- bindingId: z.string().uuid(),
130
- bindingGeneration: z.number().int().positive().safe(),
131
- definition: HostMcpBindingDefinition,
132
- ownerSubjectId: HostMcpOwnerSubject,
133
- ownerOrganizationMembershipId: z.string().uuid(),
134
- ownerMembershipAuthorizationRevision: z.number().int().positive().safe(),
135
- delegationId: z.string().uuid(),
136
- delegationGeneration: z.number().int().positive().safe(),
137
- scheduledOrigin: z
138
- .object({
139
- taskId: z.string().uuid(),
140
- taskAuthorityRevision: z.number().int().positive().safe(),
141
- runId: z.string().uuid(),
142
- })
143
- .strict()
144
- .optional(),
145
- source: z.discriminatedUnion("kind", [
146
- z.object({ kind: z.literal("direct") }).strict(),
147
- z.object({ kind: z.literal("scheduled_task") }).strict(),
148
- z
149
- .object({
150
- kind: z.literal("child_turn"),
151
- sessionId: z.string().uuid(),
152
- turnId: z.string().uuid(),
153
- })
154
- .strict(),
155
- z
209
+ export const HostMcpAcceptedAuthority = /* @__PURE__ */ defineSchema(() =>
210
+ z
211
+ .object({
212
+ version: z.literal(1),
213
+ accountId: z.string().uuid(),
214
+ workspaceId: z.string().uuid(),
215
+ targetSessionId: z.string().uuid(),
216
+ targetSessionVisibility: SessionTenancyVisibility,
217
+ targetSessionAuthorityEpoch: z.number().int().positive().safe(),
218
+ acceptedWork: ConnectionUseAuthoritySnapshot.shape.acceptedWork,
219
+ bindingId: z.string().uuid(),
220
+ bindingGeneration: z.number().int().positive().safe(),
221
+ definition: HostMcpBindingDefinition,
222
+ ownerSubjectId: HostMcpOwnerSubject,
223
+ ownerOrganizationMembershipId: z.string().uuid(),
224
+ ownerMembershipAuthorizationRevision: z.number().int().positive().safe(),
225
+ delegationId: z.string().uuid(),
226
+ delegationGeneration: z.number().int().positive().safe(),
227
+ scheduledOrigin: z
156
228
  .object({
157
- kind: z.literal("inherited_turn"),
158
- sessionId: z.string().uuid(),
159
- turnId: z.string().uuid(),
229
+ taskId: z.string().uuid(),
230
+ taskAuthorityRevision: z.number().int().positive().safe(),
231
+ runId: z.string().uuid(),
160
232
  })
161
- .strict(),
162
- ]),
163
- })
164
- .strict()
165
- .superRefine((value, context) => {
166
- if (
167
- (value.source.kind === "direct" && value.scheduledOrigin) ||
168
- (value.source.kind === "scheduled_task" &&
169
- (!value.scheduledOrigin ||
170
- value.acceptedWork.kind !== "scheduled_task" ||
171
- value.scheduledOrigin.taskId !== value.acceptedWork.taskId ||
172
- value.scheduledOrigin.runId !== value.acceptedWork.runId ||
173
- value.scheduledOrigin.taskAuthorityRevision !== value.acceptedWork.taskAuthorityRevision))
174
- )
175
- context.addIssue({
176
- code: "custom",
177
- message: "Scheduled host authority must retain its exact run origin",
178
- });
179
- if (
180
- value.acceptedWork.kind === "turn" &&
181
- value.source.kind === "inherited_turn" &&
182
- value.acceptedWork.turnId === value.source.turnId
183
- ) {
184
- context.addIssue({
185
- code: "custom",
186
- path: ["source"],
187
- message: "Accepted work cannot inherit from itself",
188
- });
189
- }
190
- if (
191
- value.acceptedWork.kind === "scheduled_task" &&
192
- !Number.isSafeInteger(value.acceptedWork.taskAuthorityRevision)
193
- ) {
194
- context.addIssue({
195
- code: "custom",
196
- path: ["acceptedWork"],
197
- message: "Task authority revision must be a safe integer",
198
- });
199
- }
200
- if (new TextEncoder().encode(JSON.stringify(value)).byteLength > 65_536) {
201
- context.addIssue({ code: "custom", message: "Host accepted authority exceeds 64 KiB" });
202
- }
203
- });
233
+ .strict()
234
+ .optional(),
235
+ source: z.discriminatedUnion("kind", [
236
+ z.object({ kind: z.literal("direct") }).strict(),
237
+ z.object({ kind: z.literal("scheduled_task") }).strict(),
238
+ z
239
+ .object({
240
+ kind: z.literal("child_turn"),
241
+ sessionId: z.string().uuid(),
242
+ turnId: z.string().uuid(),
243
+ })
244
+ .strict(),
245
+ z
246
+ .object({
247
+ kind: z.literal("inherited_turn"),
248
+ sessionId: z.string().uuid(),
249
+ turnId: z.string().uuid(),
250
+ })
251
+ .strict(),
252
+ ]),
253
+ })
254
+ .strict()
255
+ .superRefine((value, context) => {
256
+ if (
257
+ (value.source.kind === "direct" && value.scheduledOrigin) ||
258
+ (value.source.kind === "scheduled_task" &&
259
+ (!value.scheduledOrigin ||
260
+ value.acceptedWork.kind !== "scheduled_task" ||
261
+ value.scheduledOrigin.taskId !== value.acceptedWork.taskId ||
262
+ value.scheduledOrigin.runId !== value.acceptedWork.runId ||
263
+ value.scheduledOrigin.taskAuthorityRevision !==
264
+ value.acceptedWork.taskAuthorityRevision))
265
+ )
266
+ context.addIssue({
267
+ code: "custom",
268
+ message: "Scheduled host authority must retain its exact run origin",
269
+ });
270
+ if (
271
+ value.acceptedWork.kind === "turn" &&
272
+ value.source.kind === "inherited_turn" &&
273
+ value.acceptedWork.turnId === value.source.turnId
274
+ ) {
275
+ context.addIssue({
276
+ code: "custom",
277
+ path: ["source"],
278
+ message: "Accepted work cannot inherit from itself",
279
+ });
280
+ }
281
+ if (
282
+ value.acceptedWork.kind === "scheduled_task" &&
283
+ !Number.isSafeInteger(value.acceptedWork.taskAuthorityRevision)
284
+ ) {
285
+ context.addIssue({
286
+ code: "custom",
287
+ path: ["acceptedWork"],
288
+ message: "Task authority revision must be a safe integer",
289
+ });
290
+ }
291
+ if (new TextEncoder().encode(JSON.stringify(value)).byteLength > 65_536) {
292
+ context.addIssue({ code: "custom", message: "Host accepted authority exceeds 64 KiB" });
293
+ }
294
+ }),
295
+ );
204
296
  export type HostMcpAcceptedAuthority = z.infer<typeof HostMcpAcceptedAuthority>;
205
297
 
206
298
  /** Credential-free selection frozen on one immutable scheduled-task revision. */
207
- export const HostMcpTaskAuthority = z
208
- .object({
209
- version: z.literal(1),
210
- accountId: z.string().uuid(),
211
- workspaceId: z.string().uuid(),
212
- taskId: z.string().uuid(),
213
- taskAuthorityRevision: z.number().int().positive().safe(),
214
- taskExecutionDigest: z.string().regex(/^[0-9a-f]{64}$/),
215
- ownerSubjectId: HostMcpOwnerSubject,
216
- ownerOrganizationMembershipId: z.string().uuid(),
217
- ownerMembershipAuthorizationRevision: z.number().int().positive().safe(),
218
- bindingId: z.string().uuid(),
219
- bindingGeneration: z.number().int().positive().safe(),
220
- delegationId: z.string().uuid(),
221
- delegationGeneration: z.number().int().positive().safe(),
222
- definition: HostMcpBindingDefinition,
223
- context: SessionTenancyVisibility,
224
- })
225
- .strict();
299
+ export const HostMcpTaskAuthority = /* @__PURE__ */ defineSchema(() =>
300
+ z
301
+ .object({
302
+ version: z.literal(1),
303
+ accountId: z.string().uuid(),
304
+ workspaceId: z.string().uuid(),
305
+ taskId: z.string().uuid(),
306
+ taskAuthorityRevision: z.number().int().positive().safe(),
307
+ taskExecutionDigest: z.string().regex(/^[0-9a-f]{64}$/),
308
+ ownerSubjectId: HostMcpOwnerSubject,
309
+ ownerOrganizationMembershipId: z.string().uuid(),
310
+ ownerMembershipAuthorizationRevision: z.number().int().positive().safe(),
311
+ bindingId: z.string().uuid(),
312
+ bindingGeneration: z.number().int().positive().safe(),
313
+ delegationId: z.string().uuid(),
314
+ delegationGeneration: z.number().int().positive().safe(),
315
+ definition: HostMcpBindingDefinition,
316
+ context: SessionTenancyVisibility,
317
+ })
318
+ .strict(),
319
+ );
226
320
  export type HostMcpTaskAuthority = z.infer<typeof HostMcpTaskAuthority>;