@treeseed/sdk 0.13.0-rc.11 → 0.13.0-rc.111

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 (453) hide show
  1. package/README.md +23 -9
  2. package/dist/.treeseed-build-complete.json +1 -0
  3. package/dist/accounts/account-contracts.d.ts +6 -0
  4. package/dist/agent-capacity/artifact-mutation-receipt.d.ts +1 -1
  5. package/dist/agent-capacity/artifacts.d.ts +17 -1
  6. package/dist/agent-capacity/authority/agent-authority-presets.js +2 -1
  7. package/dist/agent-capacity/contracts/capacity/assignments/assignment-context-pack.d.ts +304 -0
  8. package/dist/agent-capacity/contracts/capacity/assignments/assignment-context-pack.js +44 -0
  9. package/dist/agent-capacity/contracts/capacity/assignments/assignment-records.d.ts +10 -1
  10. package/dist/agent-capacity/contracts/capacity/assignments/context-pack-compiler.d.ts +25 -0
  11. package/dist/agent-capacity/contracts/capacity/assignments/context-pack-compiler.js +67 -0
  12. package/dist/agent-capacity/contracts/capacity/communication/communication-records.d.ts +1 -1
  13. package/dist/agent-capacity/contracts/capacity/providers/supply-policy.d.ts +0 -2
  14. package/dist/agent-capacity/contracts/capacity/workdays/workday-records.d.ts +1 -1
  15. package/dist/agent-capacity/contracts/configuration/configuration.js +1 -1
  16. package/dist/agent-capacity/contracts/projects/agents/project-agent-class.d.ts +0 -1
  17. package/dist/agent-capacity/contracts/runtime/runtime-observability.d.ts +3 -3
  18. package/dist/agent-capacity/contracts/support/decision-work.d.ts +2 -3
  19. package/dist/agent-capacity/validation/activity-profile.js +25 -12
  20. package/dist/agent-capacity/validation/agent-definition-schema.d.ts +1092 -1170
  21. package/dist/agent-capacity/validation/agent-definition-schema.js +11 -29
  22. package/dist/agent-capacity/validation/agent-lab-forensics-schema.d.ts +20 -20
  23. package/dist/agent-capacity/validation/configuration.d.ts +1 -1
  24. package/dist/agent-capacity/validation/configuration.js +1 -2
  25. package/dist/capacity/agents/agent-capacity.d.ts +2 -0
  26. package/dist/capacity/agents/agent-capacity.js +2 -0
  27. package/dist/capacity-provider/capability-ontology.d.ts +1495 -0
  28. package/dist/capacity-provider/capability-ontology.js +221 -0
  29. package/dist/capacity-provider/client.d.ts +24 -0
  30. package/dist/capacity-provider/client.js +11 -1
  31. package/dist/capacity-provider/contracts/environment-profiles.d.ts +255 -0
  32. package/dist/capacity-provider/contracts/environment-profiles.js +71 -0
  33. package/dist/capacity-provider/contracts/governance.d.ts +103 -35
  34. package/dist/capacity-provider/contracts/index.d.ts +1 -0
  35. package/dist/capacity-provider/contracts/index.js +1 -0
  36. package/dist/capacity-provider/core-capability-catalog.d.ts +47 -0
  37. package/dist/capacity-provider/core-capability-catalog.js +49 -0
  38. package/dist/capacity-provider/environment-catalog.d.ts +877 -0
  39. package/dist/capacity-provider/environment-catalog.js +116 -0
  40. package/dist/capacity-provider/index.d.ts +5 -0
  41. package/dist/capacity-provider/index.js +5 -0
  42. package/dist/capacity-provider/install-configuration.d.ts +39 -0
  43. package/dist/capacity-provider/install-configuration.js +18 -0
  44. package/dist/capacity-provider/sandbox-contracts.d.ts +548 -0
  45. package/dist/capacity-provider/sandbox-contracts.js +86 -0
  46. package/dist/capacity-provider/sandbox.d.ts +1 -0
  47. package/dist/capacity-provider/sandbox.js +1 -0
  48. package/dist/capacity-provider/validation.d.ts +2 -2
  49. package/dist/capacity-provider/validation.js +91 -55
  50. package/dist/configuration/secrets-capability.d.ts +5 -1
  51. package/dist/configuration/secrets-capability.js +5 -1
  52. package/dist/content/validation/agent-operational-content-schemas.d.ts +490 -168
  53. package/dist/content/validation/agent-operational-content-schemas.js +18 -3
  54. package/dist/content/validation/auxiliary-content-schemas.d.ts +160 -160
  55. package/dist/content/validation/content-model-schemas.d.ts +2943 -2747
  56. package/dist/content/validation/portable-content-data.d.ts +296 -292
  57. package/dist/deployment/ai/storage.d.ts +158 -0
  58. package/dist/deployment/ai/storage.js +32 -0
  59. package/dist/deployment/ai-hosting.d.ts +297 -0
  60. package/dist/deployment/ai-hosting.js +63 -0
  61. package/dist/deployment/ai-instance.d.ts +65 -0
  62. package/dist/deployment/ai-instance.js +30 -0
  63. package/dist/deployment/ai-mode.d.ts +454 -0
  64. package/dist/deployment/ai-mode.js +67 -0
  65. package/dist/deployment/canonical.d.ts +2 -0
  66. package/dist/deployment/canonical.js +17 -0
  67. package/dist/deployment/catalog.d.ts +16 -0
  68. package/dist/deployment/catalog.js +48 -0
  69. package/dist/deployment/hosted-topology-template.d.ts +449 -0
  70. package/dist/deployment/hosted-topology-template.js +56 -0
  71. package/dist/deployment/hosted-topology.d.ts +2698 -0
  72. package/dist/deployment/hosted-topology.js +468 -0
  73. package/dist/deployment/index.d.ts +13 -0
  74. package/dist/deployment/index.js +13 -0
  75. package/dist/deployment/postgres/contracts.d.ts +418 -0
  76. package/dist/deployment/postgres/contracts.js +83 -0
  77. package/dist/deployment/postgres/requirements.d.ts +14 -0
  78. package/dist/deployment/postgres/requirements.js +30 -0
  79. package/dist/deployment/postgres/transfer.d.ts +97 -0
  80. package/dist/deployment/postgres/transfer.js +29 -0
  81. package/dist/deployment/schemas.d.ts +8625 -0
  82. package/dist/deployment/schemas.js +455 -0
  83. package/dist/deployment/topology.d.ts +9 -0
  84. package/dist/deployment/topology.js +35 -0
  85. package/dist/development/index.d.ts +1 -0
  86. package/dist/development/index.js +1 -0
  87. package/dist/development/schemas.d.ts +3578 -0
  88. package/dist/development/schemas.js +199 -0
  89. package/dist/development/session-migration.d.ts +3 -0
  90. package/dist/development/session-migration.js +25 -0
  91. package/dist/entrypoints/clients/control-plane-client.d.ts +9 -1
  92. package/dist/entrypoints/clients/control-plane-client.js +17 -5
  93. package/dist/graph/context-query-contracts.d.ts +16 -1
  94. package/dist/graph/context-query-contracts.js +5 -0
  95. package/dist/guarantees/evidence-trust.d.ts +32 -0
  96. package/dist/guarantees/evidence-trust.js +47 -0
  97. package/dist/guarantees/index.d.ts +130 -0
  98. package/dist/guarantees/index.js +44 -0
  99. package/dist/identity/browser-session.d.ts +233 -0
  100. package/dist/identity/browser-session.js +51 -0
  101. package/dist/identity/contracts.d.ts +191 -0
  102. package/dist/identity/contracts.js +72 -0
  103. package/dist/identity/index.d.ts +3 -0
  104. package/dist/identity/index.js +3 -0
  105. package/dist/identity/runtime.d.ts +186 -0
  106. package/dist/identity/runtime.js +49 -0
  107. package/dist/model-registry/agent-operational-models.js +1 -1
  108. package/dist/operator-contracts/canonical-command-tree.js +465 -16
  109. package/dist/operator-contracts/catalog/admin-account-team-operations.d.ts +36 -0
  110. package/dist/operator-contracts/catalog/admin-account-team-operations.js +52 -0
  111. package/dist/operator-contracts/catalog/capability-ontology-operations.d.ts +163 -0
  112. package/dist/operator-contracts/catalog/capability-ontology-operations.js +24 -0
  113. package/dist/operator-contracts/catalog/communication-operations.d.ts +437 -0
  114. package/dist/operator-contracts/catalog/communication-operations.js +92 -0
  115. package/dist/operator-contracts/catalog/control-plane-catalog.d.ts +6 -0
  116. package/dist/operator-contracts/catalog/control-plane-catalog.js +18 -0
  117. package/dist/operator-contracts/catalog/hosted-topology-operations.d.ts +399 -0
  118. package/dist/operator-contracts/catalog/hosted-topology-operations.js +79 -0
  119. package/dist/operator-contracts/catalog/inbox-operations.d.ts +261 -0
  120. package/dist/operator-contracts/catalog/inbox-operations.js +36 -0
  121. package/dist/operator-contracts/catalog/infrastructure/ai-instance-operations.d.ts +53 -0
  122. package/dist/operator-contracts/catalog/infrastructure/ai-instance-operations.js +23 -0
  123. package/dist/operator-contracts/catalog/infrastructure/command-tree-paths.d.ts +3 -0
  124. package/dist/operator-contracts/catalog/infrastructure/command-tree-paths.js +15 -0
  125. package/dist/operator-contracts/catalog/knowledge-share-operations.d.ts +127 -0
  126. package/dist/operator-contracts/catalog/knowledge-share-operations.js +25 -0
  127. package/dist/operator-contracts/catalog/provider-environment-commands.d.ts +4 -0
  128. package/dist/operator-contracts/catalog/provider-environment-commands.js +69 -0
  129. package/dist/operator-contracts/catalog/provider-environment-operations.d.ts +41 -0
  130. package/dist/operator-contracts/catalog/provider-environment-operations.js +61 -0
  131. package/dist/operator-contracts/catalog/services/identity-commands.d.ts +2 -0
  132. package/dist/operator-contracts/catalog/services/identity-commands.js +13 -0
  133. package/dist/operator-contracts/catalog/services/secret-commands.d.ts +2 -0
  134. package/dist/operator-contracts/catalog/services/secret-commands.js +31 -0
  135. package/dist/operator-contracts/catalog/services/secret-operations.d.ts +62 -0
  136. package/dist/operator-contracts/catalog/services/secret-operations.js +51 -0
  137. package/dist/operator-contracts/catalog/treeai-operations.d.ts +13 -0
  138. package/dist/operator-contracts/catalog/treeai-operations.js +61 -0
  139. package/dist/operator-contracts/command-tree.d.ts +28 -0
  140. package/dist/operator-contracts/command-tree.js +49 -0
  141. package/dist/operator-contracts/communication/addressing.d.ts +8 -0
  142. package/dist/operator-contracts/communication/addressing.js +57 -0
  143. package/dist/operator-contracts/communication/contracts.d.ts +1818 -0
  144. package/dist/operator-contracts/communication/contracts.js +188 -0
  145. package/dist/operator-contracts/control-plane-operation.d.ts +9 -0
  146. package/dist/operator-contracts/control-plane-operation.js +12 -2
  147. package/dist/operator-contracts/control-plane-operations.d.ts +2255 -195
  148. package/dist/operator-contracts/control-plane-operations.js +247 -85
  149. package/dist/operator-contracts/inbox/contracts.d.ts +1099 -0
  150. package/dist/operator-contracts/inbox/contracts.js +134 -0
  151. package/dist/operator-contracts/index.d.ts +6 -0
  152. package/dist/operator-contracts/index.js +6 -0
  153. package/dist/operator-contracts/knowledge/contracts.d.ts +130 -0
  154. package/dist/operator-contracts/knowledge/contracts.js +39 -0
  155. package/dist/operator-contracts/mcp.d.ts +5 -0
  156. package/dist/operator-contracts/mcp.js +61 -0
  157. package/dist/operator-contracts/oauth.d.ts +45 -0
  158. package/dist/operator-contracts/oauth.js +7 -0
  159. package/dist/operator-contracts/operation-builder.d.ts +18 -0
  160. package/dist/operator-contracts/operation-builder.js +78 -0
  161. package/dist/operator-contracts/seed/seed-bundle.d.ts +138 -0
  162. package/dist/operator-contracts/seed/seed-bundle.js +68 -0
  163. package/dist/platform/contracts.d.ts +429 -0
  164. package/dist/platform/contracts.js +93 -0
  165. package/dist/platform/index.d.ts +6 -0
  166. package/dist/platform/index.js +6 -0
  167. package/dist/platform/inventory.d.ts +11 -0
  168. package/dist/platform/inventory.js +53 -0
  169. package/dist/platform/project-create.d.ts +49 -0
  170. package/dist/platform/project-create.js +75 -0
  171. package/dist/platform/schemas.d.ts +986 -0
  172. package/dist/platform/schemas.js +73 -0
  173. package/dist/platform/verification.d.ts +9 -0
  174. package/dist/platform/verification.js +104 -0
  175. package/dist/platform/workset.d.ts +21 -0
  176. package/dist/platform/workset.js +106 -0
  177. package/dist/secrets-capability/github-actions-encryption.d.ts +2 -0
  178. package/dist/secrets-capability/github-actions-encryption.js +11 -0
  179. package/dist/secrets-capability/provider-operation-contracts.d.ts +15 -1
  180. package/dist/secrets-capability/secret-contracts.d.ts +33 -0
  181. package/dist/secrets-capability/secret-contracts.js +49 -0
  182. package/dist/secrets-capability/service-provider-contracts.d.ts +5 -3
  183. package/dist/secrets-capability/service-provider-contracts.js +66 -50
  184. package/dist/secrets-capability/shared-access.d.ts +51 -0
  185. package/dist/secrets-capability/shared-access.js +36 -0
  186. package/dist/secrets-capability/shared-resources.d.ts +376 -0
  187. package/dist/secrets-capability/shared-resources.js +91 -0
  188. package/dist/secrets-capability/vault-contracts.d.ts +132 -0
  189. package/dist/secrets-capability/vault-contracts.js +56 -0
  190. package/dist/security/encrypted-envelope.d.ts +177 -0
  191. package/dist/security/encrypted-envelope.js +34 -0
  192. package/dist/security/envelope-codec.d.ts +38 -0
  193. package/dist/security/envelope-codec.js +96 -0
  194. package/dist/security/index.d.ts +2 -0
  195. package/dist/security/index.js +2 -0
  196. package/dist/site-contracts/catalog.d.ts +16 -0
  197. package/dist/site-contracts/catalog.js +19 -0
  198. package/dist/site-contracts/cloudflare.d.ts +48 -0
  199. package/dist/site-contracts/platform.d.ts +94 -0
  200. package/dist/site-contracts/plugin.d.ts +63 -0
  201. package/dist/site-contracts/plugin.js +26 -0
  202. package/dist/treeai/catalog.d.ts +1 -0
  203. package/dist/treeai/catalog.js +1 -0
  204. package/dist/treeai/client.d.ts +793 -0
  205. package/dist/treeai/client.js +44 -0
  206. package/dist/treeai/contract.d.ts +41 -0
  207. package/dist/treeai/contract.js +51 -0
  208. package/dist/treeai/generated/upstream.d.ts +770 -0
  209. package/dist/treeai/generated/upstream.js +4 -0
  210. package/dist/treeai/index.d.ts +4 -0
  211. package/dist/treeai/index.js +4 -0
  212. package/dist/treedx/client.d.ts +605 -0
  213. package/dist/treedx/client.js +39 -0
  214. package/dist/treedx/contract.d.ts +32 -0
  215. package/dist/treedx/contract.js +63 -0
  216. package/dist/treedx/index.d.ts +3 -0
  217. package/dist/treedx/index.js +2 -0
  218. package/dist/treedx/types.d.ts +8 -7
  219. package/dist/treedx/types.js +0 -7
  220. package/dist/types/agents/agent-activity-profile.d.ts +18 -36
  221. package/dist/types/agents/agent-trigger-kinds.d.ts +3 -5
  222. package/dist/types/agents/agent-trigger-kinds.js +1 -13
  223. package/package.json +64 -11
  224. package/dist/secrets-capability/service-vault-contracts.d.ts +0 -61
  225. package/dist/secrets-capability/service-vault-contracts.js +0 -39
  226. package/dist/treedx/accounts/auth.d.ts +0 -17
  227. package/dist/treedx/accounts/auth.js +0 -48
  228. package/dist/treedx/client/accounts/contracts/auth-mode.d.ts +0 -3
  229. package/dist/treedx/client/accounts/contracts/auth-mode.js +0 -6
  230. package/dist/treedx/client/build/creation/build-context.d.ts +0 -3
  231. package/dist/treedx/client/build/creation/build-context.js +0 -7
  232. package/dist/treedx/client/build/creation/build-snapshot.d.ts +0 -3
  233. package/dist/treedx/client/build/creation/build-snapshot.js +0 -8
  234. package/dist/treedx/client/capacity/allocations/contracts/put-capability-grant.d.ts +0 -3
  235. package/dist/treedx/client/capacity/allocations/contracts/put-capability-grant.js +0 -7
  236. package/dist/treedx/client/capacity/allocations/queries/list-capability-grants.d.ts +0 -6
  237. package/dist/treedx/client/capacity/allocations/queries/list-capability-grants.js +0 -10
  238. package/dist/treedx/client/methods.d.ts +0 -102
  239. package/dist/treedx/client/methods.js +0 -209
  240. package/dist/treedx/client/persistence/contracts/restore-storage.d.ts +0 -3
  241. package/dist/treedx/client/persistence/contracts/restore-storage.js +0 -6
  242. package/dist/treedx/client/persistence/lifecycle/verify-storage-restore.d.ts +0 -3
  243. package/dist/treedx/client/persistence/lifecycle/verify-storage-restore.js +0 -6
  244. package/dist/treedx/client/repositories/creation/register-repository.d.ts +0 -3
  245. package/dist/treedx/client/repositories/creation/register-repository.js +0 -7
  246. package/dist/treedx/client/repositories/queries/get-repository.d.ts +0 -3
  247. package/dist/treedx/client/repositories/queries/get-repository.js +0 -7
  248. package/dist/treedx/client/repositories/queries/list-repository-paths.d.ts +0 -3
  249. package/dist/treedx/client/repositories/queries/list-repository-paths.js +0 -7
  250. package/dist/treedx/client/repositories/queries/list-repository-refs.d.ts +0 -3
  251. package/dist/treedx/client/repositories/queries/list-repository-refs.js +0 -12
  252. package/dist/treedx/client/repositories/queries/query-repository.d.ts +0 -3
  253. package/dist/treedx/client/repositories/queries/query-repository.js +0 -7
  254. package/dist/treedx/client/repositories/queries/read-repository-file.d.ts +0 -3
  255. package/dist/treedx/client/repositories/queries/read-repository-file.js +0 -6
  256. package/dist/treedx/client/repositories/queries/read-repository-files.d.ts +0 -3
  257. package/dist/treedx/client/repositories/queries/read-repository-files.js +0 -7
  258. package/dist/treedx/client/repositories/queries/search-repository-files.d.ts +0 -3
  259. package/dist/treedx/client/repositories/queries/search-repository-files.js +0 -7
  260. package/dist/treedx/client/support/contracts/treedx/artifacts/contracts/download-artifact.d.ts +0 -3
  261. package/dist/treedx/client/support/contracts/treedx/artifacts/contracts/download-artifact.js +0 -9
  262. package/dist/treedx/client/support/contracts/treedx/authorization/contracts/whoami.d.ts +0 -3
  263. package/dist/treedx/client/support/contracts/treedx/authorization/contracts/whoami.js +0 -6
  264. package/dist/treedx/client/support/contracts/treedx/graph/contracts/parse-context-dsl.d.ts +0 -3
  265. package/dist/treedx/client/support/contracts/treedx/graph/contracts/parse-context-dsl.js +0 -7
  266. package/dist/treedx/client/support/contracts/treedx/health/contracts/deep-health.d.ts +0 -5
  267. package/dist/treedx/client/support/contracts/treedx/health/contracts/deep-health.js +0 -7
  268. package/dist/treedx/client/support/contracts/treedx/health/contracts/health.d.ts +0 -3
  269. package/dist/treedx/client/support/contracts/treedx/health/contracts/health.js +0 -6
  270. package/dist/treedx/client/support/contracts/treedx/health/contracts/metrics.d.ts +0 -3
  271. package/dist/treedx/client/support/contracts/treedx/health/contracts/metrics.js +0 -7
  272. package/dist/treedx/client/support/contracts/treedx/health/contracts/prometheus-metrics.d.ts +0 -2
  273. package/dist/treedx/client/support/contracts/treedx/health/contracts/prometheus-metrics.js +0 -19
  274. package/dist/treedx/client/support/contracts/treedx/health/contracts/ready.d.ts +0 -3
  275. package/dist/treedx/client/support/contracts/treedx/health/contracts/ready.js +0 -7
  276. package/dist/treedx/client/support/contracts/treedx/health/contracts/status.d.ts +0 -3
  277. package/dist/treedx/client/support/contracts/treedx/health/contracts/status.js +0 -6
  278. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/commit.d.ts +0 -3
  279. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/commit.js +0 -7
  280. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/diff.d.ts +0 -3
  281. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/diff.js +0 -6
  282. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/fetch-remote.d.ts +0 -3
  283. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/fetch-remote.js +0 -7
  284. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/push.d.ts +0 -6
  285. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/push.js +0 -23
  286. package/dist/treedx/client/support/contracts/treedx/search/contracts/compact-search-index.d.ts +0 -3
  287. package/dist/treedx/client/support/contracts/treedx/search/contracts/compact-search-index.js +0 -8
  288. package/dist/treedx/client/support/contracts/treedx/search/contracts/search.d.ts +0 -3
  289. package/dist/treedx/client/support/contracts/treedx/search/contracts/search.js +0 -7
  290. package/dist/treedx/client/support/contracts/treedx/storage/contracts/backup-storage.d.ts +0 -3
  291. package/dist/treedx/client/support/contracts/treedx/storage/contracts/backup-storage.js +0 -8
  292. package/dist/treedx/client/support/contracts/treedx/storage/contracts/compact-storage.d.ts +0 -3
  293. package/dist/treedx/client/support/contracts/treedx/storage/contracts/compact-storage.js +0 -8
  294. package/dist/treedx/client/support/contracts/treedx/transport/contracts/assert-binary-ok.d.ts +0 -2
  295. package/dist/treedx/client/support/contracts/treedx/transport/contracts/assert-binary-ok.js +0 -15
  296. package/dist/treedx/client/support/contracts/treedx/transport/contracts/fetch-with-timeout.d.ts +0 -2
  297. package/dist/treedx/client/support/contracts/treedx/transport/contracts/fetch-with-timeout.js +0 -38
  298. package/dist/treedx/client/support/contracts/treedx/transport/contracts/headers.d.ts +0 -2
  299. package/dist/treedx/client/support/contracts/treedx/transport/contracts/headers.js +0 -15
  300. package/dist/treedx/client/support/contracts/treedx/transport/contracts/parse-json-response.d.ts +0 -2
  301. package/dist/treedx/client/support/contracts/treedx/transport/contracts/parse-json-response.js +0 -15
  302. package/dist/treedx/client/support/contracts/treedx/transport/contracts/query.d.ts +0 -2
  303. package/dist/treedx/client/support/contracts/treedx/transport/contracts/query.js +0 -14
  304. package/dist/treedx/client/support/contracts/treedx/transport/contracts/repo-id.d.ts +0 -2
  305. package/dist/treedx/client/support/contracts/treedx/transport/contracts/repo-id.js +0 -14
  306. package/dist/treedx/client/support/contracts/treedx/transport/contracts/request.d.ts +0 -6
  307. package/dist/treedx/client/support/contracts/treedx/transport/contracts/request.js +0 -41
  308. package/dist/treedx/client/support/contracts/treedx/transport/contracts/throw-api-error.d.ts +0 -2
  309. package/dist/treedx/client/support/contracts/treedx/transport/contracts/throw-api-error.js +0 -14
  310. package/dist/treedx/client/support/contracts/treedx/workspaces/contracts/exec.d.ts +0 -3
  311. package/dist/treedx/client/support/contracts/treedx/workspaces/contracts/exec.js +0 -7
  312. package/dist/treedx/client/support/creation/apply-changeset.d.ts +0 -3
  313. package/dist/treedx/client/support/creation/apply-changeset.js +0 -10
  314. package/dist/treedx/client/support/creation/apply-storage-migration.d.ts +0 -3
  315. package/dist/treedx/client/support/creation/apply-storage-migration.js +0 -7
  316. package/dist/treedx/client/support/creation/create-migration.d.ts +0 -6
  317. package/dist/treedx/client/support/creation/create-migration.js +0 -7
  318. package/dist/treedx/client/support/creation/export-artifact.d.ts +0 -3
  319. package/dist/treedx/client/support/creation/export-artifact.js +0 -8
  320. package/dist/treedx/client/support/creation/plan-storage-migration.d.ts +0 -3
  321. package/dist/treedx/client/support/creation/plan-storage-migration.js +0 -7
  322. package/dist/treedx/client/support/creation/request-binary.d.ts +0 -6
  323. package/dist/treedx/client/support/creation/request-binary.js +0 -42
  324. package/dist/treedx/client/support/creation/write-file.d.ts +0 -3
  325. package/dist/treedx/client/support/creation/write-file.js +0 -10
  326. package/dist/treedx/client/support/creation/write-files.d.ts +0 -3
  327. package/dist/treedx/client/support/creation/write-files.js +0 -12
  328. package/dist/treedx/client/support/queries/treedx/artifacts/queries/get-artifact.d.ts +0 -3
  329. package/dist/treedx/client/support/queries/treedx/artifacts/queries/get-artifact.js +0 -7
  330. package/dist/treedx/client/support/queries/treedx/artifacts/queries/list-artifacts.d.ts +0 -3
  331. package/dist/treedx/client/support/queries/treedx/artifacts/queries/list-artifacts.js +0 -7
  332. package/dist/treedx/client/support/queries/treedx/authorization/queries/effective-scope.d.ts +0 -3
  333. package/dist/treedx/client/support/queries/treedx/authorization/queries/effective-scope.js +0 -9
  334. package/dist/treedx/client/support/queries/treedx/authorization/queries/list-capabilities.d.ts +0 -4
  335. package/dist/treedx/client/support/queries/treedx/authorization/queries/list-capabilities.js +0 -6
  336. package/dist/treedx/client/support/queries/treedx/federation/queries/get-placement.d.ts +0 -3
  337. package/dist/treedx/client/support/queries/treedx/federation/queries/get-placement.js +0 -7
  338. package/dist/treedx/client/support/queries/treedx/graph/queries/get-node.d.ts +0 -3
  339. package/dist/treedx/client/support/queries/treedx/graph/queries/get-node.js +0 -7
  340. package/dist/treedx/client/support/queries/treedx/graph/queries/get-related.d.ts +0 -3
  341. package/dist/treedx/client/support/queries/treedx/graph/queries/get-related.js +0 -7
  342. package/dist/treedx/client/support/queries/treedx/graph/queries/list-nodes.d.ts +0 -3
  343. package/dist/treedx/client/support/queries/treedx/graph/queries/list-nodes.js +0 -7
  344. package/dist/treedx/client/support/queries/treedx/repositories/queries/list-tree.d.ts +0 -3
  345. package/dist/treedx/client/support/queries/treedx/repositories/queries/list-tree.js +0 -10
  346. package/dist/treedx/client/support/queries/treedx/repositories/queries/read-file.d.ts +0 -3
  347. package/dist/treedx/client/support/queries/treedx/repositories/queries/read-file.js +0 -9
  348. package/dist/treedx/client/support/queries/treedx/search/queries/get-search-index-status.d.ts +0 -3
  349. package/dist/treedx/client/support/queries/treedx/search/queries/get-search-index-status.js +0 -7
  350. package/dist/treedx/client/support/queries/treedx/storage/queries/get-migration.d.ts +0 -6
  351. package/dist/treedx/client/support/queries/treedx/storage/queries/get-migration.js +0 -7
  352. package/dist/treedx/client/support/queries/treedx/storage/queries/get-snapshot.d.ts +0 -6
  353. package/dist/treedx/client/support/queries/treedx/storage/queries/get-snapshot.js +0 -7
  354. package/dist/treedx/client/support/queries/treedx/storage/queries/list-storage-migrations.d.ts +0 -6
  355. package/dist/treedx/client/support/queries/treedx/storage/queries/list-storage-migrations.js +0 -6
  356. package/dist/treedx/client/support/queries/treedx/transport/queries/list-audit-events.d.ts +0 -15
  357. package/dist/treedx/client/support/queries/treedx/transport/queries/list-audit-events.js +0 -6
  358. package/dist/treedx/client/support/queries/treedx/transport/queries/list-repositories.d.ts +0 -3
  359. package/dist/treedx/client/support/queries/treedx/transport/queries/list-repositories.js +0 -7
  360. package/dist/treedx/client/support/retirement/cleanup-artifacts.d.ts +0 -3
  361. package/dist/treedx/client/support/retirement/cleanup-artifacts.js +0 -7
  362. package/dist/treedx/client/support/retirement/delete-artifact.d.ts +0 -3
  363. package/dist/treedx/client/support/retirement/delete-artifact.js +0 -7
  364. package/dist/treedx/client/support/retirement/delete-file.d.ts +0 -3
  365. package/dist/treedx/client/support/retirement/delete-file.js +0 -10
  366. package/dist/treedx/client/support/retirement/rollback-storage-migration.d.ts +0 -3
  367. package/dist/treedx/client/support/retirement/rollback-storage-migration.js +0 -7
  368. package/dist/treedx/client/support/updates/patch-file.d.ts +0 -3
  369. package/dist/treedx/client/support/updates/patch-file.js +0 -10
  370. package/dist/treedx/client/support/updates/refresh-search-index.d.ts +0 -3
  371. package/dist/treedx/client/support/updates/refresh-search-index.js +0 -8
  372. package/dist/treedx/client/treedx/blobs/contracts/download-blob.d.ts +0 -3
  373. package/dist/treedx/client/treedx/blobs/contracts/download-blob.js +0 -6
  374. package/dist/treedx/client/treedx/blobs/creation/create-blob-upload.d.ts +0 -3
  375. package/dist/treedx/client/treedx/blobs/creation/create-blob-upload.js +0 -8
  376. package/dist/treedx/client/treedx/blobs/creation/request-blob-download.d.ts +0 -3
  377. package/dist/treedx/client/treedx/blobs/creation/request-blob-download.js +0 -27
  378. package/dist/treedx/client/treedx/blobs/creation/request-blob-upload.d.ts +0 -3
  379. package/dist/treedx/client/treedx/blobs/creation/request-blob-upload.js +0 -41
  380. package/dist/treedx/client/treedx/blobs/creation/upload-blob-part.d.ts +0 -3
  381. package/dist/treedx/client/treedx/blobs/creation/upload-blob-part.js +0 -27
  382. package/dist/treedx/client/treedx/blobs/creation/upload-blob.d.ts +0 -3
  383. package/dist/treedx/client/treedx/blobs/creation/upload-blob.js +0 -6
  384. package/dist/treedx/client/treedx/blobs/creation/write-blob.d.ts +0 -3
  385. package/dist/treedx/client/treedx/blobs/creation/write-blob.js +0 -8
  386. package/dist/treedx/client/treedx/blobs/lifecycle/complete-blob-upload.d.ts +0 -3
  387. package/dist/treedx/client/treedx/blobs/lifecycle/complete-blob-upload.js +0 -8
  388. package/dist/treedx/client/treedx/blobs/queries/read-blob.d.ts +0 -3
  389. package/dist/treedx/client/treedx/blobs/queries/read-blob.js +0 -10
  390. package/dist/treedx/client/treedx/blobs/retirement/abort-blob-upload.d.ts +0 -3
  391. package/dist/treedx/client/treedx/blobs/retirement/abort-blob-upload.js +0 -7
  392. package/dist/treedx/client/treedx/blobs/retirement/delete-blob.d.ts +0 -3
  393. package/dist/treedx/client/treedx/blobs/retirement/delete-blob.js +0 -8
  394. package/dist/treedx/client/treedx/federation/contracts/federated-query.d.ts +0 -3
  395. package/dist/treedx/client/treedx/federation/contracts/federated-query.js +0 -7
  396. package/dist/treedx/client/treedx/federation/creation/plan-federated-query.d.ts +0 -3
  397. package/dist/treedx/client/treedx/federation/creation/plan-federated-query.js +0 -6
  398. package/dist/treedx/client/treedx/federation/queries/check-mirror-health.d.ts +0 -3
  399. package/dist/treedx/client/treedx/federation/queries/check-mirror-health.js +0 -7
  400. package/dist/treedx/client/treedx/federation/updates/promote-mirror.d.ts +0 -3
  401. package/dist/treedx/client/treedx/federation/updates/promote-mirror.js +0 -7
  402. package/dist/treedx/client/treedx/federation/updates/sync-mirror.d.ts +0 -3
  403. package/dist/treedx/client/treedx/federation/updates/sync-mirror.js +0 -7
  404. package/dist/treedx/client/treedx/graph/contracts/federated-context.d.ts +0 -3
  405. package/dist/treedx/client/treedx/graph/contracts/federated-context.js +0 -7
  406. package/dist/treedx/client/treedx/graph/contracts/federated-graph.d.ts +0 -3
  407. package/dist/treedx/client/treedx/graph/contracts/federated-graph.js +0 -7
  408. package/dist/treedx/client/treedx/graph/contracts/graph-search.d.ts +0 -3
  409. package/dist/treedx/client/treedx/graph/contracts/graph-search.js +0 -8
  410. package/dist/treedx/client/treedx/graph/queries/get-graph-node.d.ts +0 -3
  411. package/dist/treedx/client/treedx/graph/queries/get-graph-node.js +0 -10
  412. package/dist/treedx/client/treedx/graph/queries/get-graph-refresh-job.d.ts +0 -3
  413. package/dist/treedx/client/treedx/graph/queries/get-graph-refresh-job.js +0 -7
  414. package/dist/treedx/client/treedx/graph/queries/get-subgraph.d.ts +0 -3
  415. package/dist/treedx/client/treedx/graph/queries/get-subgraph.js +0 -7
  416. package/dist/treedx/client/treedx/graph/queries/query-graph.d.ts +0 -3
  417. package/dist/treedx/client/treedx/graph/queries/query-graph.js +0 -7
  418. package/dist/treedx/client/treedx/graph/queries/search-graph-entities.d.ts +0 -3
  419. package/dist/treedx/client/treedx/graph/queries/search-graph-entities.js +0 -6
  420. package/dist/treedx/client/treedx/graph/queries/search-graph-files.d.ts +0 -3
  421. package/dist/treedx/client/treedx/graph/queries/search-graph-files.js +0 -6
  422. package/dist/treedx/client/treedx/graph/queries/search-graph-sections.d.ts +0 -3
  423. package/dist/treedx/client/treedx/graph/queries/search-graph-sections.js +0 -6
  424. package/dist/treedx/client/treedx/graph/updates/refresh-graph.d.ts +0 -3
  425. package/dist/treedx/client/treedx/graph/updates/refresh-graph.js +0 -7
  426. package/dist/treedx/client/treedx/search/contracts/federated-search.d.ts +0 -3
  427. package/dist/treedx/client/treedx/search/contracts/federated-search.js +0 -7
  428. package/dist/treedx/client/treedx/workspaces/creation/create-workspace.d.ts +0 -3
  429. package/dist/treedx/client/treedx/workspaces/creation/create-workspace.js +0 -7
  430. package/dist/treedx/client/treedx/workspaces/retirement/abandon-workspace.d.ts +0 -3
  431. package/dist/treedx/client/treedx/workspaces/retirement/abandon-workspace.js +0 -12
  432. package/dist/treedx/client/treedx/workspaces/retirement/close-workspace.d.ts +0 -2
  433. package/dist/treedx/client/treedx/workspaces/retirement/close-workspace.js +0 -6
  434. package/dist/treedx/generated/openapi-types.d.ts +0 -3662
  435. package/dist/treedx/support/client.d.ts +0 -251
  436. package/dist/treedx/support/client.js +0 -252
  437. package/dist/treedx/support/errors.d.ts +0 -13
  438. package/dist/treedx/support/errors.js +0 -17
  439. package/dist/treedx/types/tree-dx-actor.d.ts +0 -209
  440. package/dist/treedx/types/tree-dx-actor.js +0 -8
  441. package/dist/treedx/types/tree-dx-artifact-list-response.d.ts +0 -13
  442. package/dist/treedx/types/tree-dx-changeset.d.ts +0 -51
  443. package/dist/treedx/types/tree-dx-changeset.js +0 -6
  444. package/dist/treedx/types/tree-dx-context-request.d.ts +0 -245
  445. package/dist/treedx/types/tree-dx-context-request.js +0 -0
  446. package/dist/treedx/types/tree-dx-exec-result.d.ts +0 -249
  447. package/dist/treedx/types/tree-dx-exec-result.js +0 -0
  448. package/dist/treedx/types/tree-dx-list-tree-request.d.ts +0 -222
  449. package/dist/treedx/types/tree-dx-list-tree-request.js +0 -0
  450. package/dist/treedx/types/tree-dx-push-request.d.ts +0 -229
  451. package/dist/treedx/types/tree-dx-push-request.js +0 -0
  452. /package/dist/{treedx/generated/openapi-types.js → site-contracts/cloudflare.js} +0 -0
  453. /package/dist/{treedx/types/tree-dx-artifact-list-response.js → site-contracts/platform.js} +0 -0
