@orchestraworks/cli 0.5.4 → 0.5.7

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 (606) hide show
  1. package/README.md +1 -1
  2. package/dist/artifacts/prelude.js +10 -1
  3. package/dist/cli/api/execute.js +7 -7
  4. package/dist/cli/core/profile.d.ts +2 -2
  5. package/dist/cli/factory/apply-preview.d.ts +23 -6
  6. package/dist/cli/factory/apply-preview.js +70 -43
  7. package/dist/cli/factory/apply-render.js +12 -4
  8. package/dist/cli/factory/apply.d.ts +7 -2
  9. package/dist/cli/factory/apply.js +86 -29
  10. package/dist/cli/factory/diff.js +20 -12
  11. package/dist/cli/factory/image-upload.d.ts +90 -0
  12. package/dist/cli/factory/image-upload.js +489 -0
  13. package/dist/cli/factory/synth.d.ts +7 -0
  14. package/dist/cli/factory/synth.js +35 -0
  15. package/dist/cli/firstRun.d.ts +2 -2
  16. package/dist/cli/firstRun.js +12 -13
  17. package/dist/cli/main.d.ts +1 -1
  18. package/dist/cli/main.js +4 -3
  19. package/dist/cli/upload.d.ts +3 -1
  20. package/dist/cli/upload.js +9 -2
  21. package/dist/constructs/agent.d.ts +9 -1
  22. package/dist/constructs/agent.js +7 -0
  23. package/dist/constructs/compute-provider.js +2 -2
  24. package/dist/constructs/connection.d.ts +22 -16
  25. package/dist/constructs/connection.js +29 -92
  26. package/dist/constructs/connector.d.ts +3 -1
  27. package/dist/constructs/connector.js +2 -0
  28. package/dist/constructs/egress-preset.d.ts +7 -52
  29. package/dist/constructs/egress-preset.js +7 -91
  30. package/dist/constructs/environment.d.ts +47 -70
  31. package/dist/constructs/environment.js +103 -213
  32. package/dist/constructs/gateway-key.d.ts +4 -1
  33. package/dist/constructs/gateway-key.js +4 -3
  34. package/dist/constructs/interfaces.d.ts +10 -2
  35. package/dist/constructs/model-provider-key.js +2 -3
  36. package/dist/constructs/pipeline.d.ts +5 -2
  37. package/dist/constructs/pipeline.js +4 -0
  38. package/dist/constructs/references.d.ts +4 -0
  39. package/dist/constructs/references.js +20 -0
  40. package/dist/constructs/role.d.ts +32 -0
  41. package/dist/constructs/role.js +77 -0
  42. package/dist/constructs/rules.d.ts +4 -4
  43. package/dist/constructs/rules.js +3 -3
  44. package/dist/constructs/secret.d.ts +36 -13
  45. package/dist/constructs/secret.js +110 -14
  46. package/dist/constructs/service-account.d.ts +12 -0
  47. package/dist/constructs/service-account.js +23 -0
  48. package/dist/constructs/skill.d.ts +3 -1
  49. package/dist/constructs/skill.js +2 -0
  50. package/dist/constructs/team-membership.d.ts +43 -0
  51. package/dist/constructs/team-membership.js +59 -0
  52. package/dist/constructs/team.d.ts +40 -0
  53. package/dist/constructs/team.js +107 -0
  54. package/dist/constructs/trigger.d.ts +7 -4
  55. package/dist/constructs/trigger.js +4 -0
  56. package/dist/constructs/workflow.d.ts +1 -1
  57. package/dist/core/factory.d.ts +0 -7
  58. package/dist/core/factory.js +15 -53
  59. package/dist/core/gateway-key-recipe.js +23 -2
  60. package/dist/core/host-pattern.d.ts +5 -0
  61. package/dist/core/host-pattern.js +14 -0
  62. package/dist/core/labels.d.ts +1 -1
  63. package/dist/core/labels.js +1 -1
  64. package/dist/core/outbound-warning.d.ts +2 -2
  65. package/dist/core/outbound-warning.js +52 -41
  66. package/dist/core/plan.d.ts +14 -11
  67. package/dist/core/plan.js +12 -11
  68. package/dist/engine/apply-core.d.ts +71 -67
  69. package/dist/engine/apply-core.js +120 -95
  70. package/dist/engine/client.d.ts +12 -4
  71. package/dist/engine/client.js +8 -3
  72. package/dist/engine/compute-provider-reconcile.js +1 -1
  73. package/dist/engine/condition-references.d.ts +2 -2
  74. package/dist/engine/condition-references.js +6 -6
  75. package/dist/engine/connection-install-link-reconcile.d.ts +4 -3
  76. package/dist/engine/connection-install-link-reconcile.js +35 -28
  77. package/dist/engine/diff.d.ts +12 -14
  78. package/dist/engine/diff.js +247 -113
  79. package/dist/engine/gateway-key-reconcile.d.ts +12 -9
  80. package/dist/engine/gateway-key-reconcile.js +43 -36
  81. package/dist/engine/model-provider-key-reconcile.js +2 -2
  82. package/dist/engine/pipeline-reconcile.d.ts +8 -9
  83. package/dist/engine/pipeline-reconcile.js +14 -10
  84. package/dist/engine/reconcile.d.ts +7 -21
  85. package/dist/engine/reconcile.js +115 -215
  86. package/dist/engine/refusals.d.ts +14 -31
  87. package/dist/engine/refusals.js +32 -81
  88. package/dist/engine/role-membership-reconcile.d.ts +19 -0
  89. package/dist/engine/role-membership-reconcile.js +276 -0
  90. package/dist/engine/secrets-apply.d.ts +18 -4
  91. package/dist/engine/secrets-apply.js +39 -4
  92. package/dist/engine/trigger-reconcile.d.ts +22 -23
  93. package/dist/engine/trigger-reconcile.js +43 -65
  94. package/dist/engine/workflow-reconcile.d.ts +2 -2
  95. package/dist/engine/workflow-reconcile.js +5 -5
  96. package/dist/generated/cli-commands.json +15398 -11771
  97. package/dist/generated/cli-dispatch.d.ts +4 -3
  98. package/dist/generated/cli-dispatch.js +76 -62
  99. package/dist/index.d.ts +12 -7
  100. package/dist/index.js +5 -3
  101. package/dist/metrics/metric.d.ts +3 -3
  102. package/dist/metrics/metric.js +1 -1
  103. package/docs/REFERENCE.md +84 -89
  104. package/node_modules/@orchestraworks/client/dist/apis/AgentsApi.d.ts +1 -1
  105. package/node_modules/@orchestraworks/client/dist/apis/AgentsApi.js +2 -2
  106. package/node_modules/@orchestraworks/client/dist/apis/ArtifactsApi.d.ts +1 -1
  107. package/node_modules/@orchestraworks/client/dist/apis/ArtifactsApi.js +2 -2
  108. package/node_modules/@orchestraworks/client/dist/apis/ConnectionInstallLinksApi.d.ts +1 -1
  109. package/node_modules/@orchestraworks/client/dist/apis/ConnectionInstallLinksApi.js +2 -2
  110. package/node_modules/@orchestraworks/client/dist/apis/ConnectionsApi.d.ts +1 -1
  111. package/node_modules/@orchestraworks/client/dist/apis/ConnectionsApi.js +2 -2
  112. package/node_modules/@orchestraworks/client/dist/apis/EnvironmentsApi.d.ts +1 -1
  113. package/node_modules/@orchestraworks/client/dist/apis/EnvironmentsApi.js +2 -2
  114. package/node_modules/@orchestraworks/client/dist/apis/FilesApi.d.ts +1 -1
  115. package/node_modules/@orchestraworks/client/dist/apis/FilesApi.js +2 -2
  116. package/node_modules/@orchestraworks/client/dist/apis/ImagesApi.d.ts +88 -0
  117. package/node_modules/@orchestraworks/client/dist/apis/ImagesApi.js +239 -0
  118. package/node_modules/@orchestraworks/client/dist/apis/MetricsApi.d.ts +1 -1
  119. package/node_modules/@orchestraworks/client/dist/apis/MetricsApi.js +2 -2
  120. package/node_modules/@orchestraworks/client/dist/apis/OrganizationsApi.d.ts +1 -15
  121. package/node_modules/@orchestraworks/client/dist/apis/OrganizationsApi.js +3 -49
  122. package/node_modules/@orchestraworks/client/dist/apis/PipelinesApi.d.ts +1 -1
  123. package/node_modules/@orchestraworks/client/dist/apis/PipelinesApi.js +2 -2
  124. package/node_modules/@orchestraworks/client/dist/apis/ProviderConnectionIntentsApi.d.ts +1 -1
  125. package/node_modules/@orchestraworks/client/dist/apis/ProviderConnectionIntentsApi.js +2 -2
  126. package/node_modules/@orchestraworks/client/dist/apis/SecretsApi.d.ts +1 -1
  127. package/node_modules/@orchestraworks/client/dist/apis/SecretsApi.js +2 -2
  128. package/node_modules/@orchestraworks/client/dist/apis/SessionsApi.d.ts +1 -1
  129. package/node_modules/@orchestraworks/client/dist/apis/SessionsApi.js +2 -2
  130. package/node_modules/@orchestraworks/client/dist/apis/SkillsApi.d.ts +1 -1
  131. package/node_modules/@orchestraworks/client/dist/apis/SkillsApi.js +2 -2
  132. package/node_modules/@orchestraworks/client/dist/apis/TeamMembershipsApi.d.ts +96 -0
  133. package/node_modules/@orchestraworks/client/dist/apis/{GroupsApi.js → TeamMembershipsApi.js} +62 -59
  134. package/node_modules/@orchestraworks/client/dist/apis/TeamsApi.d.ts +93 -0
  135. package/node_modules/@orchestraworks/client/dist/apis/{ProjectsApi.js → TeamsApi.js} +55 -55
  136. package/node_modules/@orchestraworks/client/dist/apis/TriggersApi.d.ts +1 -1
  137. package/node_modules/@orchestraworks/client/dist/apis/TriggersApi.js +2 -2
  138. package/node_modules/@orchestraworks/client/dist/apis/UsersApi.d.ts +0 -15
  139. package/node_modules/@orchestraworks/client/dist/apis/UsersApi.js +0 -49
  140. package/node_modules/@orchestraworks/client/dist/apis/VolumesApi.d.ts +1 -1
  141. package/node_modules/@orchestraworks/client/dist/apis/VolumesApi.js +2 -2
  142. package/node_modules/@orchestraworks/client/dist/apis/WorkItemsApi.d.ts +2 -2
  143. package/node_modules/@orchestraworks/client/dist/apis/WorkItemsApi.js +4 -4
  144. package/node_modules/@orchestraworks/client/dist/apis/WorkflowsApi.d.ts +1 -1
  145. package/node_modules/@orchestraworks/client/dist/apis/WorkflowsApi.js +2 -2
  146. package/node_modules/@orchestraworks/client/dist/apis/index.d.ts +3 -2
  147. package/node_modules/@orchestraworks/client/dist/apis/index.js +3 -2
  148. package/node_modules/@orchestraworks/client/dist/esm/apis/AgentsApi.d.ts +1 -1
  149. package/node_modules/@orchestraworks/client/dist/esm/apis/AgentsApi.js +2 -2
  150. package/node_modules/@orchestraworks/client/dist/esm/apis/ArtifactsApi.d.ts +1 -1
  151. package/node_modules/@orchestraworks/client/dist/esm/apis/ArtifactsApi.js +2 -2
  152. package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionInstallLinksApi.d.ts +1 -1
  153. package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionInstallLinksApi.js +2 -2
  154. package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionsApi.d.ts +1 -1
  155. package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionsApi.js +2 -2
  156. package/node_modules/@orchestraworks/client/dist/esm/apis/EnvironmentsApi.d.ts +1 -1
  157. package/node_modules/@orchestraworks/client/dist/esm/apis/EnvironmentsApi.js +2 -2
  158. package/node_modules/@orchestraworks/client/dist/esm/apis/FilesApi.d.ts +1 -1
  159. package/node_modules/@orchestraworks/client/dist/esm/apis/FilesApi.js +2 -2
  160. package/node_modules/@orchestraworks/client/dist/esm/apis/ImagesApi.d.ts +88 -0
  161. package/node_modules/@orchestraworks/client/dist/esm/apis/ImagesApi.js +235 -0
  162. package/node_modules/@orchestraworks/client/dist/esm/apis/MetricsApi.d.ts +1 -1
  163. package/node_modules/@orchestraworks/client/dist/esm/apis/MetricsApi.js +2 -2
  164. package/node_modules/@orchestraworks/client/dist/esm/apis/OrganizationsApi.d.ts +1 -15
  165. package/node_modules/@orchestraworks/client/dist/esm/apis/OrganizationsApi.js +3 -49
  166. package/node_modules/@orchestraworks/client/dist/esm/apis/PipelinesApi.d.ts +1 -1
  167. package/node_modules/@orchestraworks/client/dist/esm/apis/PipelinesApi.js +2 -2
  168. package/node_modules/@orchestraworks/client/dist/esm/apis/ProviderConnectionIntentsApi.d.ts +1 -1
  169. package/node_modules/@orchestraworks/client/dist/esm/apis/ProviderConnectionIntentsApi.js +2 -2
  170. package/node_modules/@orchestraworks/client/dist/esm/apis/SecretsApi.d.ts +1 -1
  171. package/node_modules/@orchestraworks/client/dist/esm/apis/SecretsApi.js +2 -2
  172. package/node_modules/@orchestraworks/client/dist/esm/apis/SessionsApi.d.ts +1 -1
  173. package/node_modules/@orchestraworks/client/dist/esm/apis/SessionsApi.js +2 -2
  174. package/node_modules/@orchestraworks/client/dist/esm/apis/SkillsApi.d.ts +1 -1
  175. package/node_modules/@orchestraworks/client/dist/esm/apis/SkillsApi.js +2 -2
  176. package/node_modules/@orchestraworks/client/dist/esm/apis/TeamMembershipsApi.d.ts +96 -0
  177. package/node_modules/@orchestraworks/client/dist/esm/apis/{GroupsApi.js → TeamMembershipsApi.js} +60 -57
  178. package/node_modules/@orchestraworks/client/dist/esm/apis/TeamsApi.d.ts +93 -0
  179. package/node_modules/@orchestraworks/client/dist/esm/apis/{ProjectsApi.js → TeamsApi.js} +53 -53
  180. package/node_modules/@orchestraworks/client/dist/esm/apis/TriggersApi.d.ts +1 -1
  181. package/node_modules/@orchestraworks/client/dist/esm/apis/TriggersApi.js +2 -2
  182. package/node_modules/@orchestraworks/client/dist/esm/apis/UsersApi.d.ts +0 -15
  183. package/node_modules/@orchestraworks/client/dist/esm/apis/UsersApi.js +0 -49
  184. package/node_modules/@orchestraworks/client/dist/esm/apis/VolumesApi.d.ts +1 -1
  185. package/node_modules/@orchestraworks/client/dist/esm/apis/VolumesApi.js +2 -2
  186. package/node_modules/@orchestraworks/client/dist/esm/apis/WorkItemsApi.d.ts +2 -2
  187. package/node_modules/@orchestraworks/client/dist/esm/apis/WorkItemsApi.js +4 -4
  188. package/node_modules/@orchestraworks/client/dist/esm/apis/WorkflowsApi.d.ts +1 -1
  189. package/node_modules/@orchestraworks/client/dist/esm/apis/WorkflowsApi.js +2 -2
  190. package/node_modules/@orchestraworks/client/dist/esm/apis/index.d.ts +3 -2
  191. package/node_modules/@orchestraworks/client/dist/esm/apis/index.js +3 -2
  192. package/node_modules/@orchestraworks/client/dist/esm/models/AddArtifactVersionRequest.d.ts +1 -1
  193. package/node_modules/@orchestraworks/client/dist/esm/models/Agent.d.ts +9 -3
  194. package/node_modules/@orchestraworks/client/dist/esm/models/Agent.js +3 -2
  195. package/node_modules/@orchestraworks/client/dist/esm/models/ApiErrorDetail.d.ts +9 -1
  196. package/node_modules/@orchestraworks/client/dist/esm/models/ApiErrorDetail.js +5 -1
  197. package/node_modules/@orchestraworks/client/dist/esm/models/Artifact.d.ts +2 -2
  198. package/node_modules/@orchestraworks/client/dist/esm/models/Artifact.js +2 -2
  199. package/node_modules/@orchestraworks/client/dist/esm/models/ArtifactSummary.d.ts +2 -2
  200. package/node_modules/@orchestraworks/client/dist/esm/models/ArtifactSummary.js +2 -2
  201. package/node_modules/@orchestraworks/client/dist/esm/models/AssignAction.d.ts +1 -1
  202. package/node_modules/@orchestraworks/client/dist/esm/models/AssignAction.js +2 -2
  203. package/node_modules/@orchestraworks/client/dist/esm/models/AssignWorkItemRequest.d.ts +2 -2
  204. package/node_modules/@orchestraworks/client/dist/esm/models/AssignWorkItemRequest.js +2 -2
  205. package/node_modules/@orchestraworks/client/dist/esm/models/ComputeProviderTarget.d.ts +6 -0
  206. package/node_modules/@orchestraworks/client/dist/esm/models/ComputeProviderTarget.js +2 -0
  207. package/node_modules/@orchestraworks/client/dist/esm/models/Connection.d.ts +16 -3
  208. package/node_modules/@orchestraworks/client/dist/esm/models/Connection.js +8 -2
  209. package/node_modules/@orchestraworks/client/dist/esm/models/ConnectionInstallLink.d.ts +2 -2
  210. package/node_modules/@orchestraworks/client/dist/esm/models/ConnectionInstallLink.js +2 -2
  211. package/node_modules/@orchestraworks/client/dist/esm/models/Connector.d.ts +2 -2
  212. package/node_modules/@orchestraworks/client/dist/esm/models/Connector.js +2 -2
  213. package/node_modules/@orchestraworks/client/dist/esm/models/CreateAgentRequest.d.ts +2 -2
  214. package/node_modules/@orchestraworks/client/dist/esm/models/CreateAgentRequest.js +2 -2
  215. package/node_modules/@orchestraworks/client/dist/esm/models/CreateArtifactRequest.d.ts +4 -4
  216. package/node_modules/@orchestraworks/client/dist/esm/models/CreateArtifactRequest.js +2 -2
  217. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionInstallLinkRequest.d.ts +3 -3
  218. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionInstallLinkRequest.js +2 -2
  219. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionRequest.d.ts +8 -2
  220. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionRequest.js +4 -2
  221. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectorRequest.d.ts +2 -2
  222. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectorRequest.js +2 -2
  223. package/node_modules/@orchestraworks/client/dist/esm/models/CreateDashboardRequest.d.ts +3 -3
  224. package/node_modules/@orchestraworks/client/dist/esm/models/CreateDashboardRequest.js +2 -2
  225. package/node_modules/@orchestraworks/client/dist/esm/models/CreateEnvironmentRequest.d.ts +2 -2
  226. package/node_modules/@orchestraworks/client/dist/esm/models/CreateEnvironmentRequest.js +2 -2
  227. package/node_modules/@orchestraworks/client/dist/esm/models/CreateFileRequest.d.ts +2 -2
  228. package/node_modules/@orchestraworks/client/dist/esm/models/CreateFileRequest.js +2 -2
  229. package/node_modules/@orchestraworks/client/dist/esm/models/CreateGatewayKeyRequest.d.ts +2 -2
  230. package/node_modules/@orchestraworks/client/dist/esm/models/CreateGatewayKeyRequest.js +2 -2
  231. package/node_modules/@orchestraworks/client/dist/esm/models/CreateImageRequest.d.ts +38 -0
  232. package/node_modules/@orchestraworks/client/dist/esm/models/{GroupMemberAgent.js → CreateImageRequest.js} +12 -16
  233. package/node_modules/@orchestraworks/client/dist/esm/models/CreateMachineRequest.d.ts +2 -2
  234. package/node_modules/@orchestraworks/client/dist/esm/models/CreateMachineRequest.js +2 -2
  235. package/node_modules/@orchestraworks/client/dist/esm/models/CreateMetricRequest.d.ts +2 -2
  236. package/node_modules/@orchestraworks/client/dist/esm/models/CreateMetricRequest.js +2 -2
  237. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationInvitationRequest.d.ts +4 -4
  238. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationInvitationRequest.js +3 -3
  239. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationMembershipRequest.d.ts +1 -8
  240. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationMembershipRequest.js +0 -3
  241. package/node_modules/@orchestraworks/client/dist/esm/models/CreatePipelineRequest.d.ts +2 -2
  242. package/node_modules/@orchestraworks/client/dist/esm/models/CreatePipelineRequest.js +2 -2
  243. package/node_modules/@orchestraworks/client/dist/esm/models/CreateProviderConnectionIntentRequest.d.ts +3 -3
  244. package/node_modules/@orchestraworks/client/dist/esm/models/CreateProviderConnectionIntentRequest.js +2 -2
  245. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSecretRequest.d.ts +8 -2
  246. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSecretRequest.js +4 -2
  247. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSessionRequest.d.ts +2 -2
  248. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSessionRequest.js +2 -2
  249. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSkillRequest.d.ts +2 -2
  250. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSkillRequest.js +2 -2
  251. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamMembershipRequest.d.ts +65 -0
  252. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamMembershipRequest.js +61 -0
  253. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamRequest.d.ts +80 -0
  254. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamRequest.js +64 -0
  255. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTriggerRequest.d.ts +2 -2
  256. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTriggerRequest.js +2 -2
  257. package/node_modules/@orchestraworks/client/dist/esm/models/CreateVolumeRequest.d.ts +2 -2
  258. package/node_modules/@orchestraworks/client/dist/esm/models/CreateVolumeRequest.js +2 -2
  259. package/node_modules/@orchestraworks/client/dist/esm/models/CreateWorkflowRequest.d.ts +1 -1
  260. package/node_modules/@orchestraworks/client/dist/esm/models/Dashboard.d.ts +8 -2
  261. package/node_modules/@orchestraworks/client/dist/esm/models/Dashboard.js +6 -2
  262. package/node_modules/@orchestraworks/client/dist/esm/models/DashboardChart.d.ts +45 -4
  263. package/node_modules/@orchestraworks/client/dist/esm/models/DashboardChart.js +29 -5
  264. package/node_modules/@orchestraworks/client/dist/esm/models/DashboardChartQuery.d.ts +1 -1
  265. package/node_modules/@orchestraworks/client/dist/esm/models/Delivery.d.ts +2 -2
  266. package/node_modules/@orchestraworks/client/dist/esm/models/Delivery.js +2 -2
  267. package/node_modules/@orchestraworks/client/dist/esm/models/EgressPolicyRule.d.ts +0 -13
  268. package/node_modules/@orchestraworks/client/dist/esm/models/EgressPolicyRule.js +0 -5
  269. package/node_modules/@orchestraworks/client/dist/esm/models/EntitlementTeamUsage.d.ts +58 -0
  270. package/node_modules/@orchestraworks/client/dist/esm/models/EntitlementTeamUsage.js +64 -0
  271. package/node_modules/@orchestraworks/client/dist/esm/models/Environment.d.ts +2 -2
  272. package/node_modules/@orchestraworks/client/dist/esm/models/Environment.js +2 -2
  273. package/node_modules/@orchestraworks/client/dist/esm/models/EnvironmentEgressPolicy.d.ts +1 -1
  274. package/node_modules/@orchestraworks/client/dist/esm/models/GatewayKey.d.ts +2 -2
  275. package/node_modules/@orchestraworks/client/dist/esm/models/GatewayKey.js +2 -2
  276. package/node_modules/@orchestraworks/client/dist/esm/models/Image.d.ts +113 -0
  277. package/node_modules/@orchestraworks/client/dist/esm/models/Image.js +91 -0
  278. package/node_modules/@orchestraworks/client/dist/esm/models/InboundWebhookEdge.d.ts +2 -2
  279. package/node_modules/@orchestraworks/client/dist/esm/models/InboundWebhookEdge.js +2 -2
  280. package/node_modules/@orchestraworks/client/dist/esm/models/InvitationTeamMembership.d.ts +44 -0
  281. package/node_modules/@orchestraworks/client/dist/esm/models/InvitationTeamMembership.js +47 -0
  282. package/node_modules/@orchestraworks/client/dist/esm/models/MachineEgressPolicyDiagnostics.d.ts +1 -1
  283. package/node_modules/@orchestraworks/client/dist/esm/models/MachineEgressRuleDiagnostics.d.ts +0 -6
  284. package/node_modules/@orchestraworks/client/dist/esm/models/MachineEgressRuleDiagnostics.js +0 -4
  285. package/node_modules/@orchestraworks/client/dist/esm/models/MachineView.d.ts +2 -2
  286. package/node_modules/@orchestraworks/client/dist/esm/models/MachineView.js +2 -2
  287. package/node_modules/@orchestraworks/client/dist/esm/models/MessageWorkItemRequest.d.ts +1 -1
  288. package/node_modules/@orchestraworks/client/dist/esm/models/Metric.d.ts +2 -2
  289. package/node_modules/@orchestraworks/client/dist/esm/models/Metric.js +2 -2
  290. package/node_modules/@orchestraworks/client/dist/esm/models/MetricValue.d.ts +2 -2
  291. package/node_modules/@orchestraworks/client/dist/esm/models/MetricValue.js +2 -2
  292. package/node_modules/@orchestraworks/client/dist/esm/models/ModelFile.d.ts +2 -2
  293. package/node_modules/@orchestraworks/client/dist/esm/models/ModelFile.js +2 -2
  294. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationEntitlements.d.ts +7 -0
  295. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationEntitlements.js +5 -0
  296. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationInvitation.d.ts +4 -4
  297. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationInvitation.js +4 -4
  298. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationMembership.d.ts +5 -5
  299. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationMembership.js +4 -4
  300. package/node_modules/@orchestraworks/client/dist/esm/models/PageImage.d.ts +51 -0
  301. package/node_modules/@orchestraworks/client/dist/esm/models/{PageProject.js → PageImage.js} +11 -11
  302. package/node_modules/@orchestraworks/client/dist/esm/models/PageTeam.d.ts +51 -0
  303. package/node_modules/@orchestraworks/client/dist/esm/models/{PageGroupSummary.js → PageTeam.js} +11 -11
  304. package/node_modules/@orchestraworks/client/dist/esm/models/PageTeamMembership.d.ts +51 -0
  305. package/node_modules/@orchestraworks/client/dist/esm/models/PageTeamMembership.js +56 -0
  306. package/node_modules/@orchestraworks/client/dist/esm/models/Pipeline.d.ts +2 -2
  307. package/node_modules/@orchestraworks/client/dist/esm/models/Pipeline.js +2 -2
  308. package/node_modules/@orchestraworks/client/dist/esm/models/PolicyAssignment.d.ts +8 -2
  309. package/node_modules/@orchestraworks/client/dist/esm/models/PolicyAssignment.js +4 -2
  310. package/node_modules/@orchestraworks/client/dist/esm/models/ProviderConnectionIntent.d.ts +2 -2
  311. package/node_modules/@orchestraworks/client/dist/esm/models/ProviderConnectionIntent.js +2 -2
  312. package/node_modules/@orchestraworks/client/dist/esm/models/ReferenceSubject.d.ts +1 -1
  313. package/node_modules/@orchestraworks/client/dist/esm/models/ReferenceSubject.js +1 -1
  314. package/node_modules/@orchestraworks/client/dist/esm/models/Role.d.ts +6 -0
  315. package/node_modules/@orchestraworks/client/dist/esm/models/Role.js +4 -0
  316. package/node_modules/@orchestraworks/client/dist/esm/models/Secret.d.ts +16 -3
  317. package/node_modules/@orchestraworks/client/dist/esm/models/Secret.js +8 -2
  318. package/node_modules/@orchestraworks/client/dist/esm/models/ServiceAccount.d.ts +7 -1
  319. package/node_modules/@orchestraworks/client/dist/esm/models/ServiceAccount.js +1 -0
  320. package/node_modules/@orchestraworks/client/dist/esm/models/Session.d.ts +3 -2
  321. package/node_modules/@orchestraworks/client/dist/esm/models/Session.js +3 -2
  322. package/node_modules/@orchestraworks/client/dist/esm/models/SessionSummary.d.ts +3 -2
  323. package/node_modules/@orchestraworks/client/dist/esm/models/SessionSummary.js +3 -2
  324. package/node_modules/@orchestraworks/client/dist/esm/models/Skill.d.ts +2 -2
  325. package/node_modules/@orchestraworks/client/dist/esm/models/Skill.js +2 -2
  326. package/node_modules/@orchestraworks/client/dist/esm/models/SnapshotAnchor.d.ts +1 -1
  327. package/node_modules/@orchestraworks/client/dist/esm/models/Team.d.ts +104 -0
  328. package/node_modules/@orchestraworks/client/dist/esm/models/{GroupSummary.js → Team.js} +25 -15
  329. package/node_modules/@orchestraworks/client/dist/esm/models/TeamMembership.d.ts +83 -0
  330. package/node_modules/@orchestraworks/client/dist/esm/models/TeamMembership.js +77 -0
  331. package/node_modules/@orchestraworks/client/dist/esm/models/Trigger.d.ts +2 -2
  332. package/node_modules/@orchestraworks/client/dist/esm/models/Trigger.js +2 -2
  333. package/node_modules/@orchestraworks/client/dist/esm/models/TriggerTarget.d.ts +1 -1
  334. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateArtifactRequest.d.ts +1 -1
  335. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateConnectionRequest.d.ts +6 -0
  336. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateConnectionRequest.js +2 -0
  337. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationInvitationRequest.d.ts +4 -4
  338. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationInvitationRequest.js +3 -3
  339. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationMembershipRequest.d.ts +1 -8
  340. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationMembershipRequest.js +0 -3
  341. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateSecretRequest.d.ts +6 -0
  342. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateSecretRequest.js +2 -0
  343. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamMembershipRequest.d.ts +47 -0
  344. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamMembershipRequest.js +51 -0
  345. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamRequest.d.ts +68 -0
  346. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamRequest.js +58 -0
  347. package/node_modules/@orchestraworks/client/dist/esm/models/UserGrant.d.ts +2 -2
  348. package/node_modules/@orchestraworks/client/dist/esm/models/UserGrant.js +2 -2
  349. package/node_modules/@orchestraworks/client/dist/esm/models/Volume.d.ts +10 -3
  350. package/node_modules/@orchestraworks/client/dist/esm/models/Volume.js +4 -2
  351. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemActivity.d.ts +2 -2
  352. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemAssignment.d.ts +7 -7
  353. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemAssignment.js +5 -5
  354. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemDraftAssignment.d.ts +2 -2
  355. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemDraftAssignment.js +2 -2
  356. package/node_modules/@orchestraworks/client/dist/esm/models/Workflow.d.ts +2 -2
  357. package/node_modules/@orchestraworks/client/dist/esm/models/Workflow.js +2 -2
  358. package/node_modules/@orchestraworks/client/dist/esm/models/index.d.ts +13 -17
  359. package/node_modules/@orchestraworks/client/dist/esm/models/index.js +13 -17
  360. package/node_modules/@orchestraworks/client/dist/models/AddArtifactVersionRequest.d.ts +1 -1
  361. package/node_modules/@orchestraworks/client/dist/models/Agent.d.ts +9 -3
  362. package/node_modules/@orchestraworks/client/dist/models/Agent.js +3 -2
  363. package/node_modules/@orchestraworks/client/dist/models/ApiErrorDetail.d.ts +9 -1
  364. package/node_modules/@orchestraworks/client/dist/models/ApiErrorDetail.js +5 -1
  365. package/node_modules/@orchestraworks/client/dist/models/Artifact.d.ts +2 -2
  366. package/node_modules/@orchestraworks/client/dist/models/Artifact.js +2 -2
  367. package/node_modules/@orchestraworks/client/dist/models/ArtifactSummary.d.ts +2 -2
  368. package/node_modules/@orchestraworks/client/dist/models/ArtifactSummary.js +2 -2
  369. package/node_modules/@orchestraworks/client/dist/models/AssignAction.d.ts +1 -1
  370. package/node_modules/@orchestraworks/client/dist/models/AssignAction.js +2 -2
  371. package/node_modules/@orchestraworks/client/dist/models/AssignWorkItemRequest.d.ts +2 -2
  372. package/node_modules/@orchestraworks/client/dist/models/AssignWorkItemRequest.js +2 -2
  373. package/node_modules/@orchestraworks/client/dist/models/ComputeProviderTarget.d.ts +6 -0
  374. package/node_modules/@orchestraworks/client/dist/models/ComputeProviderTarget.js +2 -0
  375. package/node_modules/@orchestraworks/client/dist/models/Connection.d.ts +16 -3
  376. package/node_modules/@orchestraworks/client/dist/models/Connection.js +8 -2
  377. package/node_modules/@orchestraworks/client/dist/models/ConnectionInstallLink.d.ts +2 -2
  378. package/node_modules/@orchestraworks/client/dist/models/ConnectionInstallLink.js +2 -2
  379. package/node_modules/@orchestraworks/client/dist/models/Connector.d.ts +2 -2
  380. package/node_modules/@orchestraworks/client/dist/models/Connector.js +2 -2
  381. package/node_modules/@orchestraworks/client/dist/models/CreateAgentRequest.d.ts +2 -2
  382. package/node_modules/@orchestraworks/client/dist/models/CreateAgentRequest.js +2 -2
  383. package/node_modules/@orchestraworks/client/dist/models/CreateArtifactRequest.d.ts +4 -4
  384. package/node_modules/@orchestraworks/client/dist/models/CreateArtifactRequest.js +2 -2
  385. package/node_modules/@orchestraworks/client/dist/models/CreateConnectionInstallLinkRequest.d.ts +3 -3
  386. package/node_modules/@orchestraworks/client/dist/models/CreateConnectionInstallLinkRequest.js +2 -2
  387. package/node_modules/@orchestraworks/client/dist/models/CreateConnectionRequest.d.ts +8 -2
  388. package/node_modules/@orchestraworks/client/dist/models/CreateConnectionRequest.js +4 -2
  389. package/node_modules/@orchestraworks/client/dist/models/CreateConnectorRequest.d.ts +2 -2
  390. package/node_modules/@orchestraworks/client/dist/models/CreateConnectorRequest.js +2 -2
  391. package/node_modules/@orchestraworks/client/dist/models/CreateDashboardRequest.d.ts +3 -3
  392. package/node_modules/@orchestraworks/client/dist/models/CreateDashboardRequest.js +2 -2
  393. package/node_modules/@orchestraworks/client/dist/models/CreateEnvironmentRequest.d.ts +2 -2
  394. package/node_modules/@orchestraworks/client/dist/models/CreateEnvironmentRequest.js +2 -2
  395. package/node_modules/@orchestraworks/client/dist/models/CreateFileRequest.d.ts +2 -2
  396. package/node_modules/@orchestraworks/client/dist/models/CreateFileRequest.js +2 -2
  397. package/node_modules/@orchestraworks/client/dist/models/CreateGatewayKeyRequest.d.ts +2 -2
  398. package/node_modules/@orchestraworks/client/dist/models/CreateGatewayKeyRequest.js +2 -2
  399. package/node_modules/@orchestraworks/client/dist/models/CreateImageRequest.d.ts +38 -0
  400. package/node_modules/@orchestraworks/client/dist/models/CreateImageRequest.js +54 -0
  401. package/node_modules/@orchestraworks/client/dist/models/CreateMachineRequest.d.ts +2 -2
  402. package/node_modules/@orchestraworks/client/dist/models/CreateMachineRequest.js +2 -2
  403. package/node_modules/@orchestraworks/client/dist/models/CreateMetricRequest.d.ts +2 -2
  404. package/node_modules/@orchestraworks/client/dist/models/CreateMetricRequest.js +2 -2
  405. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationInvitationRequest.d.ts +4 -4
  406. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationInvitationRequest.js +3 -3
  407. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationMembershipRequest.d.ts +1 -8
  408. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationMembershipRequest.js +0 -3
  409. package/node_modules/@orchestraworks/client/dist/models/CreatePipelineRequest.d.ts +2 -2
  410. package/node_modules/@orchestraworks/client/dist/models/CreatePipelineRequest.js +2 -2
  411. package/node_modules/@orchestraworks/client/dist/models/CreateProviderConnectionIntentRequest.d.ts +3 -3
  412. package/node_modules/@orchestraworks/client/dist/models/CreateProviderConnectionIntentRequest.js +2 -2
  413. package/node_modules/@orchestraworks/client/dist/models/CreateSecretRequest.d.ts +8 -2
  414. package/node_modules/@orchestraworks/client/dist/models/CreateSecretRequest.js +4 -2
  415. package/node_modules/@orchestraworks/client/dist/models/CreateSessionRequest.d.ts +2 -2
  416. package/node_modules/@orchestraworks/client/dist/models/CreateSessionRequest.js +2 -2
  417. package/node_modules/@orchestraworks/client/dist/models/CreateSkillRequest.d.ts +2 -2
  418. package/node_modules/@orchestraworks/client/dist/models/CreateSkillRequest.js +2 -2
  419. package/node_modules/@orchestraworks/client/dist/models/CreateTeamMembershipRequest.d.ts +65 -0
  420. package/node_modules/@orchestraworks/client/dist/models/CreateTeamMembershipRequest.js +69 -0
  421. package/node_modules/@orchestraworks/client/dist/models/CreateTeamRequest.d.ts +80 -0
  422. package/node_modules/@orchestraworks/client/dist/models/CreateTeamRequest.js +72 -0
  423. package/node_modules/@orchestraworks/client/dist/models/CreateTriggerRequest.d.ts +2 -2
  424. package/node_modules/@orchestraworks/client/dist/models/CreateTriggerRequest.js +2 -2
  425. package/node_modules/@orchestraworks/client/dist/models/CreateVolumeRequest.d.ts +2 -2
  426. package/node_modules/@orchestraworks/client/dist/models/CreateVolumeRequest.js +2 -2
  427. package/node_modules/@orchestraworks/client/dist/models/CreateWorkflowRequest.d.ts +1 -1
  428. package/node_modules/@orchestraworks/client/dist/models/Dashboard.d.ts +8 -2
  429. package/node_modules/@orchestraworks/client/dist/models/Dashboard.js +6 -2
  430. package/node_modules/@orchestraworks/client/dist/models/DashboardChart.d.ts +45 -4
  431. package/node_modules/@orchestraworks/client/dist/models/DashboardChart.js +30 -6
  432. package/node_modules/@orchestraworks/client/dist/models/DashboardChartQuery.d.ts +1 -1
  433. package/node_modules/@orchestraworks/client/dist/models/Delivery.d.ts +2 -2
  434. package/node_modules/@orchestraworks/client/dist/models/Delivery.js +2 -2
  435. package/node_modules/@orchestraworks/client/dist/models/EgressPolicyRule.d.ts +0 -13
  436. package/node_modules/@orchestraworks/client/dist/models/EgressPolicyRule.js +0 -5
  437. package/node_modules/@orchestraworks/client/dist/models/EntitlementTeamUsage.d.ts +58 -0
  438. package/node_modules/@orchestraworks/client/dist/models/EntitlementTeamUsage.js +72 -0
  439. package/node_modules/@orchestraworks/client/dist/models/Environment.d.ts +2 -2
  440. package/node_modules/@orchestraworks/client/dist/models/Environment.js +2 -2
  441. package/node_modules/@orchestraworks/client/dist/models/EnvironmentEgressPolicy.d.ts +1 -1
  442. package/node_modules/@orchestraworks/client/dist/models/GatewayKey.d.ts +2 -2
  443. package/node_modules/@orchestraworks/client/dist/models/GatewayKey.js +2 -2
  444. package/node_modules/@orchestraworks/client/dist/models/Image.d.ts +113 -0
  445. package/node_modules/@orchestraworks/client/dist/models/Image.js +99 -0
  446. package/node_modules/@orchestraworks/client/dist/models/InboundWebhookEdge.d.ts +2 -2
  447. package/node_modules/@orchestraworks/client/dist/models/InboundWebhookEdge.js +2 -2
  448. package/node_modules/@orchestraworks/client/dist/models/InvitationTeamMembership.d.ts +44 -0
  449. package/node_modules/@orchestraworks/client/dist/models/InvitationTeamMembership.js +54 -0
  450. package/node_modules/@orchestraworks/client/dist/models/MachineEgressPolicyDiagnostics.d.ts +1 -1
  451. package/node_modules/@orchestraworks/client/dist/models/MachineEgressRuleDiagnostics.d.ts +0 -6
  452. package/node_modules/@orchestraworks/client/dist/models/MachineEgressRuleDiagnostics.js +0 -4
  453. package/node_modules/@orchestraworks/client/dist/models/MachineView.d.ts +2 -2
  454. package/node_modules/@orchestraworks/client/dist/models/MachineView.js +2 -2
  455. package/node_modules/@orchestraworks/client/dist/models/MessageWorkItemRequest.d.ts +1 -1
  456. package/node_modules/@orchestraworks/client/dist/models/Metric.d.ts +2 -2
  457. package/node_modules/@orchestraworks/client/dist/models/Metric.js +2 -2
  458. package/node_modules/@orchestraworks/client/dist/models/MetricValue.d.ts +2 -2
  459. package/node_modules/@orchestraworks/client/dist/models/MetricValue.js +2 -2
  460. package/node_modules/@orchestraworks/client/dist/models/ModelFile.d.ts +2 -2
  461. package/node_modules/@orchestraworks/client/dist/models/ModelFile.js +2 -2
  462. package/node_modules/@orchestraworks/client/dist/models/OrganizationEntitlements.d.ts +7 -0
  463. package/node_modules/@orchestraworks/client/dist/models/OrganizationEntitlements.js +5 -0
  464. package/node_modules/@orchestraworks/client/dist/models/OrganizationInvitation.d.ts +4 -4
  465. package/node_modules/@orchestraworks/client/dist/models/OrganizationInvitation.js +4 -4
  466. package/node_modules/@orchestraworks/client/dist/models/OrganizationMembership.d.ts +5 -5
  467. package/node_modules/@orchestraworks/client/dist/models/OrganizationMembership.js +4 -4
  468. package/node_modules/@orchestraworks/client/dist/models/PageImage.d.ts +51 -0
  469. package/node_modules/@orchestraworks/client/dist/models/{PageProject.js → PageImage.js} +16 -16
  470. package/node_modules/@orchestraworks/client/dist/models/PageTeam.d.ts +51 -0
  471. package/node_modules/@orchestraworks/client/dist/models/{PageGroupSummary.js → PageTeam.js} +16 -16
  472. package/node_modules/@orchestraworks/client/dist/models/PageTeamMembership.d.ts +51 -0
  473. package/node_modules/@orchestraworks/client/dist/models/PageTeamMembership.js +63 -0
  474. package/node_modules/@orchestraworks/client/dist/models/Pipeline.d.ts +2 -2
  475. package/node_modules/@orchestraworks/client/dist/models/Pipeline.js +2 -2
  476. package/node_modules/@orchestraworks/client/dist/models/PolicyAssignment.d.ts +8 -2
  477. package/node_modules/@orchestraworks/client/dist/models/PolicyAssignment.js +4 -2
  478. package/node_modules/@orchestraworks/client/dist/models/ProviderConnectionIntent.d.ts +2 -2
  479. package/node_modules/@orchestraworks/client/dist/models/ProviderConnectionIntent.js +2 -2
  480. package/node_modules/@orchestraworks/client/dist/models/ReferenceSubject.d.ts +1 -1
  481. package/node_modules/@orchestraworks/client/dist/models/ReferenceSubject.js +1 -1
  482. package/node_modules/@orchestraworks/client/dist/models/Role.d.ts +6 -0
  483. package/node_modules/@orchestraworks/client/dist/models/Role.js +4 -0
  484. package/node_modules/@orchestraworks/client/dist/models/Secret.d.ts +16 -3
  485. package/node_modules/@orchestraworks/client/dist/models/Secret.js +8 -2
  486. package/node_modules/@orchestraworks/client/dist/models/ServiceAccount.d.ts +7 -1
  487. package/node_modules/@orchestraworks/client/dist/models/ServiceAccount.js +1 -0
  488. package/node_modules/@orchestraworks/client/dist/models/Session.d.ts +3 -2
  489. package/node_modules/@orchestraworks/client/dist/models/Session.js +3 -2
  490. package/node_modules/@orchestraworks/client/dist/models/SessionSummary.d.ts +3 -2
  491. package/node_modules/@orchestraworks/client/dist/models/SessionSummary.js +3 -2
  492. package/node_modules/@orchestraworks/client/dist/models/Skill.d.ts +2 -2
  493. package/node_modules/@orchestraworks/client/dist/models/Skill.js +2 -2
  494. package/node_modules/@orchestraworks/client/dist/models/SnapshotAnchor.d.ts +1 -1
  495. package/node_modules/@orchestraworks/client/dist/models/Team.d.ts +104 -0
  496. package/node_modules/@orchestraworks/client/dist/models/{GroupSummary.js → Team.js} +31 -21
  497. package/node_modules/@orchestraworks/client/dist/models/TeamMembership.d.ts +83 -0
  498. package/node_modules/@orchestraworks/client/dist/models/TeamMembership.js +85 -0
  499. package/node_modules/@orchestraworks/client/dist/models/Trigger.d.ts +2 -2
  500. package/node_modules/@orchestraworks/client/dist/models/Trigger.js +2 -2
  501. package/node_modules/@orchestraworks/client/dist/models/TriggerTarget.d.ts +1 -1
  502. package/node_modules/@orchestraworks/client/dist/models/UpdateArtifactRequest.d.ts +1 -1
  503. package/node_modules/@orchestraworks/client/dist/models/UpdateConnectionRequest.d.ts +6 -0
  504. package/node_modules/@orchestraworks/client/dist/models/UpdateConnectionRequest.js +2 -0
  505. package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationInvitationRequest.d.ts +4 -4
  506. package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationInvitationRequest.js +3 -3
  507. package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationMembershipRequest.d.ts +1 -8
  508. package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationMembershipRequest.js +0 -3
  509. package/node_modules/@orchestraworks/client/dist/models/UpdateSecretRequest.d.ts +6 -0
  510. package/node_modules/@orchestraworks/client/dist/models/UpdateSecretRequest.js +2 -0
  511. package/node_modules/@orchestraworks/client/dist/models/UpdateTeamMembershipRequest.d.ts +47 -0
  512. package/node_modules/@orchestraworks/client/dist/models/UpdateTeamMembershipRequest.js +59 -0
  513. package/node_modules/@orchestraworks/client/dist/models/UpdateTeamRequest.d.ts +68 -0
  514. package/node_modules/@orchestraworks/client/dist/models/UpdateTeamRequest.js +66 -0
  515. package/node_modules/@orchestraworks/client/dist/models/UserGrant.d.ts +2 -2
  516. package/node_modules/@orchestraworks/client/dist/models/UserGrant.js +2 -2
  517. package/node_modules/@orchestraworks/client/dist/models/Volume.d.ts +10 -3
  518. package/node_modules/@orchestraworks/client/dist/models/Volume.js +4 -2
  519. package/node_modules/@orchestraworks/client/dist/models/WorkItemActivity.d.ts +2 -2
  520. package/node_modules/@orchestraworks/client/dist/models/WorkItemAssignment.d.ts +7 -7
  521. package/node_modules/@orchestraworks/client/dist/models/WorkItemAssignment.js +5 -5
  522. package/node_modules/@orchestraworks/client/dist/models/WorkItemDraftAssignment.d.ts +2 -2
  523. package/node_modules/@orchestraworks/client/dist/models/WorkItemDraftAssignment.js +2 -2
  524. package/node_modules/@orchestraworks/client/dist/models/Workflow.d.ts +2 -2
  525. package/node_modules/@orchestraworks/client/dist/models/Workflow.js +2 -2
  526. package/node_modules/@orchestraworks/client/dist/models/index.d.ts +13 -17
  527. package/node_modules/@orchestraworks/client/dist/models/index.js +13 -17
  528. package/node_modules/@orchestraworks/client/package.json +1 -1
  529. package/package.json +4 -4
  530. package/skills/orchestra/SKILL.md +74 -64
  531. package/skills/orchestra-fdk/references/authoring.md +75 -39
  532. package/skills/orchestra-fdk/references/environment.md +214 -33
  533. package/skills/orchestra-fdk/references/troubleshooting.md +8 -7
  534. package/templates/bug-fix/main.ts +6 -1
  535. package/templates/engineering-team/README.md +10 -7
  536. package/templates/engineering-team/agents/engineer-agent.md +38 -16
  537. package/templates/engineering-team/lib/environment.ts +15 -3
  538. package/templates/engineering-team/main.ts +1 -1
  539. package/templates/todo-factory/main.ts +6 -1
  540. package/dist/constructs/project.d.ts +0 -33
  541. package/dist/constructs/project.js +0 -82
  542. package/node_modules/@orchestraworks/client/dist/apis/GroupsApi.d.ts +0 -95
  543. package/node_modules/@orchestraworks/client/dist/apis/ProjectsApi.d.ts +0 -93
  544. package/node_modules/@orchestraworks/client/dist/esm/apis/GroupsApi.d.ts +0 -95
  545. package/node_modules/@orchestraworks/client/dist/esm/apis/ProjectsApi.d.ts +0 -93
  546. package/node_modules/@orchestraworks/client/dist/esm/models/CreateGroupRequest.d.ts +0 -82
  547. package/node_modules/@orchestraworks/client/dist/esm/models/CreateGroupRequest.js +0 -74
  548. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationRequest.d.ts +0 -53
  549. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationRequest.js +0 -50
  550. package/node_modules/@orchestraworks/client/dist/esm/models/CreateProjectRequest.d.ts +0 -52
  551. package/node_modules/@orchestraworks/client/dist/esm/models/CreateProjectRequest.js +0 -49
  552. package/node_modules/@orchestraworks/client/dist/esm/models/CreateUserRequest.d.ts +0 -46
  553. package/node_modules/@orchestraworks/client/dist/esm/models/CreateUserRequest.js +0 -47
  554. package/node_modules/@orchestraworks/client/dist/esm/models/CredentialBinding.d.ts +0 -57
  555. package/node_modules/@orchestraworks/client/dist/esm/models/CredentialBinding.js +0 -50
  556. package/node_modules/@orchestraworks/client/dist/esm/models/Group.d.ts +0 -106
  557. package/node_modules/@orchestraworks/client/dist/esm/models/Group.js +0 -92
  558. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMember.d.ts +0 -40
  559. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMember.js +0 -45
  560. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberAgent.d.ts +0 -44
  561. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberReference.d.ts +0 -38
  562. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberReference.js +0 -43
  563. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberUser.d.ts +0 -38
  564. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberUser.js +0 -45
  565. package/node_modules/@orchestraworks/client/dist/esm/models/GroupSummary.d.ts +0 -86
  566. package/node_modules/@orchestraworks/client/dist/esm/models/PageGroupSummary.d.ts +0 -51
  567. package/node_modules/@orchestraworks/client/dist/esm/models/PageProject.d.ts +0 -51
  568. package/node_modules/@orchestraworks/client/dist/esm/models/Project.d.ts +0 -76
  569. package/node_modules/@orchestraworks/client/dist/esm/models/Project.js +0 -69
  570. package/node_modules/@orchestraworks/client/dist/esm/models/RoleAssignment.d.ts +0 -38
  571. package/node_modules/@orchestraworks/client/dist/esm/models/RoleAssignment.js +0 -45
  572. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateGroupRequest.d.ts +0 -70
  573. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateGroupRequest.js +0 -60
  574. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateProjectRequest.d.ts +0 -46
  575. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateProjectRequest.js +0 -45
  576. package/node_modules/@orchestraworks/client/dist/models/CreateGroupRequest.d.ts +0 -82
  577. package/node_modules/@orchestraworks/client/dist/models/CreateGroupRequest.js +0 -82
  578. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationRequest.d.ts +0 -53
  579. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationRequest.js +0 -57
  580. package/node_modules/@orchestraworks/client/dist/models/CreateProjectRequest.d.ts +0 -52
  581. package/node_modules/@orchestraworks/client/dist/models/CreateProjectRequest.js +0 -56
  582. package/node_modules/@orchestraworks/client/dist/models/CreateUserRequest.d.ts +0 -46
  583. package/node_modules/@orchestraworks/client/dist/models/CreateUserRequest.js +0 -54
  584. package/node_modules/@orchestraworks/client/dist/models/CredentialBinding.d.ts +0 -57
  585. package/node_modules/@orchestraworks/client/dist/models/CredentialBinding.js +0 -57
  586. package/node_modules/@orchestraworks/client/dist/models/Group.d.ts +0 -106
  587. package/node_modules/@orchestraworks/client/dist/models/Group.js +0 -100
  588. package/node_modules/@orchestraworks/client/dist/models/GroupMember.d.ts +0 -40
  589. package/node_modules/@orchestraworks/client/dist/models/GroupMember.js +0 -52
  590. package/node_modules/@orchestraworks/client/dist/models/GroupMemberAgent.d.ts +0 -44
  591. package/node_modules/@orchestraworks/client/dist/models/GroupMemberAgent.js +0 -58
  592. package/node_modules/@orchestraworks/client/dist/models/GroupMemberReference.d.ts +0 -38
  593. package/node_modules/@orchestraworks/client/dist/models/GroupMemberReference.js +0 -50
  594. package/node_modules/@orchestraworks/client/dist/models/GroupMemberUser.d.ts +0 -38
  595. package/node_modules/@orchestraworks/client/dist/models/GroupMemberUser.js +0 -52
  596. package/node_modules/@orchestraworks/client/dist/models/GroupSummary.d.ts +0 -86
  597. package/node_modules/@orchestraworks/client/dist/models/PageGroupSummary.d.ts +0 -51
  598. package/node_modules/@orchestraworks/client/dist/models/PageProject.d.ts +0 -51
  599. package/node_modules/@orchestraworks/client/dist/models/Project.d.ts +0 -76
  600. package/node_modules/@orchestraworks/client/dist/models/Project.js +0 -76
  601. package/node_modules/@orchestraworks/client/dist/models/RoleAssignment.d.ts +0 -38
  602. package/node_modules/@orchestraworks/client/dist/models/RoleAssignment.js +0 -52
  603. package/node_modules/@orchestraworks/client/dist/models/UpdateGroupRequest.d.ts +0 -70
  604. package/node_modules/@orchestraworks/client/dist/models/UpdateGroupRequest.js +0 -68
  605. package/node_modules/@orchestraworks/client/dist/models/UpdateProjectRequest.d.ts +0 -46
  606. package/node_modules/@orchestraworks/client/dist/models/UpdateProjectRequest.js +0 -52
