@orchestraworks/cli 0.5.5 → 0.5.8

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 (610) 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/auth.d.ts +11 -1
  5. package/dist/cli/core/auth.js +48 -4
  6. package/dist/cli/core/errors.js +4 -0
  7. package/dist/cli/core/platform-client.d.ts +3 -2
  8. package/dist/cli/core/profile.d.ts +2 -2
  9. package/dist/cli/factory/apply-preview.d.ts +23 -6
  10. package/dist/cli/factory/apply-preview.js +70 -43
  11. package/dist/cli/factory/apply-render.js +12 -4
  12. package/dist/cli/factory/apply.d.ts +7 -2
  13. package/dist/cli/factory/apply.js +86 -29
  14. package/dist/cli/factory/diff.js +20 -12
  15. package/dist/cli/factory/image-upload.d.ts +90 -0
  16. package/dist/cli/factory/image-upload.js +489 -0
  17. package/dist/cli/factory/synth.d.ts +7 -0
  18. package/dist/cli/factory/synth.js +35 -0
  19. package/dist/cli/firstRun.d.ts +5 -5
  20. package/dist/cli/firstRun.js +18 -17
  21. package/dist/cli/main.d.ts +1 -1
  22. package/dist/cli/main.js +4 -3
  23. package/dist/cli/upload.d.ts +3 -1
  24. package/dist/cli/upload.js +9 -2
  25. package/dist/constructs/agent.d.ts +9 -1
  26. package/dist/constructs/agent.js +7 -0
  27. package/dist/constructs/compute-provider.js +2 -2
  28. package/dist/constructs/connection.d.ts +22 -16
  29. package/dist/constructs/connection.js +29 -92
  30. package/dist/constructs/connector.d.ts +3 -1
  31. package/dist/constructs/connector.js +2 -0
  32. package/dist/constructs/egress-preset.d.ts +7 -52
  33. package/dist/constructs/egress-preset.js +7 -91
  34. package/dist/constructs/environment.d.ts +47 -70
  35. package/dist/constructs/environment.js +103 -213
  36. package/dist/constructs/gateway-key.d.ts +4 -1
  37. package/dist/constructs/gateway-key.js +4 -3
  38. package/dist/constructs/interfaces.d.ts +10 -2
  39. package/dist/constructs/model-provider-key.js +2 -3
  40. package/dist/constructs/pipeline.d.ts +5 -2
  41. package/dist/constructs/pipeline.js +4 -0
  42. package/dist/constructs/references.d.ts +4 -0
  43. package/dist/constructs/references.js +20 -0
  44. package/dist/constructs/role.d.ts +32 -0
  45. package/dist/constructs/role.js +77 -0
  46. package/dist/constructs/rules.d.ts +4 -4
  47. package/dist/constructs/rules.js +3 -3
  48. package/dist/constructs/secret.d.ts +36 -13
  49. package/dist/constructs/secret.js +110 -14
  50. package/dist/constructs/service-account.d.ts +12 -0
  51. package/dist/constructs/service-account.js +23 -0
  52. package/dist/constructs/skill.d.ts +3 -1
  53. package/dist/constructs/skill.js +2 -0
  54. package/dist/constructs/team-membership.d.ts +43 -0
  55. package/dist/constructs/team-membership.js +59 -0
  56. package/dist/constructs/team.d.ts +40 -0
  57. package/dist/constructs/team.js +107 -0
  58. package/dist/constructs/trigger.d.ts +7 -4
  59. package/dist/constructs/trigger.js +4 -0
  60. package/dist/constructs/workflow.d.ts +1 -1
  61. package/dist/core/factory.d.ts +0 -7
  62. package/dist/core/factory.js +15 -53
  63. package/dist/core/gateway-key-recipe.js +23 -2
  64. package/dist/core/host-pattern.d.ts +5 -0
  65. package/dist/core/host-pattern.js +14 -0
  66. package/dist/core/labels.d.ts +1 -1
  67. package/dist/core/labels.js +1 -1
  68. package/dist/core/outbound-warning.d.ts +2 -2
  69. package/dist/core/outbound-warning.js +52 -41
  70. package/dist/core/plan.d.ts +14 -11
  71. package/dist/core/plan.js +12 -11
  72. package/dist/engine/apply-core.d.ts +71 -67
  73. package/dist/engine/apply-core.js +120 -95
  74. package/dist/engine/client.d.ts +12 -4
  75. package/dist/engine/client.js +8 -3
  76. package/dist/engine/compute-provider-reconcile.js +1 -1
  77. package/dist/engine/condition-references.d.ts +2 -2
  78. package/dist/engine/condition-references.js +6 -6
  79. package/dist/engine/connection-install-link-reconcile.d.ts +4 -3
  80. package/dist/engine/connection-install-link-reconcile.js +35 -28
  81. package/dist/engine/diff.d.ts +12 -14
  82. package/dist/engine/diff.js +247 -113
  83. package/dist/engine/gateway-key-reconcile.d.ts +12 -9
  84. package/dist/engine/gateway-key-reconcile.js +43 -36
  85. package/dist/engine/model-provider-key-reconcile.js +2 -2
  86. package/dist/engine/pipeline-reconcile.d.ts +8 -9
  87. package/dist/engine/pipeline-reconcile.js +14 -10
  88. package/dist/engine/reconcile.d.ts +7 -21
  89. package/dist/engine/reconcile.js +115 -215
  90. package/dist/engine/refusals.d.ts +14 -31
  91. package/dist/engine/refusals.js +32 -81
  92. package/dist/engine/role-membership-reconcile.d.ts +19 -0
  93. package/dist/engine/role-membership-reconcile.js +276 -0
  94. package/dist/engine/secrets-apply.d.ts +18 -4
  95. package/dist/engine/secrets-apply.js +39 -4
  96. package/dist/engine/trigger-reconcile.d.ts +22 -23
  97. package/dist/engine/trigger-reconcile.js +43 -65
  98. package/dist/engine/workflow-reconcile.d.ts +2 -2
  99. package/dist/engine/workflow-reconcile.js +5 -5
  100. package/dist/generated/cli-commands.json +15398 -11771
  101. package/dist/generated/cli-dispatch.d.ts +4 -3
  102. package/dist/generated/cli-dispatch.js +76 -62
  103. package/dist/index.d.ts +12 -7
  104. package/dist/index.js +5 -3
  105. package/dist/metrics/metric.d.ts +3 -3
  106. package/dist/metrics/metric.js +1 -1
  107. package/docs/REFERENCE.md +102 -95
  108. package/node_modules/@orchestraworks/client/dist/apis/AgentsApi.d.ts +1 -1
  109. package/node_modules/@orchestraworks/client/dist/apis/AgentsApi.js +2 -2
  110. package/node_modules/@orchestraworks/client/dist/apis/ArtifactsApi.d.ts +1 -1
  111. package/node_modules/@orchestraworks/client/dist/apis/ArtifactsApi.js +2 -2
  112. package/node_modules/@orchestraworks/client/dist/apis/ConnectionInstallLinksApi.d.ts +1 -1
  113. package/node_modules/@orchestraworks/client/dist/apis/ConnectionInstallLinksApi.js +2 -2
  114. package/node_modules/@orchestraworks/client/dist/apis/ConnectionsApi.d.ts +1 -1
  115. package/node_modules/@orchestraworks/client/dist/apis/ConnectionsApi.js +2 -2
  116. package/node_modules/@orchestraworks/client/dist/apis/EnvironmentsApi.d.ts +1 -1
  117. package/node_modules/@orchestraworks/client/dist/apis/EnvironmentsApi.js +2 -2
  118. package/node_modules/@orchestraworks/client/dist/apis/FilesApi.d.ts +1 -1
  119. package/node_modules/@orchestraworks/client/dist/apis/FilesApi.js +2 -2
  120. package/node_modules/@orchestraworks/client/dist/apis/ImagesApi.d.ts +88 -0
  121. package/node_modules/@orchestraworks/client/dist/apis/ImagesApi.js +239 -0
  122. package/node_modules/@orchestraworks/client/dist/apis/MetricsApi.d.ts +1 -1
  123. package/node_modules/@orchestraworks/client/dist/apis/MetricsApi.js +2 -2
  124. package/node_modules/@orchestraworks/client/dist/apis/OrganizationsApi.d.ts +1 -15
  125. package/node_modules/@orchestraworks/client/dist/apis/OrganizationsApi.js +3 -49
  126. package/node_modules/@orchestraworks/client/dist/apis/PipelinesApi.d.ts +1 -1
  127. package/node_modules/@orchestraworks/client/dist/apis/PipelinesApi.js +2 -2
  128. package/node_modules/@orchestraworks/client/dist/apis/ProviderConnectionIntentsApi.d.ts +1 -1
  129. package/node_modules/@orchestraworks/client/dist/apis/ProviderConnectionIntentsApi.js +2 -2
  130. package/node_modules/@orchestraworks/client/dist/apis/SecretsApi.d.ts +1 -1
  131. package/node_modules/@orchestraworks/client/dist/apis/SecretsApi.js +2 -2
  132. package/node_modules/@orchestraworks/client/dist/apis/SessionsApi.d.ts +1 -1
  133. package/node_modules/@orchestraworks/client/dist/apis/SessionsApi.js +2 -2
  134. package/node_modules/@orchestraworks/client/dist/apis/SkillsApi.d.ts +1 -1
  135. package/node_modules/@orchestraworks/client/dist/apis/SkillsApi.js +2 -2
  136. package/node_modules/@orchestraworks/client/dist/apis/TeamMembershipsApi.d.ts +96 -0
  137. package/node_modules/@orchestraworks/client/dist/apis/{GroupsApi.js → TeamMembershipsApi.js} +62 -59
  138. package/node_modules/@orchestraworks/client/dist/apis/TeamsApi.d.ts +93 -0
  139. package/node_modules/@orchestraworks/client/dist/apis/{ProjectsApi.js → TeamsApi.js} +55 -55
  140. package/node_modules/@orchestraworks/client/dist/apis/TriggersApi.d.ts +1 -1
  141. package/node_modules/@orchestraworks/client/dist/apis/TriggersApi.js +2 -2
  142. package/node_modules/@orchestraworks/client/dist/apis/UsersApi.d.ts +0 -15
  143. package/node_modules/@orchestraworks/client/dist/apis/UsersApi.js +0 -49
  144. package/node_modules/@orchestraworks/client/dist/apis/VolumesApi.d.ts +1 -1
  145. package/node_modules/@orchestraworks/client/dist/apis/VolumesApi.js +2 -2
  146. package/node_modules/@orchestraworks/client/dist/apis/WorkItemsApi.d.ts +2 -2
  147. package/node_modules/@orchestraworks/client/dist/apis/WorkItemsApi.js +4 -4
  148. package/node_modules/@orchestraworks/client/dist/apis/WorkflowsApi.d.ts +1 -1
  149. package/node_modules/@orchestraworks/client/dist/apis/WorkflowsApi.js +2 -2
  150. package/node_modules/@orchestraworks/client/dist/apis/index.d.ts +3 -2
  151. package/node_modules/@orchestraworks/client/dist/apis/index.js +3 -2
  152. package/node_modules/@orchestraworks/client/dist/esm/apis/AgentsApi.d.ts +1 -1
  153. package/node_modules/@orchestraworks/client/dist/esm/apis/AgentsApi.js +2 -2
  154. package/node_modules/@orchestraworks/client/dist/esm/apis/ArtifactsApi.d.ts +1 -1
  155. package/node_modules/@orchestraworks/client/dist/esm/apis/ArtifactsApi.js +2 -2
  156. package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionInstallLinksApi.d.ts +1 -1
  157. package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionInstallLinksApi.js +2 -2
  158. package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionsApi.d.ts +1 -1
  159. package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionsApi.js +2 -2
  160. package/node_modules/@orchestraworks/client/dist/esm/apis/EnvironmentsApi.d.ts +1 -1
  161. package/node_modules/@orchestraworks/client/dist/esm/apis/EnvironmentsApi.js +2 -2
  162. package/node_modules/@orchestraworks/client/dist/esm/apis/FilesApi.d.ts +1 -1
  163. package/node_modules/@orchestraworks/client/dist/esm/apis/FilesApi.js +2 -2
  164. package/node_modules/@orchestraworks/client/dist/esm/apis/ImagesApi.d.ts +88 -0
  165. package/node_modules/@orchestraworks/client/dist/esm/apis/ImagesApi.js +235 -0
  166. package/node_modules/@orchestraworks/client/dist/esm/apis/MetricsApi.d.ts +1 -1
  167. package/node_modules/@orchestraworks/client/dist/esm/apis/MetricsApi.js +2 -2
  168. package/node_modules/@orchestraworks/client/dist/esm/apis/OrganizationsApi.d.ts +1 -15
  169. package/node_modules/@orchestraworks/client/dist/esm/apis/OrganizationsApi.js +3 -49
  170. package/node_modules/@orchestraworks/client/dist/esm/apis/PipelinesApi.d.ts +1 -1
  171. package/node_modules/@orchestraworks/client/dist/esm/apis/PipelinesApi.js +2 -2
  172. package/node_modules/@orchestraworks/client/dist/esm/apis/ProviderConnectionIntentsApi.d.ts +1 -1
  173. package/node_modules/@orchestraworks/client/dist/esm/apis/ProviderConnectionIntentsApi.js +2 -2
  174. package/node_modules/@orchestraworks/client/dist/esm/apis/SecretsApi.d.ts +1 -1
  175. package/node_modules/@orchestraworks/client/dist/esm/apis/SecretsApi.js +2 -2
  176. package/node_modules/@orchestraworks/client/dist/esm/apis/SessionsApi.d.ts +1 -1
  177. package/node_modules/@orchestraworks/client/dist/esm/apis/SessionsApi.js +2 -2
  178. package/node_modules/@orchestraworks/client/dist/esm/apis/SkillsApi.d.ts +1 -1
  179. package/node_modules/@orchestraworks/client/dist/esm/apis/SkillsApi.js +2 -2
  180. package/node_modules/@orchestraworks/client/dist/esm/apis/TeamMembershipsApi.d.ts +96 -0
  181. package/node_modules/@orchestraworks/client/dist/esm/apis/{GroupsApi.js → TeamMembershipsApi.js} +60 -57
  182. package/node_modules/@orchestraworks/client/dist/esm/apis/TeamsApi.d.ts +93 -0
  183. package/node_modules/@orchestraworks/client/dist/esm/apis/{ProjectsApi.js → TeamsApi.js} +53 -53
  184. package/node_modules/@orchestraworks/client/dist/esm/apis/TriggersApi.d.ts +1 -1
  185. package/node_modules/@orchestraworks/client/dist/esm/apis/TriggersApi.js +2 -2
  186. package/node_modules/@orchestraworks/client/dist/esm/apis/UsersApi.d.ts +0 -15
  187. package/node_modules/@orchestraworks/client/dist/esm/apis/UsersApi.js +0 -49
  188. package/node_modules/@orchestraworks/client/dist/esm/apis/VolumesApi.d.ts +1 -1
  189. package/node_modules/@orchestraworks/client/dist/esm/apis/VolumesApi.js +2 -2
  190. package/node_modules/@orchestraworks/client/dist/esm/apis/WorkItemsApi.d.ts +2 -2
  191. package/node_modules/@orchestraworks/client/dist/esm/apis/WorkItemsApi.js +4 -4
  192. package/node_modules/@orchestraworks/client/dist/esm/apis/WorkflowsApi.d.ts +1 -1
  193. package/node_modules/@orchestraworks/client/dist/esm/apis/WorkflowsApi.js +2 -2
  194. package/node_modules/@orchestraworks/client/dist/esm/apis/index.d.ts +3 -2
  195. package/node_modules/@orchestraworks/client/dist/esm/apis/index.js +3 -2
  196. package/node_modules/@orchestraworks/client/dist/esm/models/AddArtifactVersionRequest.d.ts +1 -1
  197. package/node_modules/@orchestraworks/client/dist/esm/models/Agent.d.ts +9 -3
  198. package/node_modules/@orchestraworks/client/dist/esm/models/Agent.js +3 -2
  199. package/node_modules/@orchestraworks/client/dist/esm/models/ApiErrorDetail.d.ts +9 -1
  200. package/node_modules/@orchestraworks/client/dist/esm/models/ApiErrorDetail.js +5 -1
  201. package/node_modules/@orchestraworks/client/dist/esm/models/Artifact.d.ts +2 -2
  202. package/node_modules/@orchestraworks/client/dist/esm/models/Artifact.js +2 -2
  203. package/node_modules/@orchestraworks/client/dist/esm/models/ArtifactSummary.d.ts +2 -2
  204. package/node_modules/@orchestraworks/client/dist/esm/models/ArtifactSummary.js +2 -2
  205. package/node_modules/@orchestraworks/client/dist/esm/models/AssignAction.d.ts +1 -1
  206. package/node_modules/@orchestraworks/client/dist/esm/models/AssignAction.js +2 -2
  207. package/node_modules/@orchestraworks/client/dist/esm/models/AssignWorkItemRequest.d.ts +2 -2
  208. package/node_modules/@orchestraworks/client/dist/esm/models/AssignWorkItemRequest.js +2 -2
  209. package/node_modules/@orchestraworks/client/dist/esm/models/ComputeProviderTarget.d.ts +6 -0
  210. package/node_modules/@orchestraworks/client/dist/esm/models/ComputeProviderTarget.js +2 -0
  211. package/node_modules/@orchestraworks/client/dist/esm/models/Connection.d.ts +16 -3
  212. package/node_modules/@orchestraworks/client/dist/esm/models/Connection.js +8 -2
  213. package/node_modules/@orchestraworks/client/dist/esm/models/ConnectionInstallLink.d.ts +2 -2
  214. package/node_modules/@orchestraworks/client/dist/esm/models/ConnectionInstallLink.js +2 -2
  215. package/node_modules/@orchestraworks/client/dist/esm/models/Connector.d.ts +2 -2
  216. package/node_modules/@orchestraworks/client/dist/esm/models/Connector.js +2 -2
  217. package/node_modules/@orchestraworks/client/dist/esm/models/CreateAgentRequest.d.ts +2 -2
  218. package/node_modules/@orchestraworks/client/dist/esm/models/CreateAgentRequest.js +2 -2
  219. package/node_modules/@orchestraworks/client/dist/esm/models/CreateArtifactRequest.d.ts +4 -4
  220. package/node_modules/@orchestraworks/client/dist/esm/models/CreateArtifactRequest.js +2 -2
  221. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionInstallLinkRequest.d.ts +3 -3
  222. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionInstallLinkRequest.js +2 -2
  223. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionRequest.d.ts +8 -2
  224. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionRequest.js +4 -2
  225. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectorRequest.d.ts +2 -2
  226. package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectorRequest.js +2 -2
  227. package/node_modules/@orchestraworks/client/dist/esm/models/CreateDashboardRequest.d.ts +3 -3
  228. package/node_modules/@orchestraworks/client/dist/esm/models/CreateDashboardRequest.js +2 -2
  229. package/node_modules/@orchestraworks/client/dist/esm/models/CreateEnvironmentRequest.d.ts +2 -2
  230. package/node_modules/@orchestraworks/client/dist/esm/models/CreateEnvironmentRequest.js +2 -2
  231. package/node_modules/@orchestraworks/client/dist/esm/models/CreateFileRequest.d.ts +2 -2
  232. package/node_modules/@orchestraworks/client/dist/esm/models/CreateFileRequest.js +2 -2
  233. package/node_modules/@orchestraworks/client/dist/esm/models/CreateGatewayKeyRequest.d.ts +2 -2
  234. package/node_modules/@orchestraworks/client/dist/esm/models/CreateGatewayKeyRequest.js +2 -2
  235. package/node_modules/@orchestraworks/client/dist/esm/models/CreateImageRequest.d.ts +38 -0
  236. package/node_modules/@orchestraworks/client/dist/esm/models/{GroupMemberAgent.js → CreateImageRequest.js} +12 -16
  237. package/node_modules/@orchestraworks/client/dist/esm/models/CreateMachineRequest.d.ts +2 -2
  238. package/node_modules/@orchestraworks/client/dist/esm/models/CreateMachineRequest.js +2 -2
  239. package/node_modules/@orchestraworks/client/dist/esm/models/CreateMetricRequest.d.ts +2 -2
  240. package/node_modules/@orchestraworks/client/dist/esm/models/CreateMetricRequest.js +2 -2
  241. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationInvitationRequest.d.ts +4 -4
  242. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationInvitationRequest.js +3 -3
  243. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationMembershipRequest.d.ts +1 -8
  244. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationMembershipRequest.js +0 -3
  245. package/node_modules/@orchestraworks/client/dist/esm/models/CreatePipelineRequest.d.ts +2 -2
  246. package/node_modules/@orchestraworks/client/dist/esm/models/CreatePipelineRequest.js +2 -2
  247. package/node_modules/@orchestraworks/client/dist/esm/models/CreateProviderConnectionIntentRequest.d.ts +3 -3
  248. package/node_modules/@orchestraworks/client/dist/esm/models/CreateProviderConnectionIntentRequest.js +2 -2
  249. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSecretRequest.d.ts +8 -2
  250. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSecretRequest.js +4 -2
  251. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSessionRequest.d.ts +2 -2
  252. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSessionRequest.js +2 -2
  253. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSkillRequest.d.ts +2 -2
  254. package/node_modules/@orchestraworks/client/dist/esm/models/CreateSkillRequest.js +2 -2
  255. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamMembershipRequest.d.ts +65 -0
  256. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamMembershipRequest.js +61 -0
  257. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamRequest.d.ts +80 -0
  258. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamRequest.js +64 -0
  259. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTriggerRequest.d.ts +2 -2
  260. package/node_modules/@orchestraworks/client/dist/esm/models/CreateTriggerRequest.js +2 -2
  261. package/node_modules/@orchestraworks/client/dist/esm/models/CreateVolumeRequest.d.ts +2 -2
  262. package/node_modules/@orchestraworks/client/dist/esm/models/CreateVolumeRequest.js +2 -2
  263. package/node_modules/@orchestraworks/client/dist/esm/models/CreateWorkflowRequest.d.ts +1 -1
  264. package/node_modules/@orchestraworks/client/dist/esm/models/Dashboard.d.ts +8 -2
  265. package/node_modules/@orchestraworks/client/dist/esm/models/Dashboard.js +6 -2
  266. package/node_modules/@orchestraworks/client/dist/esm/models/DashboardChart.d.ts +45 -4
  267. package/node_modules/@orchestraworks/client/dist/esm/models/DashboardChart.js +29 -5
  268. package/node_modules/@orchestraworks/client/dist/esm/models/DashboardChartQuery.d.ts +1 -1
  269. package/node_modules/@orchestraworks/client/dist/esm/models/Delivery.d.ts +2 -2
  270. package/node_modules/@orchestraworks/client/dist/esm/models/Delivery.js +2 -2
  271. package/node_modules/@orchestraworks/client/dist/esm/models/EgressPolicyRule.d.ts +0 -13
  272. package/node_modules/@orchestraworks/client/dist/esm/models/EgressPolicyRule.js +0 -5
  273. package/node_modules/@orchestraworks/client/dist/esm/models/EntitlementTeamUsage.d.ts +58 -0
  274. package/node_modules/@orchestraworks/client/dist/esm/models/EntitlementTeamUsage.js +64 -0
  275. package/node_modules/@orchestraworks/client/dist/esm/models/Environment.d.ts +2 -2
  276. package/node_modules/@orchestraworks/client/dist/esm/models/Environment.js +2 -2
  277. package/node_modules/@orchestraworks/client/dist/esm/models/EnvironmentEgressPolicy.d.ts +1 -1
  278. package/node_modules/@orchestraworks/client/dist/esm/models/GatewayKey.d.ts +2 -2
  279. package/node_modules/@orchestraworks/client/dist/esm/models/GatewayKey.js +2 -2
  280. package/node_modules/@orchestraworks/client/dist/esm/models/Image.d.ts +113 -0
  281. package/node_modules/@orchestraworks/client/dist/esm/models/Image.js +91 -0
  282. package/node_modules/@orchestraworks/client/dist/esm/models/InboundWebhookEdge.d.ts +2 -2
  283. package/node_modules/@orchestraworks/client/dist/esm/models/InboundWebhookEdge.js +2 -2
  284. package/node_modules/@orchestraworks/client/dist/esm/models/InvitationTeamMembership.d.ts +44 -0
  285. package/node_modules/@orchestraworks/client/dist/esm/models/InvitationTeamMembership.js +47 -0
  286. package/node_modules/@orchestraworks/client/dist/esm/models/MachineEgressPolicyDiagnostics.d.ts +1 -1
  287. package/node_modules/@orchestraworks/client/dist/esm/models/MachineEgressRuleDiagnostics.d.ts +0 -6
  288. package/node_modules/@orchestraworks/client/dist/esm/models/MachineEgressRuleDiagnostics.js +0 -4
  289. package/node_modules/@orchestraworks/client/dist/esm/models/MachineView.d.ts +2 -2
  290. package/node_modules/@orchestraworks/client/dist/esm/models/MachineView.js +2 -2
  291. package/node_modules/@orchestraworks/client/dist/esm/models/MessageWorkItemRequest.d.ts +1 -1
  292. package/node_modules/@orchestraworks/client/dist/esm/models/Metric.d.ts +2 -2
  293. package/node_modules/@orchestraworks/client/dist/esm/models/Metric.js +2 -2
  294. package/node_modules/@orchestraworks/client/dist/esm/models/MetricValue.d.ts +2 -2
  295. package/node_modules/@orchestraworks/client/dist/esm/models/MetricValue.js +2 -2
  296. package/node_modules/@orchestraworks/client/dist/esm/models/ModelFile.d.ts +2 -2
  297. package/node_modules/@orchestraworks/client/dist/esm/models/ModelFile.js +2 -2
  298. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationEntitlements.d.ts +7 -0
  299. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationEntitlements.js +5 -0
  300. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationInvitation.d.ts +4 -4
  301. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationInvitation.js +4 -4
  302. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationMembership.d.ts +5 -5
  303. package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationMembership.js +4 -4
  304. package/node_modules/@orchestraworks/client/dist/esm/models/PageImage.d.ts +51 -0
  305. package/node_modules/@orchestraworks/client/dist/esm/models/{PageProject.js → PageImage.js} +11 -11
  306. package/node_modules/@orchestraworks/client/dist/esm/models/PageTeam.d.ts +51 -0
  307. package/node_modules/@orchestraworks/client/dist/esm/models/{PageGroupSummary.js → PageTeam.js} +11 -11
  308. package/node_modules/@orchestraworks/client/dist/esm/models/PageTeamMembership.d.ts +51 -0
  309. package/node_modules/@orchestraworks/client/dist/esm/models/PageTeamMembership.js +56 -0
  310. package/node_modules/@orchestraworks/client/dist/esm/models/Pipeline.d.ts +2 -2
  311. package/node_modules/@orchestraworks/client/dist/esm/models/Pipeline.js +2 -2
  312. package/node_modules/@orchestraworks/client/dist/esm/models/PolicyAssignment.d.ts +8 -2
  313. package/node_modules/@orchestraworks/client/dist/esm/models/PolicyAssignment.js +4 -2
  314. package/node_modules/@orchestraworks/client/dist/esm/models/ProviderConnectionIntent.d.ts +2 -2
  315. package/node_modules/@orchestraworks/client/dist/esm/models/ProviderConnectionIntent.js +2 -2
  316. package/node_modules/@orchestraworks/client/dist/esm/models/ReferenceSubject.d.ts +1 -1
  317. package/node_modules/@orchestraworks/client/dist/esm/models/ReferenceSubject.js +1 -1
  318. package/node_modules/@orchestraworks/client/dist/esm/models/Role.d.ts +6 -0
  319. package/node_modules/@orchestraworks/client/dist/esm/models/Role.js +4 -0
  320. package/node_modules/@orchestraworks/client/dist/esm/models/Secret.d.ts +16 -3
  321. package/node_modules/@orchestraworks/client/dist/esm/models/Secret.js +8 -2
  322. package/node_modules/@orchestraworks/client/dist/esm/models/ServiceAccount.d.ts +7 -1
  323. package/node_modules/@orchestraworks/client/dist/esm/models/ServiceAccount.js +1 -0
  324. package/node_modules/@orchestraworks/client/dist/esm/models/Session.d.ts +3 -2
  325. package/node_modules/@orchestraworks/client/dist/esm/models/Session.js +3 -2
  326. package/node_modules/@orchestraworks/client/dist/esm/models/SessionSummary.d.ts +3 -2
  327. package/node_modules/@orchestraworks/client/dist/esm/models/SessionSummary.js +3 -2
  328. package/node_modules/@orchestraworks/client/dist/esm/models/Skill.d.ts +2 -2
  329. package/node_modules/@orchestraworks/client/dist/esm/models/Skill.js +2 -2
  330. package/node_modules/@orchestraworks/client/dist/esm/models/SnapshotAnchor.d.ts +1 -1
  331. package/node_modules/@orchestraworks/client/dist/esm/models/Team.d.ts +104 -0
  332. package/node_modules/@orchestraworks/client/dist/esm/models/{GroupSummary.js → Team.js} +25 -15
  333. package/node_modules/@orchestraworks/client/dist/esm/models/TeamMembership.d.ts +83 -0
  334. package/node_modules/@orchestraworks/client/dist/esm/models/TeamMembership.js +77 -0
  335. package/node_modules/@orchestraworks/client/dist/esm/models/Trigger.d.ts +2 -2
  336. package/node_modules/@orchestraworks/client/dist/esm/models/Trigger.js +2 -2
  337. package/node_modules/@orchestraworks/client/dist/esm/models/TriggerTarget.d.ts +1 -1
  338. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateArtifactRequest.d.ts +1 -1
  339. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateConnectionRequest.d.ts +6 -0
  340. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateConnectionRequest.js +2 -0
  341. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationInvitationRequest.d.ts +4 -4
  342. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationInvitationRequest.js +3 -3
  343. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationMembershipRequest.d.ts +1 -8
  344. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationMembershipRequest.js +0 -3
  345. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateSecretRequest.d.ts +6 -0
  346. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateSecretRequest.js +2 -0
  347. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamMembershipRequest.d.ts +47 -0
  348. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamMembershipRequest.js +51 -0
  349. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamRequest.d.ts +68 -0
  350. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamRequest.js +58 -0
  351. package/node_modules/@orchestraworks/client/dist/esm/models/UserGrant.d.ts +2 -2
  352. package/node_modules/@orchestraworks/client/dist/esm/models/UserGrant.js +2 -2
  353. package/node_modules/@orchestraworks/client/dist/esm/models/Volume.d.ts +10 -3
  354. package/node_modules/@orchestraworks/client/dist/esm/models/Volume.js +4 -2
  355. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemActivity.d.ts +2 -2
  356. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemAssignment.d.ts +7 -7
  357. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemAssignment.js +5 -5
  358. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemDraftAssignment.d.ts +2 -2
  359. package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemDraftAssignment.js +2 -2
  360. package/node_modules/@orchestraworks/client/dist/esm/models/Workflow.d.ts +2 -2
  361. package/node_modules/@orchestraworks/client/dist/esm/models/Workflow.js +2 -2
  362. package/node_modules/@orchestraworks/client/dist/esm/models/index.d.ts +13 -17
  363. package/node_modules/@orchestraworks/client/dist/esm/models/index.js +13 -17
  364. package/node_modules/@orchestraworks/client/dist/models/AddArtifactVersionRequest.d.ts +1 -1
  365. package/node_modules/@orchestraworks/client/dist/models/Agent.d.ts +9 -3
  366. package/node_modules/@orchestraworks/client/dist/models/Agent.js +3 -2
  367. package/node_modules/@orchestraworks/client/dist/models/ApiErrorDetail.d.ts +9 -1
  368. package/node_modules/@orchestraworks/client/dist/models/ApiErrorDetail.js +5 -1
  369. package/node_modules/@orchestraworks/client/dist/models/Artifact.d.ts +2 -2
  370. package/node_modules/@orchestraworks/client/dist/models/Artifact.js +2 -2
  371. package/node_modules/@orchestraworks/client/dist/models/ArtifactSummary.d.ts +2 -2
  372. package/node_modules/@orchestraworks/client/dist/models/ArtifactSummary.js +2 -2
  373. package/node_modules/@orchestraworks/client/dist/models/AssignAction.d.ts +1 -1
  374. package/node_modules/@orchestraworks/client/dist/models/AssignAction.js +2 -2
  375. package/node_modules/@orchestraworks/client/dist/models/AssignWorkItemRequest.d.ts +2 -2
  376. package/node_modules/@orchestraworks/client/dist/models/AssignWorkItemRequest.js +2 -2
  377. package/node_modules/@orchestraworks/client/dist/models/ComputeProviderTarget.d.ts +6 -0
  378. package/node_modules/@orchestraworks/client/dist/models/ComputeProviderTarget.js +2 -0
  379. package/node_modules/@orchestraworks/client/dist/models/Connection.d.ts +16 -3
  380. package/node_modules/@orchestraworks/client/dist/models/Connection.js +8 -2
  381. package/node_modules/@orchestraworks/client/dist/models/ConnectionInstallLink.d.ts +2 -2
  382. package/node_modules/@orchestraworks/client/dist/models/ConnectionInstallLink.js +2 -2
  383. package/node_modules/@orchestraworks/client/dist/models/Connector.d.ts +2 -2
  384. package/node_modules/@orchestraworks/client/dist/models/Connector.js +2 -2
  385. package/node_modules/@orchestraworks/client/dist/models/CreateAgentRequest.d.ts +2 -2
  386. package/node_modules/@orchestraworks/client/dist/models/CreateAgentRequest.js +2 -2
  387. package/node_modules/@orchestraworks/client/dist/models/CreateArtifactRequest.d.ts +4 -4
  388. package/node_modules/@orchestraworks/client/dist/models/CreateArtifactRequest.js +2 -2
  389. package/node_modules/@orchestraworks/client/dist/models/CreateConnectionInstallLinkRequest.d.ts +3 -3
  390. package/node_modules/@orchestraworks/client/dist/models/CreateConnectionInstallLinkRequest.js +2 -2
  391. package/node_modules/@orchestraworks/client/dist/models/CreateConnectionRequest.d.ts +8 -2
  392. package/node_modules/@orchestraworks/client/dist/models/CreateConnectionRequest.js +4 -2
  393. package/node_modules/@orchestraworks/client/dist/models/CreateConnectorRequest.d.ts +2 -2
  394. package/node_modules/@orchestraworks/client/dist/models/CreateConnectorRequest.js +2 -2
  395. package/node_modules/@orchestraworks/client/dist/models/CreateDashboardRequest.d.ts +3 -3
  396. package/node_modules/@orchestraworks/client/dist/models/CreateDashboardRequest.js +2 -2
  397. package/node_modules/@orchestraworks/client/dist/models/CreateEnvironmentRequest.d.ts +2 -2
  398. package/node_modules/@orchestraworks/client/dist/models/CreateEnvironmentRequest.js +2 -2
  399. package/node_modules/@orchestraworks/client/dist/models/CreateFileRequest.d.ts +2 -2
  400. package/node_modules/@orchestraworks/client/dist/models/CreateFileRequest.js +2 -2
  401. package/node_modules/@orchestraworks/client/dist/models/CreateGatewayKeyRequest.d.ts +2 -2
  402. package/node_modules/@orchestraworks/client/dist/models/CreateGatewayKeyRequest.js +2 -2
  403. package/node_modules/@orchestraworks/client/dist/models/CreateImageRequest.d.ts +38 -0
  404. package/node_modules/@orchestraworks/client/dist/models/CreateImageRequest.js +54 -0
  405. package/node_modules/@orchestraworks/client/dist/models/CreateMachineRequest.d.ts +2 -2
  406. package/node_modules/@orchestraworks/client/dist/models/CreateMachineRequest.js +2 -2
  407. package/node_modules/@orchestraworks/client/dist/models/CreateMetricRequest.d.ts +2 -2
  408. package/node_modules/@orchestraworks/client/dist/models/CreateMetricRequest.js +2 -2
  409. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationInvitationRequest.d.ts +4 -4
  410. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationInvitationRequest.js +3 -3
  411. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationMembershipRequest.d.ts +1 -8
  412. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationMembershipRequest.js +0 -3
  413. package/node_modules/@orchestraworks/client/dist/models/CreatePipelineRequest.d.ts +2 -2
  414. package/node_modules/@orchestraworks/client/dist/models/CreatePipelineRequest.js +2 -2
  415. package/node_modules/@orchestraworks/client/dist/models/CreateProviderConnectionIntentRequest.d.ts +3 -3
  416. package/node_modules/@orchestraworks/client/dist/models/CreateProviderConnectionIntentRequest.js +2 -2
  417. package/node_modules/@orchestraworks/client/dist/models/CreateSecretRequest.d.ts +8 -2
  418. package/node_modules/@orchestraworks/client/dist/models/CreateSecretRequest.js +4 -2
  419. package/node_modules/@orchestraworks/client/dist/models/CreateSessionRequest.d.ts +2 -2
  420. package/node_modules/@orchestraworks/client/dist/models/CreateSessionRequest.js +2 -2
  421. package/node_modules/@orchestraworks/client/dist/models/CreateSkillRequest.d.ts +2 -2
  422. package/node_modules/@orchestraworks/client/dist/models/CreateSkillRequest.js +2 -2
  423. package/node_modules/@orchestraworks/client/dist/models/CreateTeamMembershipRequest.d.ts +65 -0
  424. package/node_modules/@orchestraworks/client/dist/models/CreateTeamMembershipRequest.js +69 -0
  425. package/node_modules/@orchestraworks/client/dist/models/CreateTeamRequest.d.ts +80 -0
  426. package/node_modules/@orchestraworks/client/dist/models/CreateTeamRequest.js +72 -0
  427. package/node_modules/@orchestraworks/client/dist/models/CreateTriggerRequest.d.ts +2 -2
  428. package/node_modules/@orchestraworks/client/dist/models/CreateTriggerRequest.js +2 -2
  429. package/node_modules/@orchestraworks/client/dist/models/CreateVolumeRequest.d.ts +2 -2
  430. package/node_modules/@orchestraworks/client/dist/models/CreateVolumeRequest.js +2 -2
  431. package/node_modules/@orchestraworks/client/dist/models/CreateWorkflowRequest.d.ts +1 -1
  432. package/node_modules/@orchestraworks/client/dist/models/Dashboard.d.ts +8 -2
  433. package/node_modules/@orchestraworks/client/dist/models/Dashboard.js +6 -2
  434. package/node_modules/@orchestraworks/client/dist/models/DashboardChart.d.ts +45 -4
  435. package/node_modules/@orchestraworks/client/dist/models/DashboardChart.js +30 -6
  436. package/node_modules/@orchestraworks/client/dist/models/DashboardChartQuery.d.ts +1 -1
  437. package/node_modules/@orchestraworks/client/dist/models/Delivery.d.ts +2 -2
  438. package/node_modules/@orchestraworks/client/dist/models/Delivery.js +2 -2
  439. package/node_modules/@orchestraworks/client/dist/models/EgressPolicyRule.d.ts +0 -13
  440. package/node_modules/@orchestraworks/client/dist/models/EgressPolicyRule.js +0 -5
  441. package/node_modules/@orchestraworks/client/dist/models/EntitlementTeamUsage.d.ts +58 -0
  442. package/node_modules/@orchestraworks/client/dist/models/EntitlementTeamUsage.js +72 -0
  443. package/node_modules/@orchestraworks/client/dist/models/Environment.d.ts +2 -2
  444. package/node_modules/@orchestraworks/client/dist/models/Environment.js +2 -2
  445. package/node_modules/@orchestraworks/client/dist/models/EnvironmentEgressPolicy.d.ts +1 -1
  446. package/node_modules/@orchestraworks/client/dist/models/GatewayKey.d.ts +2 -2
  447. package/node_modules/@orchestraworks/client/dist/models/GatewayKey.js +2 -2
  448. package/node_modules/@orchestraworks/client/dist/models/Image.d.ts +113 -0
  449. package/node_modules/@orchestraworks/client/dist/models/Image.js +99 -0
  450. package/node_modules/@orchestraworks/client/dist/models/InboundWebhookEdge.d.ts +2 -2
  451. package/node_modules/@orchestraworks/client/dist/models/InboundWebhookEdge.js +2 -2
  452. package/node_modules/@orchestraworks/client/dist/models/InvitationTeamMembership.d.ts +44 -0
  453. package/node_modules/@orchestraworks/client/dist/models/InvitationTeamMembership.js +54 -0
  454. package/node_modules/@orchestraworks/client/dist/models/MachineEgressPolicyDiagnostics.d.ts +1 -1
  455. package/node_modules/@orchestraworks/client/dist/models/MachineEgressRuleDiagnostics.d.ts +0 -6
  456. package/node_modules/@orchestraworks/client/dist/models/MachineEgressRuleDiagnostics.js +0 -4
  457. package/node_modules/@orchestraworks/client/dist/models/MachineView.d.ts +2 -2
  458. package/node_modules/@orchestraworks/client/dist/models/MachineView.js +2 -2
  459. package/node_modules/@orchestraworks/client/dist/models/MessageWorkItemRequest.d.ts +1 -1
  460. package/node_modules/@orchestraworks/client/dist/models/Metric.d.ts +2 -2
  461. package/node_modules/@orchestraworks/client/dist/models/Metric.js +2 -2
  462. package/node_modules/@orchestraworks/client/dist/models/MetricValue.d.ts +2 -2
  463. package/node_modules/@orchestraworks/client/dist/models/MetricValue.js +2 -2
  464. package/node_modules/@orchestraworks/client/dist/models/ModelFile.d.ts +2 -2
  465. package/node_modules/@orchestraworks/client/dist/models/ModelFile.js +2 -2
  466. package/node_modules/@orchestraworks/client/dist/models/OrganizationEntitlements.d.ts +7 -0
  467. package/node_modules/@orchestraworks/client/dist/models/OrganizationEntitlements.js +5 -0
  468. package/node_modules/@orchestraworks/client/dist/models/OrganizationInvitation.d.ts +4 -4
  469. package/node_modules/@orchestraworks/client/dist/models/OrganizationInvitation.js +4 -4
  470. package/node_modules/@orchestraworks/client/dist/models/OrganizationMembership.d.ts +5 -5
  471. package/node_modules/@orchestraworks/client/dist/models/OrganizationMembership.js +4 -4
  472. package/node_modules/@orchestraworks/client/dist/models/PageImage.d.ts +51 -0
  473. package/node_modules/@orchestraworks/client/dist/models/{PageProject.js → PageImage.js} +16 -16
  474. package/node_modules/@orchestraworks/client/dist/models/PageTeam.d.ts +51 -0
  475. package/node_modules/@orchestraworks/client/dist/models/{PageGroupSummary.js → PageTeam.js} +16 -16
  476. package/node_modules/@orchestraworks/client/dist/models/PageTeamMembership.d.ts +51 -0
  477. package/node_modules/@orchestraworks/client/dist/models/PageTeamMembership.js +63 -0
  478. package/node_modules/@orchestraworks/client/dist/models/Pipeline.d.ts +2 -2
  479. package/node_modules/@orchestraworks/client/dist/models/Pipeline.js +2 -2
  480. package/node_modules/@orchestraworks/client/dist/models/PolicyAssignment.d.ts +8 -2
  481. package/node_modules/@orchestraworks/client/dist/models/PolicyAssignment.js +4 -2
  482. package/node_modules/@orchestraworks/client/dist/models/ProviderConnectionIntent.d.ts +2 -2
  483. package/node_modules/@orchestraworks/client/dist/models/ProviderConnectionIntent.js +2 -2
  484. package/node_modules/@orchestraworks/client/dist/models/ReferenceSubject.d.ts +1 -1
  485. package/node_modules/@orchestraworks/client/dist/models/ReferenceSubject.js +1 -1
  486. package/node_modules/@orchestraworks/client/dist/models/Role.d.ts +6 -0
  487. package/node_modules/@orchestraworks/client/dist/models/Role.js +4 -0
  488. package/node_modules/@orchestraworks/client/dist/models/Secret.d.ts +16 -3
  489. package/node_modules/@orchestraworks/client/dist/models/Secret.js +8 -2
  490. package/node_modules/@orchestraworks/client/dist/models/ServiceAccount.d.ts +7 -1
  491. package/node_modules/@orchestraworks/client/dist/models/ServiceAccount.js +1 -0
  492. package/node_modules/@orchestraworks/client/dist/models/Session.d.ts +3 -2
  493. package/node_modules/@orchestraworks/client/dist/models/Session.js +3 -2
  494. package/node_modules/@orchestraworks/client/dist/models/SessionSummary.d.ts +3 -2
  495. package/node_modules/@orchestraworks/client/dist/models/SessionSummary.js +3 -2
  496. package/node_modules/@orchestraworks/client/dist/models/Skill.d.ts +2 -2
  497. package/node_modules/@orchestraworks/client/dist/models/Skill.js +2 -2
  498. package/node_modules/@orchestraworks/client/dist/models/SnapshotAnchor.d.ts +1 -1
  499. package/node_modules/@orchestraworks/client/dist/models/Team.d.ts +104 -0
  500. package/node_modules/@orchestraworks/client/dist/models/{GroupSummary.js → Team.js} +31 -21
  501. package/node_modules/@orchestraworks/client/dist/models/TeamMembership.d.ts +83 -0
  502. package/node_modules/@orchestraworks/client/dist/models/TeamMembership.js +85 -0
  503. package/node_modules/@orchestraworks/client/dist/models/Trigger.d.ts +2 -2
  504. package/node_modules/@orchestraworks/client/dist/models/Trigger.js +2 -2
  505. package/node_modules/@orchestraworks/client/dist/models/TriggerTarget.d.ts +1 -1
  506. package/node_modules/@orchestraworks/client/dist/models/UpdateArtifactRequest.d.ts +1 -1
  507. package/node_modules/@orchestraworks/client/dist/models/UpdateConnectionRequest.d.ts +6 -0
  508. package/node_modules/@orchestraworks/client/dist/models/UpdateConnectionRequest.js +2 -0
  509. package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationInvitationRequest.d.ts +4 -4
  510. package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationInvitationRequest.js +3 -3
  511. package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationMembershipRequest.d.ts +1 -8
  512. package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationMembershipRequest.js +0 -3
  513. package/node_modules/@orchestraworks/client/dist/models/UpdateSecretRequest.d.ts +6 -0
  514. package/node_modules/@orchestraworks/client/dist/models/UpdateSecretRequest.js +2 -0
  515. package/node_modules/@orchestraworks/client/dist/models/UpdateTeamMembershipRequest.d.ts +47 -0
  516. package/node_modules/@orchestraworks/client/dist/models/UpdateTeamMembershipRequest.js +59 -0
  517. package/node_modules/@orchestraworks/client/dist/models/UpdateTeamRequest.d.ts +68 -0
  518. package/node_modules/@orchestraworks/client/dist/models/UpdateTeamRequest.js +66 -0
  519. package/node_modules/@orchestraworks/client/dist/models/UserGrant.d.ts +2 -2
  520. package/node_modules/@orchestraworks/client/dist/models/UserGrant.js +2 -2
  521. package/node_modules/@orchestraworks/client/dist/models/Volume.d.ts +10 -3
  522. package/node_modules/@orchestraworks/client/dist/models/Volume.js +4 -2
  523. package/node_modules/@orchestraworks/client/dist/models/WorkItemActivity.d.ts +2 -2
  524. package/node_modules/@orchestraworks/client/dist/models/WorkItemAssignment.d.ts +7 -7
  525. package/node_modules/@orchestraworks/client/dist/models/WorkItemAssignment.js +5 -5
  526. package/node_modules/@orchestraworks/client/dist/models/WorkItemDraftAssignment.d.ts +2 -2
  527. package/node_modules/@orchestraworks/client/dist/models/WorkItemDraftAssignment.js +2 -2
  528. package/node_modules/@orchestraworks/client/dist/models/Workflow.d.ts +2 -2
  529. package/node_modules/@orchestraworks/client/dist/models/Workflow.js +2 -2
  530. package/node_modules/@orchestraworks/client/dist/models/index.d.ts +13 -17
  531. package/node_modules/@orchestraworks/client/dist/models/index.js +13 -17
  532. package/node_modules/@orchestraworks/client/package.json +1 -1
  533. package/package.json +4 -4
  534. package/skills/orchestra/SKILL.md +82 -67
  535. package/skills/orchestra-fdk/references/authoring.md +83 -45
  536. package/skills/orchestra-fdk/references/environment.md +214 -33
  537. package/skills/orchestra-fdk/references/troubleshooting.md +10 -8
  538. package/templates/bug-fix/main.ts +6 -1
  539. package/templates/engineering-team/README.md +10 -7
  540. package/templates/engineering-team/agents/engineer-agent.md +38 -16
  541. package/templates/engineering-team/lib/environment.ts +15 -3
  542. package/templates/engineering-team/main.ts +1 -1
  543. package/templates/todo-factory/main.ts +6 -1
  544. package/dist/constructs/project.d.ts +0 -33
  545. package/dist/constructs/project.js +0 -82
  546. package/node_modules/@orchestraworks/client/dist/apis/GroupsApi.d.ts +0 -95
  547. package/node_modules/@orchestraworks/client/dist/apis/ProjectsApi.d.ts +0 -93
  548. package/node_modules/@orchestraworks/client/dist/esm/apis/GroupsApi.d.ts +0 -95
  549. package/node_modules/@orchestraworks/client/dist/esm/apis/ProjectsApi.d.ts +0 -93
  550. package/node_modules/@orchestraworks/client/dist/esm/models/CreateGroupRequest.d.ts +0 -82
  551. package/node_modules/@orchestraworks/client/dist/esm/models/CreateGroupRequest.js +0 -74
  552. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationRequest.d.ts +0 -53
  553. package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationRequest.js +0 -50
  554. package/node_modules/@orchestraworks/client/dist/esm/models/CreateProjectRequest.d.ts +0 -52
  555. package/node_modules/@orchestraworks/client/dist/esm/models/CreateProjectRequest.js +0 -49
  556. package/node_modules/@orchestraworks/client/dist/esm/models/CreateUserRequest.d.ts +0 -46
  557. package/node_modules/@orchestraworks/client/dist/esm/models/CreateUserRequest.js +0 -47
  558. package/node_modules/@orchestraworks/client/dist/esm/models/CredentialBinding.d.ts +0 -57
  559. package/node_modules/@orchestraworks/client/dist/esm/models/CredentialBinding.js +0 -50
  560. package/node_modules/@orchestraworks/client/dist/esm/models/Group.d.ts +0 -106
  561. package/node_modules/@orchestraworks/client/dist/esm/models/Group.js +0 -92
  562. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMember.d.ts +0 -40
  563. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMember.js +0 -45
  564. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberAgent.d.ts +0 -44
  565. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberReference.d.ts +0 -38
  566. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberReference.js +0 -43
  567. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberUser.d.ts +0 -38
  568. package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberUser.js +0 -45
  569. package/node_modules/@orchestraworks/client/dist/esm/models/GroupSummary.d.ts +0 -86
  570. package/node_modules/@orchestraworks/client/dist/esm/models/PageGroupSummary.d.ts +0 -51
  571. package/node_modules/@orchestraworks/client/dist/esm/models/PageProject.d.ts +0 -51
  572. package/node_modules/@orchestraworks/client/dist/esm/models/Project.d.ts +0 -76
  573. package/node_modules/@orchestraworks/client/dist/esm/models/Project.js +0 -69
  574. package/node_modules/@orchestraworks/client/dist/esm/models/RoleAssignment.d.ts +0 -38
  575. package/node_modules/@orchestraworks/client/dist/esm/models/RoleAssignment.js +0 -45
  576. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateGroupRequest.d.ts +0 -70
  577. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateGroupRequest.js +0 -60
  578. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateProjectRequest.d.ts +0 -46
  579. package/node_modules/@orchestraworks/client/dist/esm/models/UpdateProjectRequest.js +0 -45
  580. package/node_modules/@orchestraworks/client/dist/models/CreateGroupRequest.d.ts +0 -82
  581. package/node_modules/@orchestraworks/client/dist/models/CreateGroupRequest.js +0 -82
  582. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationRequest.d.ts +0 -53
  583. package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationRequest.js +0 -57
  584. package/node_modules/@orchestraworks/client/dist/models/CreateProjectRequest.d.ts +0 -52
  585. package/node_modules/@orchestraworks/client/dist/models/CreateProjectRequest.js +0 -56
  586. package/node_modules/@orchestraworks/client/dist/models/CreateUserRequest.d.ts +0 -46
  587. package/node_modules/@orchestraworks/client/dist/models/CreateUserRequest.js +0 -54
  588. package/node_modules/@orchestraworks/client/dist/models/CredentialBinding.d.ts +0 -57
  589. package/node_modules/@orchestraworks/client/dist/models/CredentialBinding.js +0 -57
  590. package/node_modules/@orchestraworks/client/dist/models/Group.d.ts +0 -106
  591. package/node_modules/@orchestraworks/client/dist/models/Group.js +0 -100
  592. package/node_modules/@orchestraworks/client/dist/models/GroupMember.d.ts +0 -40
  593. package/node_modules/@orchestraworks/client/dist/models/GroupMember.js +0 -52
  594. package/node_modules/@orchestraworks/client/dist/models/GroupMemberAgent.d.ts +0 -44
  595. package/node_modules/@orchestraworks/client/dist/models/GroupMemberAgent.js +0 -58
  596. package/node_modules/@orchestraworks/client/dist/models/GroupMemberReference.d.ts +0 -38
  597. package/node_modules/@orchestraworks/client/dist/models/GroupMemberReference.js +0 -50
  598. package/node_modules/@orchestraworks/client/dist/models/GroupMemberUser.d.ts +0 -38
  599. package/node_modules/@orchestraworks/client/dist/models/GroupMemberUser.js +0 -52
  600. package/node_modules/@orchestraworks/client/dist/models/GroupSummary.d.ts +0 -86
  601. package/node_modules/@orchestraworks/client/dist/models/PageGroupSummary.d.ts +0 -51
  602. package/node_modules/@orchestraworks/client/dist/models/PageProject.d.ts +0 -51
  603. package/node_modules/@orchestraworks/client/dist/models/Project.d.ts +0 -76
  604. package/node_modules/@orchestraworks/client/dist/models/Project.js +0 -76
  605. package/node_modules/@orchestraworks/client/dist/models/RoleAssignment.d.ts +0 -38
  606. package/node_modules/@orchestraworks/client/dist/models/RoleAssignment.js +0 -52
  607. package/node_modules/@orchestraworks/client/dist/models/UpdateGroupRequest.d.ts +0 -70
  608. package/node_modules/@orchestraworks/client/dist/models/UpdateGroupRequest.js +0 -68
  609. package/node_modules/@orchestraworks/client/dist/models/UpdateProjectRequest.d.ts +0 -46
  610. package/node_modules/@orchestraworks/client/dist/models/UpdateProjectRequest.js +0 -52