@@ -0,0 +1,41 @@
1
+ export declare const PROVIDER_ENVIRONMENT_OPERATIONS: {
2
+ readonly registrationCode: {
3
+ readonly status: import("../control-plane-operation.js").ControlPlaneOperationBinding<{
4
+ teamId: string;
5
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>;
6
+ readonly reveal: import("../control-plane-operation.js").ControlPlaneOperationBinding<{
7
+ teamId: string;
8
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>;
9
+ readonly rotate: import("../control-plane-operation.js").ControlPlaneOperationBinding<{
10
+ teamId: string;
11
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>;
12
+ };
13
+ readonly environmentProfiles: {
14
+ readonly list: import("../control-plane-operation.js").ControlPlaneOperationBinding<{
15
+ teamId: string;
16
+ providerId: string;
17
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>;
18
+ readonly show: import("../control-plane-operation.js").ControlPlaneOperationBinding<{
19
+ teamId: string;
20
+ providerId: string;
21
+ profileId: string;
22
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>;
23
+ readonly publish: import("../control-plane-operation.js").ControlPlaneOperationBinding<{
24
+ profileId: string;
25
+ }, {}, Record<string, unknown>, Record<string, unknown>>;
26
+ };
27
+ readonly environmentGrants: {
28
+ readonly show: import("../control-plane-operation.js").ControlPlaneOperationBinding<{
29
+ teamId: string;
30
+ assignmentId: string;
31
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>;
32
+ readonly put: import("../control-plane-operation.js").ControlPlaneOperationBinding<{
33
+ teamId: string;
34
+ assignmentId: string;
35
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>;
36
+ readonly revoke: import("../control-plane-operation.js").ControlPlaneOperationBinding<{
37
+ teamId: string;
38
+ assignmentId: string;
39
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>;
40
+ };
41
+ };
@@ -0,0 +1,61 @@
1
+ import { z } from "zod";
2
+ import { defineOperation } from "../operation-builder.js";
3
+ const empty = z.object({}).strict();
4
+ const none = z.undefined();
5
+ const record = z.record(z.unknown());
6
+ function teamOperation(operationId, method, path, pathShape, options = {}) {
7
+ const kind = method === "GET" ? "read" : "mutation";
8
+ const riskClass = options.risk ?? "ordinary";
9
+ return defineOperation({
10
+ operationId,
11
+ description: `${kind === "read" ? "Read" : "Apply"} ${operationId}.`,
12
+ rest: { method, path },
13
+ parameters: `treeseed.${operationId}.parameters/v1`,
14
+ capability: options.capability ?? (kind === "read" ? "providers.read" : "providers.write"),
15
+ authentication: "oauth",
16
+ oauthScopes: kind === "read" ? ["treeseed:read"] : ["treeseed:admin"],
17
+ kind,
18
+ riskClass,
19
+ confirmation: riskClass === "ordinary" ? "never" : "input_required",
20
+ surfaces: ["rest", "cli"],
21
+ cacheScope: kind === "read" ? "principal" : "none",
22
+ pagination: options.pagination ?? "none",
23
+ concurrencyRequired: options.concurrency ?? ["DELETE", "PUT"].includes(method),
24
+ redactedPaths: options.redactedPaths
25
+ }, { path: z.object(pathShape).strict(), query: kind === "read" ? record : empty, body: kind === "read" ? none : record, output: record });
26
+ }
27
+ const providerPublish = defineOperation({
28
+ operationId: "providers.environment.profiles.publish",
29
+ description: "Publish a value-free provider environment profile descriptor.",
30
+ rest: { method: "PUT", path: "/v1/provider/environment-profiles/{profileId}" },
31
+ parameters: "treeseed.providers.environment.profiles.publish.parameters/v1",
32
+ capability: "providers.execute",
33
+ authentication: "provider",
34
+ oauthScopes: [],
35
+ kind: "mutation",
36
+ riskClass: "ordinary",
37
+ confirmation: "never",
38
+ surfaces: ["rest"],
39
+ cacheScope: "none",
40
+ pagination: "none"
41
+ }, { path: z.object({ profileId: z.string().min(1) }).strict(), query: empty, body: record, output: record });
42
+ const PROVIDER_ENVIRONMENT_OPERATIONS = {
43
+ registrationCode: {
44
+ status: teamOperation("providers.registration.code.status", "GET", "/v1/teams/{teamId}/capacity-provider-registration-code", { teamId: z.string().min(1) }),
45
+ reveal: teamOperation("providers.registration.code.reveal", "POST", "/v1/teams/{teamId}/capacity-provider-registration-code/reveal", { teamId: z.string().min(1) }, { risk: "credential", redactedPaths: ["output.registrationCode"] }),
46
+ rotate: teamOperation("providers.registration.code.rotate", "POST", "/v1/teams/{teamId}/capacity-provider-registration-code/rotate", { teamId: z.string().min(1) }, { risk: "credential", redactedPaths: ["output.registrationCode"], concurrency: true })
47
+ },
48
+ environmentProfiles: {
49
+ list: teamOperation("providers.environment.profiles.list", "GET", "/v1/teams/{teamId}/capacity-providers/{providerId}/environment-profiles", { teamId: z.string().min(1), providerId: z.string().min(1) }, { pagination: "cursor" }),
50
+ show: teamOperation("providers.environment.profiles.show", "GET", "/v1/teams/{teamId}/capacity-providers/{providerId}/environment-profiles/{profileId}", { teamId: z.string().min(1), providerId: z.string().min(1), profileId: z.string().min(1) }),
51
+ publish: providerPublish
52
+ },
53
+ environmentGrants: {
54
+ show: teamOperation("providers.environment.grants.show", "GET", "/v1/teams/{teamId}/assignments/{assignmentId}/environment-grant", { teamId: z.string().min(1), assignmentId: z.string().min(1) }),
55
+ put: teamOperation("providers.environment.grants.put", "PUT", "/v1/teams/{teamId}/assignments/{assignmentId}/environment-grant", { teamId: z.string().min(1), assignmentId: z.string().min(1) }, { risk: "authority" }),
56
+ revoke: teamOperation("providers.environment.grants.revoke", "DELETE", "/v1/teams/{teamId}/assignments/{assignmentId}/environment-grant", { teamId: z.string().min(1), assignmentId: z.string().min(1) }, { risk: "destructive" })
57
+ }
58
+ };
59
+ export {
60
+ PROVIDER_ENVIRONMENT_OPERATIONS
61
+ };
@@ -0,0 +1,2 @@
1
+ import type { CommandNodeDescriptor } from '../../command-tree.js';
2
+ export declare function identityLoginCommand(value: CommandNodeDescriptor): CommandNodeDescriptor;
@@ -0,0 +1,13 @@
1
+ function identityLoginCommand(value) {
2
+ if (value.nodeType !== "leaf") throw new Error("Authentication login must be a leaf command.");
3
+ return { ...value, options: [
4
+ ...value.options ?? [],
5
+ { name: "--timeout", description: "Maximum seconds to wait for identity authorization.", type: "number" },
6
+ { name: "--device", description: "Use headless device authorization instead of local browser PKCE.", type: "boolean" },
7
+ { name: "--issuer", description: "Choose an authorization server advertised by the selected API.", type: "string" },
8
+ { name: "--scope", description: "Comma-separated additional API scopes to request explicitly, such as treeseed:admin. Does not grant application permissions.", type: "string" }
9
+ ] };
10
+ }
11
+ export {
12
+ identityLoginCommand
13
+ };
@@ -0,0 +1,2 @@
1
+ import type { CommandNodeDescriptor } from '../../command-tree.js';
2
+ export declare const managedSecretCommands: CommandNodeDescriptor;
@@ -0,0 +1,31 @@
1
+ const managedSecretCommands = {
2
+ nodeType: "branch",
3
+ segment: "services",
4
+ description: "Team service credentials.",
5
+ children: [{
6
+ nodeType: "branch",
7
+ segment: "credentials",
8
+ description: "Manage credentials in core OpenBao.",
9
+ children: ["show", "put", "delete", "validate"].map((name) => ({
10
+ nodeType: "leaf",
11
+ segment: name,
12
+ description: `${name} an exact service credential profile.`,
13
+ kind: name === "show" ? "read" : "mutation",
14
+ arguments: [{ name: "connection", description: "Service connection ID.", required: true }, { name: "profile", description: "Credential profile ID.", required: true }],
15
+ options: [
16
+ { name: "--team", description: "Authorized team ID.", type: "string" },
17
+ ...name === "show" ? [] : [
18
+ { name: "--plan", description: "Inspect the proposed operation without mutation or secret input.", type: "boolean" },
19
+ { name: "--expected-version", description: "Exact current credential version; zero for first creation.", type: "number", required: true }
20
+ ],
21
+ ...name === "put" ? [{ name: "--stdin", description: "Read the credential field object as JSON from standard input.", type: "boolean" }] : []
22
+ ],
23
+ authorization: { capability: name === "show" ? "secrets.read" : "secrets.write", confirmation: "never" },
24
+ resultSchemaId: `treeseed.services.credentials.${name}/v1`,
25
+ execution: { kind: "local", handlerId: `local.services.credentials.${name}` }
26
+ }))
27
+ }]
28
+ };
29
+ export {
30
+ managedSecretCommands
31
+ };
@@ -0,0 +1,62 @@
1
+ export declare const SECRET_OPERATIONS: {
2
+ readonly credentialStatus: import("../../control-plane-operation.js").ControlPlaneOperationBinding<{
3
+ teamId: string;
4
+ profileId: string;
5
+ connectionId: string;
6
+ }, {}, {
7
+ expectedVersion: number;
8
+ } | undefined, {
9
+ version: number;
10
+ teamId: string;
11
+ profileId: string;
12
+ connectionId: string;
13
+ configured: boolean;
14
+ custody: "openbao";
15
+ fields: string[];
16
+ }>;
17
+ readonly putCredentials: import("../../control-plane-operation.js").ControlPlaneOperationBinding<{
18
+ teamId: string;
19
+ profileId: string;
20
+ connectionId: string;
21
+ }, {}, {
22
+ expectedVersion: number;
23
+ } | undefined, {
24
+ version: number;
25
+ teamId: string;
26
+ profileId: string;
27
+ connectionId: string;
28
+ configured: boolean;
29
+ custody: "openbao";
30
+ fields: string[];
31
+ }>;
32
+ readonly deleteCredentials: import("../../control-plane-operation.js").ControlPlaneOperationBinding<{
33
+ teamId: string;
34
+ profileId: string;
35
+ connectionId: string;
36
+ }, {}, {
37
+ expectedVersion: number;
38
+ } | undefined, {
39
+ version: number;
40
+ teamId: string;
41
+ profileId: string;
42
+ connectionId: string;
43
+ configured: boolean;
44
+ custody: "openbao";
45
+ fields: string[];
46
+ }>;
47
+ readonly validateCredentials: import("../../control-plane-operation.js").ControlPlaneOperationBinding<{
48
+ teamId: string;
49
+ profileId: string;
50
+ connectionId: string;
51
+ }, {}, {
52
+ expectedVersion: number;
53
+ } | undefined, {
54
+ version: number;
55
+ teamId: string;
56
+ profileId: string;
57
+ connectionId: string;
58
+ configured: boolean;
59
+ custody: "openbao";
60
+ fields: string[];
61
+ }>;
62
+ };
@@ -0,0 +1,51 @@
1
+ import { z } from "zod";
2
+ import { defineOperation } from "../../operation-builder.js";
3
+ const id = z.string().regex(/^[A-Za-z0-9][A-Za-z0-9_-]{0,127}$/u);
4
+ const path = z.object({ teamId: id, connectionId: id, profileId: id }).strict();
5
+ const version = z.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER - 1);
6
+ const descriptor = z.object({
7
+ teamId: id,
8
+ connectionId: id,
9
+ profileId: id,
10
+ custody: z.literal("openbao"),
11
+ version,
12
+ configured: z.boolean(),
13
+ fields: z.array(id)
14
+ }).strict();
15
+ const put = z.object({
16
+ expectedVersion: version,
17
+ values: z.record(z.string().max(1024 * 1024)).refine((v) => Object.keys(v).length > 0 && Object.keys(v).length <= 128)
18
+ }).strict();
19
+ function operation(name, method) {
20
+ const read = method === "GET";
21
+ return defineOperation({
22
+ operationId: `services.credentials.${name}`,
23
+ description: `${name} managed service credentials.`,
24
+ rest: { method, path: `/v1/teams/{teamId}/services/{connectionId}/credentials/{profileId}${name === "validate" ? "/validate" : ""}` },
25
+ parameters: `treeseed.services.credentials.${name}.parameters/v1`,
26
+ capability: read ? "secrets.read" : "secrets.write",
27
+ authentication: "oauth",
28
+ oauthScopes: read ? ["treeseed:read"] : ["treeseed:projects:write"],
29
+ kind: read ? "read" : "mutation",
30
+ riskClass: read ? "ordinary" : "credential",
31
+ confirmation: "never",
32
+ surfaces: ["rest"],
33
+ cacheScope: "none",
34
+ pagination: "none",
35
+ redactedPaths: ["body.values"]
36
+ }, {
37
+ path,
38
+ query: z.object({}).strict(),
39
+ body: read ? z.undefined() : name === "put" ? put : z.object({ expectedVersion: version }).strict(),
40
+ output: name === "validate" ? z.object({ ok: z.boolean() }).strict() : descriptor
41
+ });
42
+ }
43
+ const SECRET_OPERATIONS = {
44
+ credentialStatus: operation("show", "GET"),
45
+ putCredentials: operation("put", "PUT"),
46
+ deleteCredentials: operation("delete", "DELETE"),
47
+ validateCredentials: operation("validate", "POST")
48
+ };
49
+ export {
50
+ SECRET_OPERATIONS
51
+ };
@@ -0,0 +1,13 @@
1
+ import type { ControlPlaneOperationBinding } from '../control-plane-operation.js';
2
+ export declare const TREEAI_OPENAPI_DIGESTS: {
3
+ readonly inference: "sha256:29255fae4e74aa0fb96d8abd1cdc5d869f469fc9bb55a68060eeae6d86f4273d";
4
+ readonly training: "sha256:de80f39ca9d0d5a2a7ca6ce588326d3a562c771bc7e077b7e6c4949134ef2143";
5
+ readonly lab: "sha256:8f9a3ca31a63143506e1b28ddb78eda50b2f6760278531b723047d968f56aa07";
6
+ };
7
+ export declare const TREEAI_CONTROL_PLANE_OPERATION_LIST: readonly ControlPlaneOperationBinding<{
8
+ nodeId: string;
9
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>[];
10
+ export declare const TREEAI_CONTROL_PLANE_OPERATIONS: Readonly<Record<string, ControlPlaneOperationBinding<any, any, any, any>>>;
11
+ export declare function treeAiControlPlaneOperation(upstreamOperationId: string): ControlPlaneOperationBinding<{
12
+ nodeId: string;
13
+ }, {}, Record<string, unknown> | undefined, Record<string, unknown>>;
@@ -0,0 +1,61 @@
1
+ import { z } from "zod";
2
+ import { defineOperation } from "../operation-builder.js";
3
+ import { TREEAI_UPSTREAM_OPERATIONS } from "../../treeai/generated/upstream.js";
4
+ const TREEAI_OPENAPI_DIGESTS = {
5
+ inference: "sha256:29255fae4e74aa0fb96d8abd1cdc5d869f469fc9bb55a68060eeae6d86f4273d",
6
+ training: "sha256:de80f39ca9d0d5a2a7ca6ce588326d3a562c771bc7e077b7e6c4949134ef2143",
7
+ lab: "sha256:8f9a3ca31a63143506e1b28ddb78eda50b2f6760278531b723047d968f56aa07"
8
+ };
9
+ function treeSeedOperationId(operation) {
10
+ return `treeai.${operation.operationId.toLowerCase().replace(/[^a-z0-9]+/gu, ".").replace(/^\.|\.$/gu, "")}`;
11
+ }
12
+ function risk(operation) {
13
+ if (/rollback|cancel|disable/u.test(operation.operationId)) return "destructive";
14
+ if (operation.kind === "mutation" && (/promot|enable|activate|campaigns/u.test(operation.operationId) || /(?:^|\.)mode(?:\.|$)/u.test(operation.operationId))) return "authority";
15
+ return "ordinary";
16
+ }
17
+ function pathShape(path) {
18
+ return Object.fromEntries([...path.matchAll(/\{([^}]+)\}/gu)].map((match) => [match[1], z.string().min(1)]));
19
+ }
20
+ function binding(operation) {
21
+ const method = operation.method;
22
+ const kind = operation.kind;
23
+ const riskClass = risk(operation);
24
+ const path = `/v1/ai/nodes/{nodeId}/${operation.service}${operation.path}`;
25
+ return defineOperation({
26
+ operationId: treeSeedOperationId(operation),
27
+ description: `${operation.summary} through a node-scoped TreeAI proxy.`,
28
+ rest: { method, path },
29
+ parameters: `treeseed.${treeSeedOperationId(operation)}.parameters/v1`,
30
+ capability: `treeai.${operation.service}.${kind}`,
31
+ authentication: "oauth_or_provider",
32
+ oauthScopes: kind === "read" ? ["treeseed:read"] : ["treeseed:execution"],
33
+ kind,
34
+ riskClass,
35
+ confirmation: riskClass === "ordinary" ? "never" : "input_required",
36
+ idempotencyRequired: kind === "mutation",
37
+ surfaces: ["rest", "cli"],
38
+ cacheScope: kind === "read" ? "principal" : "none",
39
+ pagination: "none",
40
+ redactedPaths: ["headers.authorization"],
41
+ upstream: { service: "treeai", operationId: operation.operationId, contractVersion: "3.1.1", contractDigest: TREEAI_OPENAPI_DIGESTS[operation.service] }
42
+ }, {
43
+ path: z.object({ nodeId: z.string().min(1), ...pathShape(operation.path) }).strict(),
44
+ query: kind === "read" ? z.record(z.unknown()) : z.object({}).strict(),
45
+ body: kind === "read" ? z.undefined() : z.record(z.unknown()),
46
+ output: z.record(z.unknown())
47
+ });
48
+ }
49
+ const TREEAI_CONTROL_PLANE_OPERATION_LIST = Object.freeze(TREEAI_UPSTREAM_OPERATIONS.map(binding));
50
+ const TREEAI_CONTROL_PLANE_OPERATIONS = Object.freeze(Object.fromEntries(TREEAI_CONTROL_PLANE_OPERATION_LIST.map((item) => [item.descriptor.operationId, item])));
51
+ function treeAiControlPlaneOperation(upstreamOperationId) {
52
+ const operation = TREEAI_CONTROL_PLANE_OPERATION_LIST.find((item) => item.descriptor.upstream?.operationId === upstreamOperationId);
53
+ if (!operation) throw new Error(`Unknown TreeAI operation ${upstreamOperationId}.`);
54
+ return operation;
55
+ }
56
+ export {
57
+ TREEAI_CONTROL_PLANE_OPERATIONS,
58
+ TREEAI_CONTROL_PLANE_OPERATION_LIST,
59
+ TREEAI_OPENAPI_DIGESTS,
60
+ treeAiControlPlaneOperation
61
+ };
@@ -1,3 +1,4 @@
1
+ import type { ControlPlaneOperationBinding } from './control-plane-operation.js';
1
2
  export type CommandOperationKind = 'read' | 'mutation';
2
3
  export type CommandExecutionMode = 'execute' | 'plan';
3
4
  export type CommandErrorCategory = 'unknown_command' | 'invalid_input' | 'ambiguous_context' | 'authentication_required' | 'authorization_denied' | 'confirmation_required' | 'policy_blocked' | 'stale_preflight' | 'conflict' | 'not_found' | 'provider_unavailable' | 'rate_limited' | 'internal_error';
@@ -19,6 +20,31 @@ export interface CommandAuthorizationDescriptor {
19
20
  capability: string;
20
21
  confirmation: 'never' | 'destructive' | 'credential' | 'authority' | 'production' | 'irreversible';
21
22
  }
23
+ export type CommandInputSource = 'argument' | 'context' | 'option';
24
+ export type CommandInputTarget = 'path' | 'query' | 'body';
25
+ export interface CommandInputBinding {
26
+ field: string;
27
+ source: CommandInputSource;
28
+ name: string;
29
+ target: CommandInputTarget;
30
+ required?: boolean;
31
+ transform?: 'identity' | 'integer' | 'csv';
32
+ }
33
+ export type CommandExecutionBinding = {
34
+ kind: 'operation';
35
+ operationId: `${string}.${string}`;
36
+ input: CommandInputBinding[];
37
+ } | {
38
+ kind: 'protocol';
39
+ handlerId: `protocol.${string}`;
40
+ } | {
41
+ kind: 'local';
42
+ handlerId: `local.${string}`;
43
+ } | {
44
+ kind: 'unavailable';
45
+ code: string;
46
+ reason: string;
47
+ };
22
48
  export interface CommandLeafDescriptor {
23
49
  segment: string;
24
50
  description: string;
@@ -27,6 +53,7 @@ export interface CommandLeafDescriptor {
27
53
  options?: CommandOptionDescriptor[];
28
54
  authorization?: CommandAuthorizationDescriptor;
29
55
  resultSchemaId: string;
56
+ execution: CommandExecutionBinding;
30
57
  }
31
58
  export interface CommandBranchDescriptor {
32
59
  segment: string;
@@ -76,4 +103,5 @@ export interface CommandTreeDiagnostic {
76
103
  message: string;
77
104
  }
78
105
  export declare function validateCommandTree(tree: CommandTreeDescriptor): CommandTreeDiagnostic[];
106
+ export declare function validateCommandOperationBindings(tree: CommandTreeDescriptor, operations: readonly ControlPlaneOperationBinding<any, any, any, any>[]): CommandTreeDiagnostic[];
79
107
  export declare function createCommandResult<TResult>(input: Omit<CommandResultEnvelope<TResult>, 'schemaVersion'>): CommandResultEnvelope<TResult>;
@@ -1,3 +1,4 @@
1
+ import { ZodUndefined } from "zod";
1
2
  const SEGMENT = /^[a-z][a-z0-9]*$/;
2
3
  const FORBIDDEN_AGENT_MANAGEMENT_OPTIONS = /* @__PURE__ */ new Set([
3
4
  "--commit",
@@ -31,6 +32,17 @@ function validateCommandTree(tree) {
31
32
  }
32
33
  if ("children" in raw) diagnostics.push({ code: "command_node_ambiguous", path: diagnosticPath, message: "Leaf command nodes cannot contain child commands." });
33
34
  if (!node.resultSchemaId.trim()) diagnostics.push({ code: "result_schema_required", path: `${diagnosticPath}.resultSchemaId`, message: "Leaf commands require a stable result schema." });
35
+ if (!node.execution) diagnostics.push({ code: "command_execution_required", path: `${diagnosticPath}.execution`, message: "Every leaf must declare one authoritative execution binding." });
36
+ if (node.execution?.kind === "operation") {
37
+ const targets = /* @__PURE__ */ new Set();
38
+ for (const binding of node.execution.input) {
39
+ const key = `${binding.target}.${binding.field}`;
40
+ if (targets.has(key)) diagnostics.push({ code: "command_input_target_duplicate", path: `${diagnosticPath}.execution.input`, message: `Duplicate command input target ${key}.` });
41
+ targets.add(key);
42
+ if (!binding.field.trim() || !binding.name.trim()) diagnostics.push({ code: "command_input_binding_invalid", path: `${diagnosticPath}.execution.input`, message: "Command input bindings require field and source names." });
43
+ }
44
+ }
45
+ if (node.execution?.kind === "unavailable" && (!node.execution.code.trim() || !node.execution.reason.trim())) diagnostics.push({ code: "command_unavailable_reason_required", path: `${diagnosticPath}.execution`, message: "Unavailable commands require a stable code and explanation." });
34
46
  const optionNames = /* @__PURE__ */ new Set();
35
47
  for (const option of node.options ?? []) {
36
48
  if (optionNames.has(option.name)) diagnostics.push({ code: "command_option_duplicate", path: `${diagnosticPath}.options.${index}`, message: `Duplicate option ${option.name}.` });
@@ -44,10 +56,47 @@ function validateCommandTree(tree) {
44
56
  visit(tree.commands, []);
45
57
  return diagnostics;
46
58
  }
59
+ function validateCommandOperationBindings(tree, operations) {
60
+ const diagnostics = [];
61
+ const catalog = new Map(operations.map((operation) => [operation.descriptor.operationId, operation]));
62
+ const visit = (nodes, parent) => {
63
+ for (const node of nodes) {
64
+ const path = [...parent, node.segment];
65
+ if (node.nodeType === "branch") {
66
+ visit(node.children, path);
67
+ continue;
68
+ }
69
+ if (node.execution.kind !== "operation") continue;
70
+ const binding = catalog.get(node.execution.operationId);
71
+ const diagnosticPath = `commands.${path.join(".")}.execution`;
72
+ if (!binding) {
73
+ diagnostics.push({ code: "command_operation_unknown", path: diagnosticPath, message: `Unknown control-plane operation ${node.execution.operationId}.` });
74
+ continue;
75
+ }
76
+ if (!binding.descriptor.surfaces.includes("cli")) diagnostics.push({ code: "command_operation_surface_missing", path: diagnosticPath, message: `Operation ${node.execution.operationId} does not declare the CLI surface.` });
77
+ if (binding.descriptor.kind !== node.kind) diagnostics.push({ code: "command_operation_kind_mismatch", path: diagnosticPath, message: `Command and operation ${node.execution.operationId} disagree about mutation behavior.` });
78
+ const expectedConfirmation = binding.descriptor.confirmation === "input_required" ? binding.descriptor.riskClass : "never";
79
+ if ((node.authorization?.confirmation ?? "never") !== expectedConfirmation) diagnostics.push({ code: "command_operation_confirmation_mismatch", path: diagnosticPath, message: `Command and operation ${node.execution.operationId} disagree about confirmation.` });
80
+ const shapes = {
81
+ path: "shape" in binding.schema.path ? Object.keys(binding.schema.path.shape) : null,
82
+ query: "shape" in binding.schema.query ? Object.keys(binding.schema.query.shape) : null,
83
+ body: "shape" in binding.schema.body ? Object.keys(binding.schema.body.shape) : null
84
+ };
85
+ for (const input of node.execution.input) {
86
+ const keys = shapes[input.target];
87
+ const undefinedSchema = binding.schema[input.target] instanceof ZodUndefined;
88
+ if (keys !== null && !keys.includes(input.field) || undefinedSchema) diagnostics.push({ code: "command_operation_input_unknown", path: `${diagnosticPath}.input.${input.target}.${input.field}`, message: `Operation ${node.execution.operationId} does not accept ${input.target} field ${input.field}.` });
89
+ }
90
+ }
91
+ };
92
+ visit(tree.commands, []);
93
+ return diagnostics.sort((left, right) => `${left.path}:${left.code}`.localeCompare(`${right.path}:${right.code}`));
94
+ }
47
95
  function createCommandResult(input) {
48
96
  return { schemaVersion: "treeseed.command-result/v1", ...input };
49
97
  }
50
98
  export {
51
99
  createCommandResult,
100
+ validateCommandOperationBindings,
52
101
  validateCommandTree
53
102
  };
@@ -0,0 +1,8 @@
1
+ export type CommunicationAddressRequirement = 'required' | 'optional';
2
+ export interface CommunicationAddress {
3
+ projectSlug: string | null;
4
+ agentSlug: string;
5
+ requirement: CommunicationAddressRequirement;
6
+ address: string;
7
+ }
8
+ export declare function parseCommunicationAddresses(markdown: string): CommunicationAddress[];
@@ -0,0 +1,57 @@
1
+ const ADDRESS = /(^|[^\p{L}\p{N}._%+-])@([a-z0-9][a-z0-9-]*)(?:\/([a-z0-9][a-z0-9-]*))?/giu;
2
+ function visibleMarkdown(markdown) {
3
+ const lines = markdown.replace(/\r\n?/gu, "\n").split("\n");
4
+ let fenced = false;
5
+ return lines.map((line) => {
6
+ if (/^\s*```/u.test(line)) {
7
+ fenced = !fenced;
8
+ return "";
9
+ }
10
+ if (fenced || /^\s*>/u.test(line)) return "";
11
+ return line.replace(/`[^`]*`/gu, "").replace(/!?\[[^\]]*\]\([^)]*\)/gu, "").replace(/\b[\w.+-]+@[\w.-]+\.[a-z]{2,}\b/giu, "");
12
+ }).join("\n");
13
+ }
14
+ function initialAddressLines(markdown) {
15
+ const lines = visibleMarkdown(markdown).split("\n");
16
+ let started = false;
17
+ const requiredThrough = /* @__PURE__ */ new Map();
18
+ for (let index = 0; index < lines.length; index += 1) {
19
+ const source = lines[index];
20
+ const line = source.trim();
21
+ if (!line && !started) continue;
22
+ if (!line) break;
23
+ started = true;
24
+ const leading = source.match(/^\s*(?:@[a-z0-9][a-z0-9-]*(?:\/[a-z0-9][a-z0-9-]*)?[\s,;:—–-]*)+/iu);
25
+ if (!leading) break;
26
+ requiredThrough.set(index, leading[0].length);
27
+ if (source.slice(leading[0].length).trim()) break;
28
+ }
29
+ return { markdown: visibleMarkdown(markdown), requiredThrough };
30
+ }
31
+ function parseCommunicationAddresses(markdown) {
32
+ const visible = initialAddressLines(markdown);
33
+ const addresses = /* @__PURE__ */ new Map();
34
+ for (const [lineIndex, line] of visible.markdown.split("\n").entries()) {
35
+ ADDRESS.lastIndex = 0;
36
+ for (const match of line.matchAll(ADDRESS)) {
37
+ const first = match[2].toLowerCase();
38
+ const second = match[3]?.toLowerCase() ?? null;
39
+ const projectSlug = second ? first : null;
40
+ const agentSlug = second ?? first;
41
+ const key = `${projectSlug ?? ""}/${agentSlug}`;
42
+ const addressIndex = (match.index ?? 0) + match[1].length;
43
+ const requirement = addressIndex < (visible.requiredThrough.get(lineIndex) ?? 0) ? "required" : "optional";
44
+ const existing = addresses.get(key);
45
+ if (!existing || requirement === "required") addresses.set(key, {
46
+ projectSlug,
47
+ agentSlug,
48
+ requirement,
49
+ address: `@${projectSlug ? `${projectSlug}/` : ""}${agentSlug}`
50
+ });
51
+ }
52
+ }
53
+ return [...addresses.values()];
54
+ }
55
+ export {
56
+ parseCommunicationAddresses
57
+ };