@@ -1,5 +1,5 @@
1
1
  import type { PlanKind, PlanResource, ValueFrom } from "../core/plan.js";
2
- import { ApplyError, type ApplyOutcome, type DesiredProject, type ProjectIdentityRefusal } from "./apply-core.js";
2
+ import { ApplyError, type ApplyOutcome, type DesiredTeam, type TeamIdentityRefusal } from "./apply-core.js";
3
3
  /**
4
4
  * Supplied explicitly by whichever caller is classifying, never read ambiently: both callers build one from
5
5
  * their OWN reads, taken at their own time, which keeps the freshness discipline while the RULE stays
@@ -7,7 +7,7 @@ import { ApplyError, type ApplyOutcome, type DesiredProject, type ProjectIdentit
7
7
  * the one function that owns each kind.
8
8
  *
9
9
  * EVERY field is optional, because evidence gating is the module's rule and not a per-field exception: a
10
- * caller holding no environment or no project omits it rather than manufacturing a sentinel.
10
+ * caller holding no environment or no team omits it rather than manufacturing a sentinel.
11
11
  */
12
12
  export interface RefusalContext {
13
13
  /** Absent ⇒ nothing exists yet. */
@@ -20,9 +20,9 @@ export interface RefusalContext {
20
20
  resolvedDesired?: unknown;
21
21
  /** Injected, never read from `process.env` inside a classifier. Absent ⇒ the source arms decide nothing. */
22
22
  env?: Record<string, string | undefined>;
23
- /** Absent ⇒ this kind has no project axis, the same inert answer `{ state: "none" }` gives. */
24
- project?: DesiredProject;
25
- gatewayPair?: ProjectIdentityRefusal["pairContext"];
23
+ /** The row's declared team. Absent ⇒ this kind has no team, or the caller cannot judge it. */
24
+ team?: DesiredTeam;
25
+ gatewayPair?: TeamIdentityRefusal["pairContext"];
26
26
  /** Secret ids owned by connections, when the caller has scanned for them. */
27
27
  reservedProviderSecretIds?: ReadonlySet<string>;
28
28
  }
@@ -31,11 +31,7 @@ export interface ResolvedSecretRef {
31
31
  readonly id: string;
32
32
  readonly label: string;
33
33
  }
34
- /**
35
- * ONE GROUP of an environment's secret references, already resolved to canonical ids. An environment
36
- * contributes TWO groups and classifies each on its own, because the pairwise-distinct rule is about the
37
- * egress group alone.
38
- */
34
+ /** An environment's secret references, already resolved to canonical ids: today its pull credential. */
39
35
  export interface ResolvedEnvironmentDesired {
40
36
  readonly secretRefs: readonly ResolvedSecretRef[];
41
37
  }
@@ -53,21 +49,21 @@ export interface ResolvedConnectionDesired {
53
49
  */
54
50
  export interface LiveGatewayKeyPair {
55
51
  readonly key?: {
56
- projectId?: string | null;
52
+ teamId?: string | null;
57
53
  } | undefined;
58
54
  readonly secret?: {
59
- projectId?: string | null;
55
+ teamId?: string | null;
60
56
  } | undefined;
61
57
  readonly secretMarked?: boolean;
62
58
  }
63
59
  /**
64
- * A discriminated union, so each arm carries its own typed payload. The project arm carries the
65
- * machine-readable {@link ProjectIdentityRefusal} rather than a pre-rendered string, which keeps the shared
60
+ * A discriminated union, so each arm carries its own typed payload. The team arm carries the
61
+ * machine-readable {@link TeamIdentityRefusal} rather than a pre-rendered string, which keeps the shared
66
62
  * formatter the only place that conflict is worded. `code` is what `DiffEntry.blocked` carries.
67
63
  */
68
64
  export type RefusalVerdict = {
69
- code: "project-identity";
70
- refusal: ProjectIdentityRefusal;
65
+ code: "team-identity";
66
+ refusal: TeamIdentityRefusal;
71
67
  } | {
72
68
  code: "connector-identity";
73
69
  message: string;
@@ -98,9 +94,6 @@ export type RefusalVerdict = {
98
94
  } | {
99
95
  code: "reserved-provider-secret";
100
96
  message: string;
101
- } | {
102
- code: "duplicate-binding";
103
- message: string;
104
97
  } | {
105
98
  code: "byok-ownership";
106
99
  message: string;
@@ -110,7 +103,7 @@ export type RefusalVerdict = {
110
103
  };
111
104
  /**
112
105
  * The subtype lets the CLI present every deterministic refusal as `cannot apply:` without changing the
113
- * classifier's raw message, which diff rows also render. Project identity keeps its own richer subtype.
106
+ * classifier's raw message, which diff rows also render. Team identity keeps its own richer subtype.
114
107
  */
115
108
  export declare class AggregateRefusalError extends ApplyError {
116
109
  constructor(message: string, outcomes: ApplyOutcome[], options?: {
@@ -150,7 +143,7 @@ export declare function byokUnsetSourceMessage(slug: string, modelProvider: stri
150
143
  * SECRET's row, where an author looking at a pending value write would see them — reaches the same rule the
151
144
  * apply lane reaches through {@link refusalOf}.
152
145
  */
153
- export declare function gatewayKeyPairRefusal(keySlug: string, secretSlug: string, pair: LiveGatewayKeyPair, project: DesiredProject | undefined, pairContext: ProjectIdentityRefusal["pairContext"] | undefined): RefusalVerdict | null;
146
+ export declare function gatewayKeyPairRefusal(keySlug: string, secretSlug: string, pair: LiveGatewayKeyPair, team: DesiredTeam | undefined, pairContext: TeamIdentityRefusal["pairContext"] | undefined): RefusalVerdict | null;
154
147
  /**
155
148
  * Lives here rather than in the gateway-key lane because the classifier's message names it and this module
156
149
  * must stay a leaf; the lane re-exports it.
@@ -158,13 +151,3 @@ export declare function gatewayKeyPairRefusal(keySlug: string, secretSlug: strin
158
151
  export declare const PENDING_GATEWAY_KEY_TOKEN_LABEL_KEY = "sfdk.pendingGatewayKeyToken";
159
152
  /** The named refusal for a mint that succeeded but whose paired-Secret token write did not. */
160
153
  export declare function pendingGatewayKeyTokenRotationMessage(slug: string, secretSlug: string): string;
161
- /**
162
- * TWO shapes, because a binding is authored two ways and each is named by the spelling its AUTHOR used: a
163
- * managed token points at a construct in this factory, so the label names that construct's PATH — the thing
164
- * the author would go and edit — while an imported literal names no construct and is named by the header it
165
- * fills, or by its shape when a recipe binding omits one. Neither shape carries a value.
166
- *
167
- * Taken by both callers: two mirrored derivations of one label is precisely how preview came to print a
168
- * header for a binding apply refused by construct path.
169
- */
170
- export declare function egressCredentialBindingLabel(environmentPath: string, ruleName: unknown, ref: string, header: unknown): string;
@@ -12,14 +12,13 @@
12
12
  // nothing rather than guessing. No verdict can carry a credential: the classifiers read source RECIPES.
13
13
  import { connectorImmutableFields } from "../constructs/connector.js";
14
14
  import { isGatewayKeyRecipe } from "../core/gateway-key-recipe.js";
15
- import { isRefToken, parseRefToken } from "../core/tokens.js";
16
- import { ApplyError, classifyProjectIdentity, projectIdentityConflict, subsetDeepEqual, } from "./apply-core.js";
15
+ import { ApplyError, classifyTeamIdentity, subsetDeepEqual, teamIdentityConflict, } from "./apply-core.js";
17
16
  import { isPartiallySuppliedRecipe, missingRootEnvNames, pendingCredentialWrite, } from "./secrets-apply.js";
18
17
  import { managedChatConnectionRefusalMessage } from "./connection-readiness.js";
19
18
  import { requiredConfigurationRefusalMessage } from "./connector-configuration.js";
20
19
  /**
21
20
  * The subtype lets the CLI present every deterministic refusal as `cannot apply:` without changing the
22
- * classifier's raw message, which diff rows also render. Project identity keeps its own richer subtype.
21
+ * classifier's raw message, which diff rows also render. Team identity keeps its own richer subtype.
23
22
  */
24
23
  export class AggregateRefusalError extends ApplyError {
25
24
  constructor(message, outcomes, options) {
@@ -34,8 +33,8 @@ export class AggregateRefusalError extends ApplyError {
34
33
  */
35
34
  export function refusalError(verdict, outcomes, cause) {
36
35
  const options = cause !== undefined ? { cause } : undefined;
37
- if (verdict.code === "project-identity") {
38
- return projectIdentityConflict(verdict.refusal, outcomes, options);
36
+ if (verdict.code === "team-identity") {
37
+ return teamIdentityConflict(verdict.refusal, outcomes, options);
39
38
  }
40
39
  return new AggregateRefusalError(verdict.message, [...outcomes], options);
41
40
  }
@@ -60,8 +59,10 @@ export function refuseIf(kind, resource, ctx, outcomes) {
60
59
  */
61
60
  export function refusalOf(kind, resource, ctx) {
62
61
  switch (kind) {
63
- case "project":
64
- // A project is never itself placed into a project, and it has no other pre-write refusal.
62
+ case "team":
63
+ case "role":
64
+ case "team-membership":
65
+ // None of these is placed in a team, and none has another pre-write refusal.
65
66
  return null;
66
67
  case "gateway-key":
67
68
  return gatewayKeyRefusal(resource, ctx);
@@ -79,44 +80,44 @@ export function refusalOf(kind, resource, ctx) {
79
80
  case "environment":
80
81
  return environmentRefusal(resource, ctx);
81
82
  case "skill":
82
- return projectRefusal(resource, ctx);
83
+ return teamRefusal(resource, ctx);
83
84
  case "agent":
84
85
  return agentRefusal(resource, ctx);
85
86
  case "pipeline":
86
- return projectRefusal(resource, ctx);
87
+ return teamRefusal(resource, ctx);
87
88
  case "workflow":
88
- // A workflow takes its pipeline's project, which that pipeline's own verdict already judges.
89
+ // A workflow takes its pipeline's team, which that pipeline's own verdict already judges.
89
90
  return null;
90
91
  }
91
92
  }
92
93
  /**
93
- * The project-identity arm, shared by every stamped kind. Absent live row ⇒ nothing to conflict with; absent
94
- * project descriptor ⇒ this caller declares no placement to compare, which is the same inert answer.
94
+ * The team-identity arm, shared by every team-able kind. Absent live row ⇒ nothing to conflict with; absent
95
+ * team ⇒ the caller could not judge the placement, which decides nothing.
95
96
  */
96
- function projectRefusal(resource, ctx) {
97
- return projectRefusalFor(resource.kind, resource.slug, ctx.live, ctx.project, ctx.gatewayPair);
97
+ function teamRefusal(resource, ctx) {
98
+ return teamRefusalFor(resource.kind, resource.slug, ctx.live, ctx.team, ctx.gatewayPair);
98
99
  }
99
100
  /** The same arm addressed by kind+slug, for the gateway-key pair (whose two members have two slugs). */
100
- function projectRefusalFor(resourceKind, slug, live, project, pairContext) {
101
- if (project === undefined) {
101
+ function teamRefusalFor(resourceKind, slug, live, team, pairContext) {
102
+ if (team === undefined) {
102
103
  return null;
103
104
  }
104
- const refusal = classifyProjectIdentity({
105
+ const refusal = classifyTeamIdentity({
105
106
  resourceKind,
106
107
  slug,
107
108
  live: live,
108
- desired: project,
109
+ desired: team,
109
110
  ...(pairContext !== undefined ? { pairContext } : {}),
110
111
  });
111
- return refusal !== undefined ? { code: "project-identity", refusal } : null;
112
+ return refusal !== undefined ? { code: "team-identity", refusal } : null;
112
113
  }
113
114
  /**
114
- * Order mirrors the apply decision phase exactly: a readable cross-project row outranks every other verdict,
115
+ * Order mirrors the apply decision phase exactly: a readable row in another team outranks every other verdict,
115
116
  * then the two source refusals. A gateway-key-backed Secret has no environment source at all and its
116
117
  * unrecoverable states belong to the PAIR, so this arm stops after the identity check for one.
117
118
  */
118
119
  function secretRefusal(resource, ctx) {
119
- const identity = projectRefusal(resource, ctx);
120
+ const identity = teamRefusal(resource, ctx);
120
121
  if (identity !== null)
121
122
  return identity;
122
123
  const valueFrom = resource.valueFrom;
@@ -227,18 +228,18 @@ function byokPartiallySuppliedMessage(slug, modelProvider, credential, env) {
227
228
  function gatewayKeyRefusal(resource, ctx) {
228
229
  const pair = ctx.live ?? {};
229
230
  const secretSlug = ctx.gatewayPair?.secretSlug ?? "";
230
- return gatewayKeyPairRefusal(resource.slug, secretSlug, pair, ctx.project, ctx.gatewayPair);
231
+ return gatewayKeyPairRefusal(resource.slug, secretSlug, pair, ctx.team, ctx.gatewayPair);
231
232
  }
232
233
  /**
233
234
  * Addressed by the two slugs directly, so the diff path — which renders these pair states on the paired
234
235
  * SECRET's row, where an author looking at a pending value write would see them — reaches the same rule the
235
236
  * apply lane reaches through {@link refusalOf}.
236
237
  */
237
- export function gatewayKeyPairRefusal(keySlug, secretSlug, pair, project, pairContext) {
238
- const keyIdentity = projectRefusalFor("gateway-key", keySlug, pair.key, project, pairContext);
238
+ export function gatewayKeyPairRefusal(keySlug, secretSlug, pair, team, pairContext) {
239
+ const keyIdentity = teamRefusalFor("gateway-key", keySlug, pair.key, team, pairContext);
239
240
  if (keyIdentity !== null)
240
241
  return keyIdentity;
241
- const secretIdentity = projectRefusalFor("secret", secretSlug, pair.secret, project, pairContext);
242
+ const secretIdentity = teamRefusalFor("secret", secretSlug, pair.secret, team, pairContext);
242
243
  if (secretIdentity !== null)
243
244
  return secretIdentity;
244
245
  if (pair.key !== undefined && pair.secret === undefined) {
@@ -281,7 +282,7 @@ export function pendingGatewayKeyTokenRotationMessage(slug, secretSlug) {
281
282
  * id. Identity first, then the immutable-field refusal, then the required-configuration omission.
282
283
  */
283
284
  function connectorRefusal(resource, ctx) {
284
- const identity = projectRefusal(resource, ctx);
285
+ const identity = teamRefusal(resource, ctx);
285
286
  if (identity !== null)
286
287
  return identity;
287
288
  const desired = ctx.resolvedDesired;
@@ -316,7 +317,7 @@ function connectorIdentityMessage(resource, changed) {
316
317
  * then the create-only OAuth app selection, then — for a ceremony-backed declaration only — the provider.
317
318
  */
318
319
  function connectionRefusal(resource, ctx) {
319
- const identity = projectRefusal(resource, ctx);
320
+ const identity = teamRefusal(resource, ctx);
320
321
  if (identity !== null)
321
322
  return identity;
322
323
  const resolved = ctx.resolvedDesired;
@@ -359,16 +360,11 @@ function providerNotAdoptableMessage(resource, declared, live) {
359
360
  `connection if it is no longer wanted.`);
360
361
  }
361
362
  /**
362
- * Two rules run here, in the order apply evaluates them: pairwise-distinct, which reads only the group and so
363
- * decides even for a caller holding no reserved set, then connection-owned, which needs the scan.
364
- *
365
- * The GROUP is the unit on purpose. Both places an environment can bind a secret reach this arm, but as two
366
- * SEPARATE groups, exactly as apply refuses them: pairwise-distinct is about the egress bindings alone, and
367
- * merging the pull credential in would invent a refusal apply never raises, since binding one secret both
368
- * ways is legal. The per-ref rule is unaffected by the grouping either way.
363
+ * The pull credential reaches this arm as its own group; a connection-owned secret is refused, which needs
364
+ * the reserved-secret scan, so a caller holding none decides nothing here.
369
365
  */
370
366
  function environmentRefusal(resource, ctx) {
371
- const identity = projectRefusal(resource, ctx);
367
+ const identity = teamRefusal(resource, ctx);
372
368
  if (identity !== null)
373
369
  return identity;
374
370
  const runtime = environmentRuntimeRefusal(resource, ctx);
@@ -377,9 +373,6 @@ function environmentRefusal(resource, ctx) {
377
373
  const resolved = ctx.resolvedDesired;
378
374
  if (resolved === undefined)
379
375
  return null;
380
- const duplicate = duplicateBindingRefusal(resolved.secretRefs);
381
- if (duplicate !== null)
382
- return duplicate;
383
376
  const reserved = ctx.reservedProviderSecretIds;
384
377
  if (reserved === undefined)
385
378
  return null;
@@ -390,48 +383,6 @@ function environmentRefusal(resource, ctx) {
390
383
  }
391
384
  return null;
392
385
  }
393
- /**
394
- * Lives here rather than inline in the egress loop, because a rule enforced only on the apply side is
395
- * invisible to the preview: diff would append both bindings and the pre-flight would solicit an approval —
396
- * and possibly a docker build — for a change reconcile refuses without writing.
397
- */
398
- function duplicateBindingRefusal(refs) {
399
- const seen = new Map(); // resolved secret id → the label of the first ref that bound it
400
- for (const ref of refs) {
401
- const prior = seen.get(ref.id);
402
- if (prior !== undefined) {
403
- return { code: "duplicate-binding", message: duplicateBindingMessage(ref.label, prior) };
404
- }
405
- seen.set(ref.id, ref.label);
406
- }
407
- return null;
408
- }
409
- /** Worded once for both callers, and value-free: two binding labels and nothing else. */
410
- function duplicateBindingMessage(label, prior) {
411
- return (`${label} and ${prior} bind the same secret; an environment's egress credential bindings must ` +
412
- `reference pairwise-distinct secrets (§6.3).`);
413
- }
414
- /**
415
- * TWO shapes, because a binding is authored two ways and each is named by the spelling its AUTHOR used: a
416
- * managed token points at a construct in this factory, so the label names that construct's PATH — the thing
417
- * the author would go and edit — while an imported literal names no construct and is named by the header it
418
- * fills, or by its shape when a recipe binding omits one. Neither shape carries a value.
419
- *
420
- * Taken by both callers: two mirrored derivations of one label is precisely how preview came to print a
421
- * header for a binding apply refused by construct path.
422
- */
423
- export function egressCredentialBindingLabel(environmentPath, ruleName, ref, header) {
424
- const rule = `environment '${environmentPath}' egress rule '${String(ruleName)}'`;
425
- if (isRefToken(ref))
426
- return `${rule} → secret '${parseRefToken(ref).path.join("/")}'`;
427
- const which = typeof header === "string" && header !== "" ? `credential '${header}'` : "recipe credential binding";
428
- return `${rule} ${which}`;
429
- }
430
- /**
431
- * Worded once for BOTH places an environment can bind a secret, so the noun is the general one: the label
432
- * already says which of the two this is, and naming only the egress path told an author with a
433
- * connection-owned pull credential that their egress rules were the problem.
434
- */
435
386
  function reservedProviderSecretMessage(label) {
436
387
  return (`${label}: the resolved secret is owned by a connection and cannot be used as an environment credential ` +
437
388
  `binding (§6.3). The value is not echoed (§6.3).`);
@@ -442,7 +393,7 @@ function reservedProviderSecretMessage(label) {
442
393
  * apply reports the same drift again. A live row stating no harness at all is absent evidence, not a conflict.
443
394
  */
444
395
  function agentRefusal(resource, ctx) {
445
- const identity = projectRefusal(resource, ctx);
396
+ const identity = teamRefusal(resource, ctx);
446
397
  if (identity !== null)
447
398
  return identity;
448
399
  const liveHarness = ctx.live?.harness;
@@ -0,0 +1,19 @@
1
+ import type { PlanResource } from "../core/plan.js";
2
+ import { type ApplyOutcome, type TeamResolver } from "./apply-core.js";
3
+ import { type PlatformApis } from "./client.js";
4
+ /**
5
+ * A team's parent is fixed at create, so a live team under another parent is refused rather than moved. Name,
6
+ * privacy, assignment method and the declared labels are reconciled; the console owns the description.
7
+ */
8
+ export declare function applyTeam(resource: PlanResource, apis: PlatformApis, outcomes: ApplyOutcome[], applied: Map<string, string>, teams: TeamResolver): Promise<void>;
9
+ /**
10
+ * The platform derives a custom role's slug from its name, so the name is the key a live custom role is found
11
+ * by. A role's policies are a set; only the fields that drifted are sent.
12
+ */
13
+ export declare function applyRole(resource: PlanResource, apis: PlatformApis, outcomes: ApplyOutcome[], applied: Map<string, string>): Promise<void>;
14
+ /**
15
+ * A principal's declared rows are its full set: apply changes a row's role in place, adds a missing row and
16
+ * removes a row the program does not declare. It writes only `/team-memberships`, never the membership or
17
+ * its policy assignments, so the use policies the platform minted at agent create stay.
18
+ */
19
+ export declare function applyTeamMemberships(resource: PlanResource, apis: PlatformApis, outcomes: ApplyOutcome[], applied: Map<string, string>, teams: TeamResolver): Promise<void>;
@@ -0,0 +1,276 @@
1
+ // Teams, custom roles and the team-membership rows a program declares. A key that may not write one of these
2
+ // gets the platform's 403, which apply records as a `refused` row and moves past, so a program that declares
3
+ // a team runs under a weaker key for every row the key may write.
4
+ import { createLabels, labelsPatch } from "../core/labels.js";
5
+ import { isRefToken, refToken } from "../core/tokens.js";
6
+ import { ApplyError, failing, getBySlugOrUndefined, mapError, } from "./apply-core.js";
7
+ import { httpStatusOf } from "./client.js";
8
+ import { paginate } from "./pages.js";
9
+ import { PreflightError } from "./preflight-errors.js";
10
+ /** The organization's catalog rows; a custom role never lives there. */
11
+ const GLOBAL_ORGANIZATION_ID = "org_global";
12
+ const DEFAULT_ASSIGNMENT = "AGENT_FIRST";
13
+ /** A 403 is the platform saying this key may not write the row: recorded as refused, never fatal. */
14
+ async function refusedOrThrow(error, ctx, outcomes, resource, id) {
15
+ if (httpStatusOf(error) !== 403) {
16
+ if (error instanceof ApplyError)
17
+ throw error;
18
+ throw new ApplyError(await mapError(error, ctx), [...outcomes], { cause: error });
19
+ }
20
+ outcomes.push({
21
+ path: resource.path,
22
+ kind: resource.kind,
23
+ slug: resource.slug,
24
+ id,
25
+ action: "refused",
26
+ reason: await mapError(error, ctx),
27
+ });
28
+ }
29
+ /**
30
+ * A team's parent is fixed at create, so a live team under another parent is refused rather than moved. Name,
31
+ * privacy, assignment method and the declared labels are reconciled; the console owns the description.
32
+ */
33
+ export async function applyTeam(resource, apis, outcomes, applied, teams) {
34
+ const payload = resource.payload;
35
+ const token = refToken("team", resource.path.split("/"));
36
+ const surface = { kind: "team", slug: resource.slug };
37
+ let live;
38
+ try {
39
+ live = await getBySlugOrUndefined(() => apis.teams.getTeam({ id: resource.slug }));
40
+ }
41
+ catch (error) {
42
+ await refusedOrThrow(error, { ...surface, op: "get" }, outcomes, resource, "");
43
+ teams.markRefused(token, resource.slug);
44
+ return;
45
+ }
46
+ const parentTeamId = payload.parentTeamId === undefined ? undefined : await parentIdOf(payload.parentTeamId, apis, applied, resource, outcomes);
47
+ if (live !== undefined && (live.parentTeamId ?? undefined) !== parentTeamId) {
48
+ throw new ApplyError(`team '${resource.slug}': the live team's parent is ${live.parentTeamId === undefined ? "none" : `'${live.parentTeamId}'`}, ` +
49
+ `but this program declares ${parentTeamId === undefined ? "none" : `'${parentTeamId}'`}. A team's parent is fixed ` +
50
+ `when it is created, so apply never moves it. Remove the team and let apply recreate it, or declare the live parent.`, [...outcomes]);
51
+ }
52
+ let id;
53
+ let action;
54
+ try {
55
+ if (live === undefined) {
56
+ const labels = createLabels(payload.labels);
57
+ const body = {
58
+ name: payload.name,
59
+ slug: resource.slug,
60
+ ...(Object.keys(labels).length > 0 ? { labels } : {}),
61
+ ...(parentTeamId !== undefined ? { parentTeamId } : {}),
62
+ _private: payload.private,
63
+ assignment: payload.assignment,
64
+ };
65
+ id = (await apis.teams.createTeam({ createTeamRequest: body })).id;
66
+ action = "created";
67
+ }
68
+ else {
69
+ const labels = labelsPatch(payload.labels, live.labels);
70
+ const unchanged = live.name === payload.name &&
71
+ live._private === payload.private &&
72
+ (live.assignment ?? DEFAULT_ASSIGNMENT) === payload.assignment &&
73
+ labels === undefined;
74
+ if (unchanged) {
75
+ id = live.id;
76
+ action = "unchanged";
77
+ }
78
+ else {
79
+ const patch = {
80
+ name: payload.name,
81
+ _private: payload.private,
82
+ assignment: payload.assignment,
83
+ ...(labels !== undefined ? { labels } : {}),
84
+ };
85
+ id = (await apis.teams.updateTeam({ id: live.id, updateTeamRequest: patch })).id;
86
+ action = "updated";
87
+ }
88
+ }
89
+ }
90
+ catch (error) {
91
+ await refusedOrThrow(error, { ...surface, op: live === undefined ? "create" : "update" }, outcomes, resource, live?.id ?? "");
92
+ teams.markRefused(token, resource.slug);
93
+ return;
94
+ }
95
+ outcomes.push({ path: resource.path, kind: "team", slug: resource.slug, id, action });
96
+ applied.set(token, id);
97
+ }
98
+ async function parentIdOf(ref, apis, applied, resource, outcomes) {
99
+ if (isRefToken(ref)) {
100
+ const id = applied.get(ref);
101
+ if (id === undefined) {
102
+ throw new ApplyError(`team '${resource.slug}': its parent team was not written in this run, so the sub-team cannot be created.`, [...outcomes]);
103
+ }
104
+ return id;
105
+ }
106
+ const live = await failing(() => getBySlugOrUndefined(() => apis.teams.getTeam({ id: ref })), { kind: "team", slug: resource.slug, op: "get" }, outcomes);
107
+ if (live === undefined) {
108
+ throw new PreflightError(`team '${ref}' was not found in this organization. Create it or fix the reference.`);
109
+ }
110
+ return live.id;
111
+ }
112
+ /**
113
+ * The platform derives a custom role's slug from its name, so the name is the key a live custom role is found
114
+ * by. A role's policies are a set; only the fields that drifted are sent.
115
+ */
116
+ export async function applyRole(resource, apis, outcomes, applied) {
117
+ const payload = resource.payload;
118
+ const surface = { kind: "role", slug: resource.slug };
119
+ const roles = await failing(() => paginate((page, limit) => apis.roles.listRoles({ page, limit })), { ...surface, op: "list" }, outcomes);
120
+ const live = roles.items.find((role) => role.name === payload.name && role.organizationId !== GLOBAL_ORGANIZATION_ID);
121
+ let id;
122
+ let action;
123
+ try {
124
+ if (live === undefined) {
125
+ const labels = createLabels(payload.labels);
126
+ const created = await apis.roles.createRole({
127
+ createRoleRequest: {
128
+ name: payload.name,
129
+ ...(payload.description !== undefined ? { description: payload.description } : {}),
130
+ ...(Object.keys(labels).length > 0 ? { labels } : {}),
131
+ policyIds: [...payload.policyIds],
132
+ },
133
+ });
134
+ id = created.id;
135
+ action = "created";
136
+ }
137
+ else {
138
+ const patch = {};
139
+ if (payload.description !== undefined && payload.description !== live.description) {
140
+ patch.description = payload.description;
141
+ }
142
+ const labels = labelsPatch(payload.labels, live.labels);
143
+ if (labels !== undefined)
144
+ patch.labels = labels;
145
+ if ([...live.policyIds].sort().join(" ") !== payload.policyIds.join(" ")) {
146
+ patch.policyIds = [...payload.policyIds];
147
+ }
148
+ if (Object.keys(patch).length === 0) {
149
+ id = live.id;
150
+ action = "unchanged";
151
+ }
152
+ else {
153
+ id = (await apis.roles.updateRole({ id: live.id, updateRoleRequest: patch })).id;
154
+ action = "updated";
155
+ }
156
+ }
157
+ }
158
+ catch (error) {
159
+ await refusedOrThrow(error, { ...surface, op: live === undefined ? "create" : "update" }, outcomes, resource, live?.id ?? "");
160
+ return;
161
+ }
162
+ outcomes.push({ path: resource.path, kind: "role", slug: resource.slug, id, action });
163
+ applied.set(refToken("role", resource.path.split("/")), id);
164
+ }
165
+ /**
166
+ * A principal's declared rows are its full set: apply changes a row's role in place, adds a missing row and
167
+ * removes a row the program does not declare. It writes only `/team-memberships`, never the membership or
168
+ * its policy assignments, so the use policies the platform minted at agent create stay.
169
+ */
170
+ export async function applyTeamMemberships(resource, apis, outcomes, applied, teams) {
171
+ const payload = resource.payload;
172
+ const surface = { kind: "team-membership", slug: resource.slug };
173
+ const membershipId = await membershipIdOf(payload, resource, apis, outcomes, applied);
174
+ const desired = new Map();
175
+ for (const row of payload.rows) {
176
+ const body = await desiredRow(row, membershipId, resource, outcomes, applied, teams);
177
+ desired.set(scopeOf(body), body);
178
+ }
179
+ const live = await failing(() => paginate(async (page, limit) => {
180
+ const result = await apis.teamMemberships.listTeamMemberships({ membershipId, page, limit });
181
+ return { data: result.data, page, limit, total: result.total ?? result.data.length };
182
+ }), { ...surface, op: "list" }, outcomes);
183
+ const liveByScope = new Map();
184
+ for (const row of live.items)
185
+ liveByScope.set(scopeOf(row), row);
186
+ let wrote = false;
187
+ try {
188
+ for (const [scope, body] of desired) {
189
+ const current = liveByScope.get(scope);
190
+ if (current === undefined) {
191
+ await apis.teamMemberships.createTeamMembership({ createTeamMembershipRequest: body });
192
+ wrote = true;
193
+ }
194
+ else if (current.roleId !== body.roleId) {
195
+ await apis.teamMemberships.updateTeamMembership({
196
+ id: current.id,
197
+ updateTeamMembershipRequest: { roleId: body.roleId },
198
+ });
199
+ wrote = true;
200
+ }
201
+ }
202
+ for (const [scope, row] of liveByScope) {
203
+ if (desired.has(scope))
204
+ continue;
205
+ await apis.teamMemberships.deleteTeamMembership({ id: row.id });
206
+ wrote = true;
207
+ }
208
+ }
209
+ catch (error) {
210
+ await refusedOrThrow(error, { ...surface, op: "update" }, outcomes, resource, membershipId);
211
+ return;
212
+ }
213
+ outcomes.push({
214
+ path: resource.path,
215
+ kind: "team-membership",
216
+ slug: resource.slug,
217
+ id: membershipId,
218
+ action: wrote ? "updated" : "unchanged",
219
+ });
220
+ }
221
+ function scopeOf(row) {
222
+ return row.allTeams === true ? "*" : `team:${row.teamId ?? ""}`;
223
+ }
224
+ async function desiredRow(row, membershipId, resource, outcomes, applied, teams) {
225
+ let roleId = row.roleId;
226
+ if (isRefToken(roleId)) {
227
+ const id = applied.get(roleId);
228
+ if (id === undefined) {
229
+ throw new ApplyError(`team-membership '${resource.slug}' names a custom role that was not written in this run, so its rows ` +
230
+ `cannot be applied.`, [...outcomes]);
231
+ }
232
+ roleId = id;
233
+ }
234
+ if ("allTeams" in row)
235
+ return { membershipId, allTeams: true, roleId };
236
+ const team = await teams.desired(row.teamId, { kind: "team-membership", slug: resource.slug, op: "get" }, outcomes);
237
+ if (team === undefined || team.state !== "resolved") {
238
+ throw new ApplyError(`team-membership '${resource.slug}' names team '${row.teamId}', which this run could not resolve.`, [...outcomes]);
239
+ }
240
+ return { membershipId, teamId: team.teamId, roleId };
241
+ }
242
+ /**
243
+ * The membership the rows are written on, from the principal's own read, which names its membership. No
244
+ * members-list read is made, so a key with Admin at one team writes that team's rows.
245
+ */
246
+ async function membershipIdOf(payload, resource, apis, outcomes, applied) {
247
+ const surface = { kind: "team-membership", slug: resource.slug };
248
+ let membershipId;
249
+ let label;
250
+ if ("agentId" in payload.principal) {
251
+ const ref = payload.principal.agentId;
252
+ const id = isRefToken(ref) ? applied.get(ref) : ref;
253
+ if (id === undefined) {
254
+ throw new ApplyError(`agent '${resource.slug}' was not written in this run, so its team memberships cannot be applied.`, [...outcomes]);
255
+ }
256
+ const agent = await failing(() => getBySlugOrUndefined(() => apis.agents.getAgent({ id })), { ...surface, op: "get" }, outcomes);
257
+ membershipId = agent?.membershipId;
258
+ label = `agent '${resource.slug}'`;
259
+ }
260
+ else {
261
+ const serviceAccountId = payload.principal.serviceAccountId;
262
+ const account = await failing(() => getBySlugOrUndefined(() => apis.serviceAccounts.getServiceAccount({ id: serviceAccountId })), { ...surface, op: "get" }, outcomes);
263
+ if (account === undefined) {
264
+ throw new ApplyError(`service account '${serviceAccountId}' was not found. The kit never creates a service account: create ` +
265
+ `it first, or fix the id.`, [...outcomes]);
266
+ }
267
+ membershipId = account.membershipId;
268
+ label = `service account '${serviceAccountId}'`;
269
+ }
270
+ if (membershipId === undefined) {
271
+ throw new ApplyError(`${label} has no membership in this organization, so its team rows cannot be written.`, [
272
+ ...outcomes,
273
+ ]);
274
+ }
275
+ return membershipId;
276
+ }