package/README.md CHANGED
@@ -20,7 +20,7 @@ The full guide to every construct, secrets, connections and troubleshooting is [
20
20
  ```bash
21
21
  npm install -g @orchestraworks/cli # the CLI, on your path as `orchestra`
22
22
  npm install @orchestraworks/cli # the current release
23
- npm install @orchestraworks/cli@0.5.5 # this exact release
23
+ npm install @orchestraworks/cli@0.5.8 # this exact release
24
24
  ```
25
25
 
26
26
  Then `import { Factory, Agent, … } from "@orchestraworks/cli"` normally — the package `exports` entry resolves
@@ -260,8 +260,17 @@
260
260
  }
261
261
 
262
262
  function onKeyDown(event) {
263
- if (event.key === "Escape" && commentMode) {
263
+ if (event.key !== "Escape") {
264
+ return;
265
+ }
266
+ if (commentMode) {
264
267
  setCommentMode(false);
268
+ return;
269
+ }
270
+ // A key pressed in this frame never reaches the console's document, so an Escape the page left
271
+ // unused is passed on: it is how a reader leaves the console's full-screen layer from inside a page.
272
+ if (!event.defaultPrevented) {
273
+ window.parent.postMessage({ sf: 1, event: "escape" }, consoleOrigin);
265
274
  }
266
275
  }
267
276
 
@@ -327,8 +327,8 @@ async function storeDeclaredFile(row, invocation, body, apis, target, deps, io)
327
327
  fetchApi: (deps.fetchApi ?? fetch),
328
328
  io,
329
329
  organizationId: target.organizationId,
330
- projectId: stringField(body, "projectId") ??
331
- (await ownerProject(row, invocation, apis, target.organizationId)),
330
+ teamId: stringField(body, "teamId") ??
331
+ (await ownerTeam(row, invocation, apis, target.organizationId)),
332
332
  // The one create describes one file: what it says about the name and the type governs both calls, so
333
333
  // the upload cannot land as something the create did not ask for.
334
334
  filename: stringField(body, "filename"),
@@ -359,13 +359,13 @@ async function readStoredFile(row, invocation, apis, target, fileId) {
359
359
  }
360
360
  /**
361
361
  * Where a create that publishes UNDER an item puts its file: with that item. `artifacts create-version` has
362
- * no project field of its own, so without this the upload is declared in the organization commons — which a
363
- * `files:createFile` grant conditioned to the artifact's project refuses, and an unconditioned one accepts
364
- * into the wrong place for good, since a file's project is fixed when it is declared.
362
+ * no team field of its own, so without this the upload is declared in Shared — which a `files:createFile`
363
+ * grant at the artifact's team refuses, and a wider one accepts into the wrong place for good, since a
364
+ * file's team is fixed when it is declared.
365
365
  *
366
366
  * A failure is raised rather than swallowed: a placement that cannot be read must not be guessed.
367
367
  */
368
- async function ownerProject(row, invocation, apis, organizationId) {
368
+ async function ownerTeam(row, invocation, apis, organizationId) {
369
369
  const owner = findCommand(row.noun, "get");
370
370
  if (owner === undefined || !sameItemPath(owner, row)) {
371
371
  return undefined;
@@ -379,7 +379,7 @@ async function ownerProject(row, invocation, apis, organizationId) {
379
379
  if (typeof read !== "object" || read === null || Array.isArray(read)) {
380
380
  return undefined;
381
381
  }
382
- return stringField(read, "projectId");
382
+ return stringField(read, "teamId");
383
383
  }
384
384
  function stringField(body, field) {
385
385
  const value = body[field];
@@ -14,6 +14,8 @@ export declare const AUTH_ENV: {
14
14
  /** Read after `baseUrl`: the platform writes this name into every machine. */
15
15
  readonly machineBaseUrl: "PLATFORM_BASE_URL";
16
16
  readonly token: "ORCHESTRA_API_TOKEN";
17
+ /** Set by the worker on each harness and hook process; the file holds a token it renews. */
18
+ readonly tokenFile: "ORCHESTRA_API_TOKEN_FILE";
17
19
  readonly organizationId: "ORCHESTRA_ORGANIZATION_ID";
18
20
  /** Presence is the declaration. */
19
21
  readonly edgeInjected: "SFDK_AUTH_EDGE_INJECTED";
@@ -26,7 +28,7 @@ export declare function baseUrlFromEnv(env: NodeJS.ProcessEnv): {
26
28
  readonly variable: string;
27
29
  } | undefined;
28
30
  /** Which tier of the chain supplied the authorization. */
29
- export type AuthProvider = "env" | "profile" | "edge";
31
+ export type AuthProvider = "env" | "file" | "profile" | "edge";
30
32
  /**
31
33
  * The conversation the command runs in, or undefined when the variable is absent, empty or whitespace only.
32
34
  * The only reader of the variable: auth resolution and `login` both call it.
@@ -36,6 +38,9 @@ export declare function sessionIdFrom(env: NodeJS.ProcessEnv): string | undefine
36
38
  * `session` rides along under the PROFILE provider only: `token` is the bearer as of this resolution, and
37
39
  * the session is what keeps a bearer valid over time. The env provider's token has nothing to refresh it
38
40
  * with and the edge provider holds no credential at all, so for both the field's absence is structural.
41
+ *
42
+ * Under the FILE provider the worker renews the token in place, so `token` reads the file again before each
43
+ * request, and the token names its own organization, so no organization is resolved.
39
44
  */
40
45
  export type AuthResolution = {
41
46
  readonly provider: "env" | "profile";
@@ -44,6 +49,11 @@ export type AuthResolution = {
44
49
  readonly organizationId?: string;
45
50
  readonly session?: CredentialSession;
46
51
  readonly sessionId?: string;
52
+ } | {
53
+ readonly provider: "file";
54
+ readonly token: () => string;
55
+ readonly baseUrl: string;
56
+ readonly sessionId?: string;
47
57
  } | {
48
58
  readonly provider: "edge";
49
59
  readonly baseUrl: string;
@@ -1,8 +1,9 @@
1
1
  // Every command resolves credentials through ONE ordered chain, with strict presence-is-selection
2
2
  // precedence: `ORCHESTRA_API_TOKEN` (one opaque slot holding ANY principal's bearer — the CLI never looks inside,
3
- // IAM judges server-side), then the `orchestra auth login` profile, then the sandbox flag the platform DECLARES and
4
- // never infers (the request goes out BARE and the egress stamps the per-request agent authorization, so no
5
- // credential material ever enters the sandbox), then a refusal.
3
+ // IAM judges server-side), then the agent token file the worker names in `ORCHESTRA_API_TOKEN_FILE` and renews
4
+ // while the agent is placed, then the `orchestra auth login` profile, then the sandbox flag the platform
5
+ // DECLARES and never infers (the request goes out BARE and the egress stamps the per-request agent
6
+ // authorization), then a refusal.
6
7
  //
7
8
  // The precedence is purely CLIENT-side. Inside a sandbox the egress stamp REPLACES whatever the request
8
9
  // carried, so an exported token is sent, then overwritten, and the call executes as the agent.
@@ -13,6 +14,7 @@
13
14
  // Resolution is ASYNC because the profile tier renews itself. The renewal lives in
14
15
  // `core/credentialSession.ts`: this module decides WHICH credential a command uses, and the session owns
15
16
  // what happens to it over time.
17
+ import { readFileSync } from "node:fs";
16
18
  import { CredentialSession } from "./credentialSession.js";
17
19
  import { DEFAULT_PROFILE_NAME, loadProfile as loadProfileFromDisk, } from "./profile.js";
18
20
  /**
@@ -28,6 +30,8 @@ export const AUTH_ENV = {
28
30
  /** Read after `baseUrl`: the platform writes this name into every machine. */
29
31
  machineBaseUrl: "PLATFORM_BASE_URL",
30
32
  token: "ORCHESTRA_API_TOKEN",
33
+ /** Set by the worker on each harness and hook process; the file holds a token it renews. */
34
+ tokenFile: "ORCHESTRA_API_TOKEN_FILE",
31
35
  organizationId: "ORCHESTRA_ORGANIZATION_ID",
32
36
  /** Presence is the declaration. */
33
37
  edgeInjected: "SFDK_AUTH_EDGE_INJECTED",
@@ -80,6 +84,26 @@ export class MissingBaseUrlError extends Error {
80
84
  this.name = "MissingBaseUrlError";
81
85
  }
82
86
  }
87
+ /** The trimmed content, or undefined when the file is missing, unreadable, empty or whitespace only. */
88
+ function tokenFromFile(path) {
89
+ let content;
90
+ try {
91
+ content = readFileSync(path, "utf8");
92
+ }
93
+ catch {
94
+ return undefined;
95
+ }
96
+ const token = content.trim();
97
+ return token === "" ? undefined : token;
98
+ }
99
+ /** A failed read mid-command keeps the last token read rather than sending the request bare. */
100
+ function fileTokenReader(path, first) {
101
+ let last = first;
102
+ return () => {
103
+ last = tokenFromFile(path) ?? last;
104
+ return last;
105
+ };
106
+ }
83
107
  /** Loopback hosts reachable over plain HTTP — the local dev-stack contract. */
84
108
  const LOOPBACK_HOSTS = new Set(["127.0.0.1", "localhost", "::1"]);
85
109
  /**
@@ -132,12 +156,18 @@ export async function resolveAuthWithWarnings(env, flags, deps = {}) {
132
156
  const profile = (deps.loadProfile ?? loadProfileFromDisk)(flags.profile);
133
157
  const baseUrl = firstPresent(flags.baseUrl, baseUrlFromEnv(env)?.value, profile?.baseUrl);
134
158
  const envToken = firstPresent(env[AUTH_ENV.token]);
159
+ const tokenFilePath = firstPresent(env[AUTH_ENV.tokenFile]);
160
+ const fileToken = envToken === undefined && tokenFilePath !== undefined ? tokenFromFile(tokenFilePath) : undefined;
135
161
  const profileToken = firstPresent(profile?.token);
136
162
  const edgeDeclared = firstPresent(env[AUTH_ENV.edgeInjected]) !== undefined;
137
163
  // Read before the provider split: a person may export it by hand under any provider.
138
164
  const sessionId = sessionIdFrom(env);
139
165
  const withSessionId = sessionId !== undefined ? { sessionId } : {};
140
- if (envToken === undefined && profileToken === undefined && !edgeDeclared) {
166
+ if (envToken === undefined && fileToken === undefined && profileToken === undefined && !edgeDeclared) {
167
+ if (tokenFilePath !== undefined) {
168
+ throw new MissingCredentialsError(`no auth provider resolved: ${AUTH_ENV.tokenFile} names ${tokenFilePath}, which the worker has not ` +
169
+ `written yet. The worker writes it once the agent is placed on this machine; try again shortly.`);
170
+ }
141
171
  throw new MissingCredentialsError(`no auth provider resolved: export ${AUTH_ENV.token}, run \`orchestra auth login\`, or run inside a host ` +
142
172
  `where the platform declares ${AUTH_ENV.edgeInjected}.`);
143
173
  }
@@ -146,6 +176,17 @@ export async function resolveAuthWithWarnings(env, flags, deps = {}) {
146
176
  }
147
177
  // Refuse before ANY network access, for every provider — the bare edge send included.
148
178
  assertSecretTransport(baseUrl);
179
+ if (fileToken !== undefined && tokenFilePath !== undefined) {
180
+ return {
181
+ auth: {
182
+ provider: "file",
183
+ token: fileTokenReader(tokenFilePath, fileToken),
184
+ baseUrl,
185
+ ...withSessionId,
186
+ },
187
+ warnings: [],
188
+ };
189
+ }
149
190
  if (envToken === undefined && profileToken === undefined) {
150
191
  // The egress stamps the authorization and the stamped identity carries the org.
151
192
  return { auth: { provider: "edge", baseUrl, ...withSessionId }, warnings: [] };
@@ -223,6 +264,9 @@ export function platformTargetFrom(auth) {
223
264
  if (auth.provider === "edge") {
224
265
  return { baseUrl: auth.baseUrl, ...sessionId };
225
266
  }
267
+ if (auth.provider === "file") {
268
+ return { baseUrl: auth.baseUrl, token: auth.token, ...sessionId };
269
+ }
226
270
  return {
227
271
  baseUrl: auth.baseUrl,
228
272
  token: auth.token,
@@ -182,6 +182,10 @@ function guidance(status, api, ctx) {
182
182
  case "env":
183
183
  return (`The token in ${AUTH_ENV.token} is not accepted. Renew that token and re-export ` +
184
184
  `${AUTH_ENV.token}; a stored login profile is not what this command used.`);
185
+ case "file":
186
+ return (`The agent token in the file ${AUTH_ENV.tokenFile} names is not accepted. The worker renews that ` +
187
+ `file, so there is nothing to renew here: the token expired before the worker renewed it, or the ` +
188
+ `agent's placement on this machine, the machine's state or the agent's status refused it.`);
185
189
  case "edge":
186
190
  return (`Authorization is stamped at the egress edge (${AUTH_ENV.edgeInjected} is declared), so there is ` +
187
191
  `no credential here to renew — the stamping path itself failed. Check the egress/identity plane.`);
@@ -50,7 +50,8 @@ export declare function withRefreshRetry(fetchApi: FetchAPI, session: Credential
50
50
  */
51
51
  export interface PlatformTarget {
52
52
  readonly baseUrl: string;
53
- readonly token?: string;
53
+ /** The bearer, or under the file provider a reader of the worker's renewed token, called before each request. */
54
+ readonly token?: string | (() => string);
54
55
  readonly organizationId?: string;
55
56
  /**
56
57
  * `token` above is the bearer as of auth resolution; the session is what keeps a bearer valid, and every
@@ -73,7 +74,7 @@ export declare function createPlatformApis(target: PlatformTarget, fetchApi: Fet
73
74
  export interface RawPlatformRequest {
74
75
  baseUrl: string;
75
76
  /** Absent for the bare edge send, exactly as for a typed command. */
76
- token?: string;
77
+ token?: string | (() => string);
77
78
  organizationId?: string;
78
79
  /** The live credentials behind `token`, when the resolution carried one. */
79
80
  session?: CredentialSession;
@@ -15,9 +15,9 @@ export interface Profile {
15
15
  /**
16
16
  * The remaining three are the first-run interview's answers, kept beside the credential because they are
17
17
  * answers about this machine that nothing should ask twice. Absent means the question was never answered;
18
- * an absent `projectId` in particular is an answer of its own — the organization's shared commons.
18
+ * an absent `teamId` in particular is an answer of its own: Shared.
19
19
  */
20
- projectId?: string;
20
+ teamId?: string;
21
21
  role?: string;
22
22
  harnesses?: string[];
23
23
  }
@@ -1,10 +1,11 @@
1
1
  import type { PlanImport, PlanResource, SynthResult } from "../../core/plan.js";
2
- import { type DesiredProject } from "../../engine/apply-core.js";
2
+ import { type TeamResolver } from "../../engine/apply-core.js";
3
3
  import type { PlatformApis } from "../../engine/client.js";
4
4
  import { type DiffEntry, type DiffReadCache } from "../../engine/diff.js";
5
5
  import { type makeTriggersApi, type TriggerAction, type TriggerReconcileOutcome } from "../../engine/trigger-reconcile.js";
6
6
  import { type WorkflowAction, type WorkflowReconcileOutcome } from "../../engine/workflow-reconcile.js";
7
7
  import { type ImageBuildSpec } from "./docker.js";
8
+ import { type HostedImages } from "./image-upload.js";
8
9
  /**
9
10
  * Taken off the module-level factory rather than restated: the preview needs the RAW adapter, because the
10
11
  * generated typed converter truncates the free-form `where`/`binding` subtrees, and a restated signature
@@ -38,9 +39,21 @@ export interface ApplyPreview {
38
39
  blockedImports: BlockedImport[];
39
40
  /** The image builds this run would perform (empty under `--no-docker-build`). */
40
41
  pendingImageBuilds: ImageBuildSpec[];
42
+ /**
43
+ * The builds among {@link pendingImageBuilds} that upload to the platform rather than push, each with the
44
+ * digest of its newest `READY` image. The new digest exists only after the build, so it is not shown.
45
+ */
46
+ hostedUploads?: HostedUpload[];
41
47
  /** True iff anything non-no-op and non-blocked would happen, or an image would be built. */
42
48
  firing: boolean;
43
49
  }
50
+ export interface HostedUpload {
51
+ tag: string;
52
+ name: string;
53
+ dockerfile: string;
54
+ /** Absent when the platform holds no `READY` image of this name yet. */
55
+ readyDigest?: string;
56
+ }
44
57
  /** What the workflow + trigger previews need — the half `orchestra fdk diff` shares with apply's pre-flight. */
45
58
  export interface PreviewCompositionOptions {
46
59
  /**
@@ -48,11 +61,14 @@ export interface PreviewCompositionOptions {
48
61
  * inputs rather than one of them reading `process.env` behind the other's back.
49
62
  */
50
63
  env: Record<string, string | undefined>;
51
- /** The factory's project placement, resolved ONCE by the caller and shared with reconcile's classifiers. */
52
- project: DesiredProject;
64
+ /**
65
+ * Each row's team, resolved over one set of team reads the caller shares with its other preview passes;
66
+ * absent, the preview builds its own.
67
+ */
68
+ teams?: TeamResolver;
53
69
  makeTriggersApi: MakeTriggersApi;
54
70
  /**
55
- * Supplying the SAME cache the plan-resource pass uses is what stops the managed agent and project rows
71
+ * Supplying the SAME cache the plan-resource pass uses is what stops the managed agent and team rows
56
72
  * being GET twice per command.
57
73
  */
58
74
  reads: DiffReadCache;
@@ -63,6 +79,8 @@ export interface ApplyPreviewOptions extends Omit<PreviewCompositionOptions, "re
63
79
  dockerBuild: boolean;
64
80
  /** Optional: apply's pre-flight passes none and gets a fresh per-run memo (see {@link DiffReadCache}). */
65
81
  reads?: DiffReadCache;
82
+ /** Absent when the plan declares no hosted image; apply reads it once and shares it with the build phase. */
83
+ hostedImages?: HostedImages;
66
84
  }
67
85
  /**
68
86
  * Reads only — no POST, no PATCH, no docker. Unresolvable reachable imports short-circuit everything else:
@@ -96,8 +114,7 @@ export declare function isFiringAction(outcome: {
96
114
  * Two lanes, because a reference reaches this pass two ways. The VERBATIM connection slots are walked
97
115
  * unconditionally — they name a connection directly, so whether the plan registers an import for that slug
98
116
  * is beside the point, and the bare spelling registers none. Everything else is demand-driven from
99
- * `plan.imports`, mirroring apply's own lazy resolution, with the build-carrying image and the factory
100
- * project as inherent roots. The exemption that falls out is the one wanted: a handle the author registered
117
+ * `plan.imports`, mirroring apply's own lazy resolution, with the build-carrying image as an inherent root. The exemption that falls out is the one wanted: a handle the author registered
101
118
  * and then referenced from nothing must not abort a valid apply.
102
119
  */
103
120
  export declare function blockedImportsOf(synth: SynthResult, apis: PlatformApis, env: Record<string, string | undefined>): Promise<BlockedImport[]>;
@@ -33,19 +33,22 @@ import { gatewayKeyRefOf } from "../../core/gateway-key-recipe.js";
33
33
  import { refToken } from "../../core/tokens.js";
34
34
  import { getBySlugOrUndefined } from "../../engine/apply-core.js";
35
35
  import { connectionIdResolver, connectionSlots, managedConnectionTokens, unmanagedConnectionSlotRefs, } from "../../engine/connection-slots.js";
36
- import { createDiffReadCache, diffResources } from "../../engine/diff.js";
36
+ import { createDiffReadCache, diffResources, previewTeamResolver, } from "../../engine/diff.js";
37
37
  import { PreflightRefusalError, resolveSecretRef } from "../../engine/preflight.js";
38
38
  import { ConnectionResolutionContext, resolveReferenceId } from "../../engine/reconcile.js";
39
39
  import { declaredPipelinesOf } from "../../engine/pipeline-reconcile.js";
40
40
  import { pipelineResolver, reconcileTriggers, } from "../../engine/trigger-reconcile.js";
41
41
  import { reconcileWorkflows, workflowResolvers, } from "../../engine/workflow-reconcile.js";
42
42
  import { imageBuildSpecs } from "./docker.js";
43
+ import { hostedImageName } from "../../constructs/references.js";
44
+ import { hostedSpecs } from "./image-upload.js";
43
45
  /**
44
46
  * Reads only — no POST, no PATCH, no docker. Unresolvable reachable imports short-circuit everything else:
45
47
  * apply aborts on them, so spending the three preview phases' reads first would be discarded work.
46
48
  */
47
49
  export async function buildApplyPreview(synth, apis, opts) {
48
50
  const pendingImageBuilds = opts.dockerBuild ? imageBuildSpecs(synth.plan) : [];
51
+ const hostedUploads = hostedUploadsOf(pendingImageBuilds, opts.hostedImages);
49
52
  const blockedImports = await blockedImportsOf(synth, apis, opts.env);
50
53
  if (blockedImports.length > 0) {
51
54
  return {
@@ -57,17 +60,19 @@ export async function buildApplyPreview(synth, apis, opts) {
57
60
  firingTriggers: [],
58
61
  blockedImports,
59
62
  pendingImageBuilds,
63
+ ...hostedUploads,
60
64
  firing: false,
61
65
  };
62
66
  }
63
67
  const reads = opts.reads ?? createDiffReadCache(apis);
68
+ const teams = opts.teams ?? (await previewTeamResolver(synth.plan, apis));
64
69
  const rows = await diffResources(synth.plan, apis, {
65
70
  env: opts.env,
66
- project: opts.project,
71
+ teams,
67
72
  reads,
68
73
  triggers: synth.triggers ?? [],
69
74
  });
70
- const { workflowActions, triggerActions } = await composePreviews(synth, apis, { ...opts, reads });
75
+ const { workflowActions, triggerActions } = await composePreviews(synth, apis, { ...opts, reads, teams });
71
76
  const blockedOwners = await blockedReferenceOwnersOf(synth, blockedImports, rows);
72
77
  const blockedResourceKeys = new Set([...blockedOwners.resources].map((owner) => `${owner.kind}\u0000${owner.slug}`));
73
78
  const firingRows = rows.filter((row) => isFiringRow(row) && !blockedResourceKeys.has(`${row.kind}\u0000${row.slug}`));
@@ -82,9 +87,26 @@ export async function buildApplyPreview(synth, apis, opts) {
82
87
  firingTriggers,
83
88
  blockedImports,
84
89
  pendingImageBuilds,
90
+ ...hostedUploads,
85
91
  firing: firingRows.length + firingWorkflows.length + firingTriggers.length + pendingImageBuilds.length > 0,
86
92
  };
87
93
  }
94
+ function hostedUploadsOf(builds, hosted) {
95
+ if (hosted === undefined || !hosted.available)
96
+ return {};
97
+ return {
98
+ hostedUploads: hostedSpecs(builds).map((spec) => {
99
+ const name = hostedImageName(spec.ref);
100
+ const ready = hosted.newestReady.get(name);
101
+ return {
102
+ tag: spec.ref,
103
+ name,
104
+ dockerfile: spec.dockerfile,
105
+ ...(ready !== undefined ? { readyDigest: ready.digest } : {}),
106
+ };
107
+ }),
108
+ };
109
+ }
88
110
  /**
89
111
  * Composed once for BOTH commands, which are contractually required to agree: the pre-flight's whole claim
90
112
  * is that it shows what `orchestra fdk diff` shows, and two copies of a preview is two answers to that question
@@ -92,9 +114,10 @@ export async function buildApplyPreview(synth, apis, opts) {
92
114
  */
93
115
  export async function composePreviews(synth, apis, opts) {
94
116
  const liveRefs = await liveRefMap(synth, opts.reads);
117
+ const teams = opts.teams ?? (await previewTeamResolver(synth.plan, apis));
95
118
  return {
96
119
  workflowActions: await previewWorkflows(synth, apis, opts, liveRefs),
97
- triggerActions: await previewTriggers(synth, apis, opts, liveRefs),
120
+ triggerActions: await previewTriggers(synth, apis, { ...opts, teams }, liveRefs),
98
121
  };
99
122
  }
100
123
  /** An EXECUTABLE pending write: not a no-op, and not something reconcile refuses. */
@@ -136,10 +159,17 @@ async function previewTriggers(synth, apis, opts, liveRefs) {
136
159
  const api = opts.makeTriggersApi(apis.target);
137
160
  // Preview-local, like the pre-flight's own: a handoff a preview collects is never printed.
138
161
  const connections = new ConnectionResolutionContext(apis, synth.plan.imports, liveRefs, opts.env);
139
- return reconcileTriggers(api, docs, async (ref) => resolveReferenceId(ref, "agent", liveRefs, apis), opts.project.state === "resolved" ? opts.project.projectId : undefined, [], {
162
+ return reconcileTriggers(api, docs, async (ref) => resolveReferenceId(ref, "agent", liveRefs, apis), async (raw, live) => {
163
+ const teams = opts.teams;
164
+ if (teams === undefined)
165
+ return undefined;
166
+ const surface = { kind: "team", slug: raw ?? "shared", op: "get" };
167
+ return teams
168
+ .desired(raw, surface, [])
169
+ .then((team) => teams.judged(team, live, surface, []))
170
+ .catch(() => undefined);
171
+ }, [], {
140
172
  dryRun: true,
141
- projectPending: opts.project.state === "pending-managed",
142
- projectRef: managedProjectSlug(synth.plan),
143
173
  resolveConnectionId: connectionIdResolver(managedConnectionTokens(synth.plan), connections),
144
174
  resolvePipeline: pipelineResolver(apis, declaredPipelinesOf(synth.plan.resources)),
145
175
  });
@@ -156,8 +186,8 @@ async function liveRefMap(synth, reads) {
156
186
  return applied;
157
187
  }
158
188
  for (const resource of synth.plan.resources) {
159
- if (resource.kind !== "agent" && resource.kind !== "project" && resource.kind !== "connection") {
160
- continue; // only agent, project and connection refs flow through the `applied` map in the previews
189
+ if (resource.kind !== "agent" && resource.kind !== "team" && resource.kind !== "connection") {
190
+ continue; // only agent, team and connection refs flow through the `applied` map in the previews
161
191
  }
162
192
  const live = await reads.read(resource.kind, resource.slug);
163
193
  if (live !== undefined) {
@@ -166,10 +196,6 @@ async function liveRefMap(synth, reads) {
166
196
  }
167
197
  return applied;
168
198
  }
169
- /** By its PLAN SLUG — the one canonical public name of a pending project. */
170
- function managedProjectSlug(plan) {
171
- return plan.resources.find((resource) => resource.kind === "project")?.slug;
172
- }
173
199
  /**
174
200
  * Shared by BOTH commands, which are contractually required to agree; they differ only in what they DO with
175
201
  * the answer. The resolver is created per call and dropped with it, so a diff run contributes no
@@ -178,8 +204,7 @@ function managedProjectSlug(plan) {
178
204
  * Two lanes, because a reference reaches this pass two ways. The VERBATIM connection slots are walked
179
205
  * unconditionally — they name a connection directly, so whether the plan registers an import for that slug
180
206
  * is beside the point, and the bare spelling registers none. Everything else is demand-driven from
181
- * `plan.imports`, mirroring apply's own lazy resolution, with the build-carrying image and the factory
182
- * project as inherent roots. The exemption that falls out is the one wanted: a handle the author registered
207
+ * `plan.imports`, mirroring apply's own lazy resolution, with the build-carrying image as an inherent root. The exemption that falls out is the one wanted: a handle the author registered
183
208
  * and then referenced from nothing must not abort a valid apply.
184
209
  */
185
210
  export async function blockedImportsOf(synth, apis, env) {
@@ -189,7 +214,6 @@ export async function blockedImportsOf(synth, apis, env) {
189
214
  return [];
190
215
  }
191
216
  const referenced = referencedRefs(synth);
192
- const managesProject = synth.plan.resources.some((resource) => resource.kind === "project");
193
217
  // ONE resolver for the whole pass, so a connection several slots reference is READ once. A preview is a
194
218
  // snapshot, so the memo lives exactly as long as the pass and never answers a later question. It is
195
219
  // preview-LOCAL rather than shared with apply's own resolver, which reads at its own time.
@@ -211,7 +235,6 @@ export async function blockedImportsOf(synth, apis, env) {
211
235
  const resolvedSlots = new Set(slotRefs);
212
236
  for (const imported of synth.plan.imports) {
213
237
  const reachable = imported.build !== undefined ||
214
- (imported.kind === "project" && !managesProject) ||
215
238
  names(referenced, imported.kind, imported.ref);
216
239
  if (!reachable) {
217
240
  continue;
@@ -326,8 +349,10 @@ export function messageOf(error) {
326
349
  */
327
350
  function readImport(apis, kind, ref) {
328
351
  switch (kind) {
329
- case "project":
330
- return () => apis.projects.getProject({ id: ref });
352
+ case "team":
353
+ return () => apis.teams.getTeam({ id: ref });
354
+ case "policy":
355
+ return () => apis.policies.getPolicy({ id: ref });
331
356
  case "environment":
332
357
  return () => apis.environments.getEnvironment({ id: ref });
333
358
  case "agent":
@@ -428,9 +453,6 @@ function asArray(value) {
428
453
  */
429
454
  function referencedRefs(synth) {
430
455
  const index = { refs: new Map(), owners: new Map(), compositionAnchors: new Map() };
431
- const implicitTriggerProjectRef = synth.plan.resources.some((resource) => resource.kind === "project")
432
- ? undefined
433
- : synth.plan.imports.find((imported) => imported.kind === "project")?.ref;
434
456
  const managedResources = new Map(synth.plan.resources.map((resource) => [refToken(resource.kind, resource.path.split("/")), resource]));
435
457
  for (const resource of synth.plan.resources) {
436
458
  if (resource.kind === "workflow")
@@ -452,7 +474,7 @@ function referencedRefs(synth) {
452
474
  collectWorkflowRefs(resource.payload, index, { type: "workflow", slug: resource.slug });
453
475
  }
454
476
  for (const doc of synth.triggers ?? []) {
455
- collectTriggerRefs(doc, index, { type: "trigger", slug: doc.slug }, implicitTriggerProjectRef);
477
+ collectTriggerRefs(doc, index, { type: "trigger", slug: doc.slug });
456
478
  }
457
479
  return index;
458
480
  }
@@ -577,12 +599,12 @@ function collectResourceRefs(resource, index, owner) {
577
599
  if (payload === undefined) {
578
600
  return;
579
601
  }
580
- // Every stamped kind carries the factory's project placement; `model-provider-key` is exempt.
581
- addRef(index, "project", payload.projectId, owner);
602
+ // Every team-able kind may name its team; a row in Shared names none.
603
+ addRef(index, "team", payload.teamId, owner);
582
604
  switch (resource.kind) {
583
605
  case "environment": {
584
- // The image, its pull credential and the mounts live inside `provisionSpec`; the egress policy below
585
- // stays at the top level.
606
+ // The image, its pull credential and the mounts live inside `provisionSpec`; the egress rules name no
607
+ // other resource.
586
608
  const launchSpec = asRecord(payload.provisionSpec);
587
609
  addRef(index, "image", launchSpec?.image, owner);
588
610
  addRef(index, "secret", launchSpec?.imagePullSecretId, owner);
@@ -592,13 +614,6 @@ function collectResourceRefs(resource, index, owner) {
592
614
  for (const mount of asArray(launchSpec?.volumeMounts)) {
593
615
  addRef(index, "volume", asRecord(mount)?.volumeId, owner);
594
616
  }
595
- for (const rule of asArray(asRecord(payload.egressPolicy)?.rules)) {
596
- for (const binding of asArray(asRecord(rule)?.credentialBindings)) {
597
- // Exactly one of the two per binding, so recording both records whichever is set.
598
- addRef(index, "secret", asRecord(binding)?.secretId, owner);
599
- addRef(index, "connection", asRecord(binding)?.connectionId, owner);
600
- }
601
- }
602
617
  return;
603
618
  }
604
619
  case "connection": {
@@ -632,9 +647,25 @@ function collectResourceRefs(resource, index, owner) {
632
647
  }
633
648
  return;
634
649
  }
650
+ case "team": {
651
+ addRef(index, "team", payload.parentTeamId, owner);
652
+ return;
653
+ }
654
+ case "role": {
655
+ for (const policyId of asArray(payload.policyIds)) {
656
+ addRef(index, "policy", policyId, owner);
657
+ }
658
+ return;
659
+ }
660
+ case "team-membership": {
661
+ for (const row of asArray(payload.rows)) {
662
+ addRef(index, "team", asRecord(row)?.teamId, owner);
663
+ }
664
+ return;
665
+ }
635
666
  default:
636
- // These kinds carry no payload reference beyond the project stamp above; the gateway-key pair's
637
- // reverse ownership-only edge is added by the caller.
667
+ // These kinds carry no payload reference beyond the team above; the gateway-key pair's reverse
668
+ // ownership-only edge is added by the caller.
638
669
  return;
639
670
  }
640
671
  }
@@ -654,16 +685,12 @@ function collectWorkflowRefs(workflow, index, owner) {
654
685
  }
655
686
  }
656
687
  }
657
- /**
658
- * `on.connection` is a verbatim slot resolved elsewhere. The factory project is an IMPLICIT edge — reconcile
659
- * stamps it on every trigger though the document has no project field — and not a composition anchor, because
660
- * the preview receives the descriptor out of band rather than re-resolving this import.
661
- */
662
- function collectTriggerRefs(doc, index, owner, implicitProjectRef) {
688
+ /** `on.connection` is a verbatim slot resolved elsewhere. */
689
+ function collectTriggerRefs(doc, index, owner) {
663
690
  const trigger = asRecord(doc);
664
691
  if (trigger === undefined) {
665
692
  return;
666
693
  }
667
- addRef(index, "project", implicitProjectRef, owner);
694
+ addRef(index, "team", trigger.teamId, owner);
668
695
  addRef(index, "agent", asRecord(trigger.target)?.agent, owner, true);
669
696
  }
@@ -9,7 +9,7 @@
9
9
  // terminal.
10
10
  import { describeSource, preApprovalLevers, REQUIRE_APPROVAL_ENV, typedAtTerminalRemedy, } from "../core/approval-policy.js";
11
11
  import { NOTHING_WAS_WRITTEN } from "../core/prompts.js";
12
- import { describeProjectIdentityRefusal } from "../../engine/apply-core.js";
12
+ import { describeTeamIdentityRefusal } from "../../engine/apply-core.js";
13
13
  import { containsCommandLineRecipe, pendingCredentialWrite } from "../../engine/secrets-apply.js";
14
14
  import { describeTargetOrganization, } from "../../engine/reconcile.js";
15
15
  import { isFiringRow } from "./apply-preview.js";
@@ -37,8 +37,16 @@ export function renderApplyPreview(preview, io) {
37
37
  for (const outcome of preview.firingTriggers) {
38
38
  io.out(` ${outcome.action.padEnd(19)} trigger ${outcome.slug}`);
39
39
  }
40
+ const uploads = new Map((preview.hostedUploads ?? []).map((upload) => [upload.tag, upload]));
40
41
  for (const spec of preview.pendingImageBuilds) {
41
- io.out(` ${"image build".padEnd(19)} ${spec.ref} (${spec.dockerfile})`);
42
+ const upload = uploads.get(spec.ref);
43
+ if (upload === undefined) {
44
+ io.out(` ${"image build".padEnd(19)} ${spec.ref} (${spec.dockerfile})`);
45
+ continue;
46
+ }
47
+ const now = upload.readyDigest !== undefined ? `newest READY ${upload.readyDigest}` : "no READY image of this name yet";
48
+ io.out(` ${"image upload".padEnd(19)} ${upload.name} from ${upload.tag} (${upload.dockerfile}); ${now}; ` +
49
+ `the new digest is known only after the build`);
42
50
  }
43
51
  for (const line of renderSensitiveRows(preview.rows, "will")) {
44
52
  io.out(line);
@@ -61,7 +69,7 @@ export function renderApplyPreview(preview, io) {
61
69
  }
62
70
  }
63
71
  /**
64
- * A project-identity row goes through the shared formatter, and every other blocked row keeps its `details`
72
+ * A team-identity row goes through the shared formatter, and every other blocked row keeps its `details`
65
73
  * — the classifier's own value-free note, which is the difference between "will fail — unset-source" and a
66
74
  * sentence that says which variable to export. The surface standing in front of the write must not say less
67
75
  * than the read-only preview.
@@ -69,7 +77,7 @@ export function renderApplyPreview(preview, io) {
69
77
  function blockedRowText(entry) {
70
78
  if (entry.refusal !== undefined) {
71
79
  // The same call the error and `renderDiff` make, so all three word one conflict exactly one way.
72
- return `will fail — ${describeProjectIdentityRefusal(entry.refusal)}`;
80
+ return `will fail — ${describeTeamIdentityRefusal(entry.refusal)}`;
73
81
  }
74
82
  return `will fail — ${entry.blocked}: ${entry.kind} ${entry.slug}${detailsOf(entry)}`;
75
83
  }