@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.
- package/README.md +1 -1
- package/dist/artifacts/prelude.js +10 -1
- package/dist/cli/api/execute.js +7 -7
- package/dist/cli/core/profile.d.ts +2 -2
- package/dist/cli/factory/apply-preview.d.ts +23 -6
- package/dist/cli/factory/apply-preview.js +70 -43
- package/dist/cli/factory/apply-render.js +12 -4
- package/dist/cli/factory/apply.d.ts +7 -2
- package/dist/cli/factory/apply.js +86 -29
- package/dist/cli/factory/diff.js +20 -12
- package/dist/cli/factory/image-upload.d.ts +90 -0
- package/dist/cli/factory/image-upload.js +489 -0
- package/dist/cli/factory/synth.d.ts +7 -0
- package/dist/cli/factory/synth.js +35 -0
- package/dist/cli/firstRun.d.ts +2 -2
- package/dist/cli/firstRun.js +12 -13
- package/dist/cli/main.d.ts +1 -1
- package/dist/cli/main.js +4 -3
- package/dist/cli/upload.d.ts +3 -1
- package/dist/cli/upload.js +9 -2
- package/dist/constructs/agent.d.ts +9 -1
- package/dist/constructs/agent.js +7 -0
- package/dist/constructs/compute-provider.js +2 -2
- package/dist/constructs/connection.d.ts +22 -16
- package/dist/constructs/connection.js +29 -92
- package/dist/constructs/connector.d.ts +3 -1
- package/dist/constructs/connector.js +2 -0
- package/dist/constructs/egress-preset.d.ts +7 -52
- package/dist/constructs/egress-preset.js +7 -91
- package/dist/constructs/environment.d.ts +47 -70
- package/dist/constructs/environment.js +103 -213
- package/dist/constructs/gateway-key.d.ts +4 -1
- package/dist/constructs/gateway-key.js +4 -3
- package/dist/constructs/interfaces.d.ts +10 -2
- package/dist/constructs/model-provider-key.js +2 -3
- package/dist/constructs/pipeline.d.ts +5 -2
- package/dist/constructs/pipeline.js +4 -0
- package/dist/constructs/references.d.ts +4 -0
- package/dist/constructs/references.js +20 -0
- package/dist/constructs/role.d.ts +32 -0
- package/dist/constructs/role.js +77 -0
- package/dist/constructs/rules.d.ts +4 -4
- package/dist/constructs/rules.js +3 -3
- package/dist/constructs/secret.d.ts +36 -13
- package/dist/constructs/secret.js +110 -14
- package/dist/constructs/service-account.d.ts +12 -0
- package/dist/constructs/service-account.js +23 -0
- package/dist/constructs/skill.d.ts +3 -1
- package/dist/constructs/skill.js +2 -0
- package/dist/constructs/team-membership.d.ts +43 -0
- package/dist/constructs/team-membership.js +59 -0
- package/dist/constructs/team.d.ts +40 -0
- package/dist/constructs/team.js +107 -0
- package/dist/constructs/trigger.d.ts +7 -4
- package/dist/constructs/trigger.js +4 -0
- package/dist/constructs/workflow.d.ts +1 -1
- package/dist/core/factory.d.ts +0 -7
- package/dist/core/factory.js +15 -53
- package/dist/core/gateway-key-recipe.js +23 -2
- package/dist/core/host-pattern.d.ts +5 -0
- package/dist/core/host-pattern.js +14 -0
- package/dist/core/labels.d.ts +1 -1
- package/dist/core/labels.js +1 -1
- package/dist/core/outbound-warning.d.ts +2 -2
- package/dist/core/outbound-warning.js +52 -41
- package/dist/core/plan.d.ts +14 -11
- package/dist/core/plan.js +12 -11
- package/dist/engine/apply-core.d.ts +71 -67
- package/dist/engine/apply-core.js +120 -95
- package/dist/engine/client.d.ts +12 -4
- package/dist/engine/client.js +8 -3
- package/dist/engine/compute-provider-reconcile.js +1 -1
- package/dist/engine/condition-references.d.ts +2 -2
- package/dist/engine/condition-references.js +6 -6
- package/dist/engine/connection-install-link-reconcile.d.ts +4 -3
- package/dist/engine/connection-install-link-reconcile.js +35 -28
- package/dist/engine/diff.d.ts +12 -14
- package/dist/engine/diff.js +247 -113
- package/dist/engine/gateway-key-reconcile.d.ts +12 -9
- package/dist/engine/gateway-key-reconcile.js +43 -36
- package/dist/engine/model-provider-key-reconcile.js +2 -2
- package/dist/engine/pipeline-reconcile.d.ts +8 -9
- package/dist/engine/pipeline-reconcile.js +14 -10
- package/dist/engine/reconcile.d.ts +7 -21
- package/dist/engine/reconcile.js +115 -215
- package/dist/engine/refusals.d.ts +14 -31
- package/dist/engine/refusals.js +32 -81
- package/dist/engine/role-membership-reconcile.d.ts +19 -0
- package/dist/engine/role-membership-reconcile.js +276 -0
- package/dist/engine/secrets-apply.d.ts +18 -4
- package/dist/engine/secrets-apply.js +39 -4
- package/dist/engine/trigger-reconcile.d.ts +22 -23
- package/dist/engine/trigger-reconcile.js +43 -65
- package/dist/engine/workflow-reconcile.d.ts +2 -2
- package/dist/engine/workflow-reconcile.js +5 -5
- package/dist/generated/cli-commands.json +15398 -11771
- package/dist/generated/cli-dispatch.d.ts +4 -3
- package/dist/generated/cli-dispatch.js +76 -62
- package/dist/index.d.ts +12 -7
- package/dist/index.js +5 -3
- package/dist/metrics/metric.d.ts +3 -3
- package/dist/metrics/metric.js +1 -1
- package/docs/REFERENCE.md +84 -89
- package/node_modules/@orchestraworks/client/dist/apis/AgentsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/AgentsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/ArtifactsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/ArtifactsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/ConnectionInstallLinksApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/ConnectionInstallLinksApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/ConnectionsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/ConnectionsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/EnvironmentsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/EnvironmentsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/FilesApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/FilesApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/ImagesApi.d.ts +88 -0
- package/node_modules/@orchestraworks/client/dist/apis/ImagesApi.js +239 -0
- package/node_modules/@orchestraworks/client/dist/apis/MetricsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/MetricsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/OrganizationsApi.d.ts +1 -15
- package/node_modules/@orchestraworks/client/dist/apis/OrganizationsApi.js +3 -49
- package/node_modules/@orchestraworks/client/dist/apis/PipelinesApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/PipelinesApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/ProviderConnectionIntentsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/ProviderConnectionIntentsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/SecretsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/SecretsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/SessionsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/SessionsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/SkillsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/SkillsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/TeamMembershipsApi.d.ts +96 -0
- package/node_modules/@orchestraworks/client/dist/apis/{GroupsApi.js → TeamMembershipsApi.js} +62 -59
- package/node_modules/@orchestraworks/client/dist/apis/TeamsApi.d.ts +93 -0
- package/node_modules/@orchestraworks/client/dist/apis/{ProjectsApi.js → TeamsApi.js} +55 -55
- package/node_modules/@orchestraworks/client/dist/apis/TriggersApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/TriggersApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/UsersApi.d.ts +0 -15
- package/node_modules/@orchestraworks/client/dist/apis/UsersApi.js +0 -49
- package/node_modules/@orchestraworks/client/dist/apis/VolumesApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/VolumesApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/WorkItemsApi.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/WorkItemsApi.js +4 -4
- package/node_modules/@orchestraworks/client/dist/apis/WorkflowsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/apis/WorkflowsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/apis/index.d.ts +3 -2
- package/node_modules/@orchestraworks/client/dist/apis/index.js +3 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/AgentsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/AgentsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/ArtifactsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/ArtifactsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionInstallLinksApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionInstallLinksApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/ConnectionsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/EnvironmentsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/EnvironmentsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/FilesApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/FilesApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/ImagesApi.d.ts +88 -0
- package/node_modules/@orchestraworks/client/dist/esm/apis/ImagesApi.js +235 -0
- package/node_modules/@orchestraworks/client/dist/esm/apis/MetricsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/MetricsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/OrganizationsApi.d.ts +1 -15
- package/node_modules/@orchestraworks/client/dist/esm/apis/OrganizationsApi.js +3 -49
- package/node_modules/@orchestraworks/client/dist/esm/apis/PipelinesApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/PipelinesApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/ProviderConnectionIntentsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/ProviderConnectionIntentsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/SecretsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/SecretsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/SessionsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/SessionsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/SkillsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/SkillsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/TeamMembershipsApi.d.ts +96 -0
- package/node_modules/@orchestraworks/client/dist/esm/apis/{GroupsApi.js → TeamMembershipsApi.js} +60 -57
- package/node_modules/@orchestraworks/client/dist/esm/apis/TeamsApi.d.ts +93 -0
- package/node_modules/@orchestraworks/client/dist/esm/apis/{ProjectsApi.js → TeamsApi.js} +53 -53
- package/node_modules/@orchestraworks/client/dist/esm/apis/TriggersApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/TriggersApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/UsersApi.d.ts +0 -15
- package/node_modules/@orchestraworks/client/dist/esm/apis/UsersApi.js +0 -49
- package/node_modules/@orchestraworks/client/dist/esm/apis/VolumesApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/VolumesApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/WorkItemsApi.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/WorkItemsApi.js +4 -4
- package/node_modules/@orchestraworks/client/dist/esm/apis/WorkflowsApi.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/apis/WorkflowsApi.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/index.d.ts +3 -2
- package/node_modules/@orchestraworks/client/dist/esm/apis/index.js +3 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/AddArtifactVersionRequest.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/Agent.d.ts +9 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/Agent.js +3 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ApiErrorDetail.d.ts +9 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/ApiErrorDetail.js +5 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/Artifact.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Artifact.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ArtifactSummary.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ArtifactSummary.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/AssignAction.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/AssignAction.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/AssignWorkItemRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/AssignWorkItemRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ComputeProviderTarget.d.ts +6 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/ComputeProviderTarget.js +2 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/Connection.d.ts +16 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/Connection.js +8 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ConnectionInstallLink.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ConnectionInstallLink.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Connector.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Connector.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateAgentRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateAgentRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateArtifactRequest.d.ts +4 -4
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateArtifactRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionInstallLinkRequest.d.ts +3 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionInstallLinkRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionRequest.d.ts +8 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectionRequest.js +4 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectorRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateConnectorRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateDashboardRequest.d.ts +3 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateDashboardRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateEnvironmentRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateEnvironmentRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateFileRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateFileRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateGatewayKeyRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateGatewayKeyRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateImageRequest.d.ts +38 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/{GroupMemberAgent.js → CreateImageRequest.js} +12 -16
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateMachineRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateMachineRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateMetricRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateMetricRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationInvitationRequest.d.ts +4 -4
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationInvitationRequest.js +3 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationMembershipRequest.d.ts +1 -8
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationMembershipRequest.js +0 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/CreatePipelineRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreatePipelineRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateProviderConnectionIntentRequest.d.ts +3 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateProviderConnectionIntentRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateSecretRequest.d.ts +8 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateSecretRequest.js +4 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateSessionRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateSessionRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateSkillRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateSkillRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamMembershipRequest.d.ts +65 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamMembershipRequest.js +61 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamRequest.d.ts +80 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateTeamRequest.js +64 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateTriggerRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateTriggerRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateVolumeRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateVolumeRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateWorkflowRequest.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/Dashboard.d.ts +8 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Dashboard.js +6 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/DashboardChart.d.ts +45 -4
- package/node_modules/@orchestraworks/client/dist/esm/models/DashboardChart.js +29 -5
- package/node_modules/@orchestraworks/client/dist/esm/models/DashboardChartQuery.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/Delivery.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Delivery.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/EgressPolicyRule.d.ts +0 -13
- package/node_modules/@orchestraworks/client/dist/esm/models/EgressPolicyRule.js +0 -5
- package/node_modules/@orchestraworks/client/dist/esm/models/EntitlementTeamUsage.d.ts +58 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/EntitlementTeamUsage.js +64 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/Environment.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Environment.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/EnvironmentEgressPolicy.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/GatewayKey.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/GatewayKey.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Image.d.ts +113 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/Image.js +91 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/InboundWebhookEdge.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/InboundWebhookEdge.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/InvitationTeamMembership.d.ts +44 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/InvitationTeamMembership.js +47 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/MachineEgressPolicyDiagnostics.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/MachineEgressRuleDiagnostics.d.ts +0 -6
- package/node_modules/@orchestraworks/client/dist/esm/models/MachineEgressRuleDiagnostics.js +0 -4
- package/node_modules/@orchestraworks/client/dist/esm/models/MachineView.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/MachineView.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/MessageWorkItemRequest.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/Metric.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Metric.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/MetricValue.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/MetricValue.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ModelFile.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ModelFile.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationEntitlements.d.ts +7 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationEntitlements.js +5 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationInvitation.d.ts +4 -4
- package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationInvitation.js +4 -4
- package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationMembership.d.ts +5 -5
- package/node_modules/@orchestraworks/client/dist/esm/models/OrganizationMembership.js +4 -4
- package/node_modules/@orchestraworks/client/dist/esm/models/PageImage.d.ts +51 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/{PageProject.js → PageImage.js} +11 -11
- package/node_modules/@orchestraworks/client/dist/esm/models/PageTeam.d.ts +51 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/{PageGroupSummary.js → PageTeam.js} +11 -11
- package/node_modules/@orchestraworks/client/dist/esm/models/PageTeamMembership.d.ts +51 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/PageTeamMembership.js +56 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/Pipeline.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Pipeline.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/PolicyAssignment.d.ts +8 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/PolicyAssignment.js +4 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ProviderConnectionIntent.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ProviderConnectionIntent.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ReferenceSubject.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/ReferenceSubject.js +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/Role.d.ts +6 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/Role.js +4 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/Secret.d.ts +16 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/Secret.js +8 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/ServiceAccount.d.ts +7 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/ServiceAccount.js +1 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/Session.d.ts +3 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Session.js +3 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/SessionSummary.d.ts +3 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/SessionSummary.js +3 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Skill.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Skill.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/SnapshotAnchor.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/Team.d.ts +104 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/{GroupSummary.js → Team.js} +25 -15
- package/node_modules/@orchestraworks/client/dist/esm/models/TeamMembership.d.ts +83 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/TeamMembership.js +77 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/Trigger.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Trigger.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/TriggerTarget.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateArtifactRequest.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateConnectionRequest.d.ts +6 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateConnectionRequest.js +2 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationInvitationRequest.d.ts +4 -4
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationInvitationRequest.js +3 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationMembershipRequest.d.ts +1 -8
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateOrganizationMembershipRequest.js +0 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateSecretRequest.d.ts +6 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateSecretRequest.js +2 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamMembershipRequest.d.ts +47 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamMembershipRequest.js +51 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamRequest.d.ts +68 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateTeamRequest.js +58 -0
- package/node_modules/@orchestraworks/client/dist/esm/models/UserGrant.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/UserGrant.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Volume.d.ts +10 -3
- package/node_modules/@orchestraworks/client/dist/esm/models/Volume.js +4 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemActivity.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemAssignment.d.ts +7 -7
- package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemAssignment.js +5 -5
- package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemDraftAssignment.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/WorkItemDraftAssignment.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Workflow.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/Workflow.js +2 -2
- package/node_modules/@orchestraworks/client/dist/esm/models/index.d.ts +13 -17
- package/node_modules/@orchestraworks/client/dist/esm/models/index.js +13 -17
- package/node_modules/@orchestraworks/client/dist/models/AddArtifactVersionRequest.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/Agent.d.ts +9 -3
- package/node_modules/@orchestraworks/client/dist/models/Agent.js +3 -2
- package/node_modules/@orchestraworks/client/dist/models/ApiErrorDetail.d.ts +9 -1
- package/node_modules/@orchestraworks/client/dist/models/ApiErrorDetail.js +5 -1
- package/node_modules/@orchestraworks/client/dist/models/Artifact.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Artifact.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/ArtifactSummary.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/ArtifactSummary.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/AssignAction.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/AssignAction.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/AssignWorkItemRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/AssignWorkItemRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/ComputeProviderTarget.d.ts +6 -0
- package/node_modules/@orchestraworks/client/dist/models/ComputeProviderTarget.js +2 -0
- package/node_modules/@orchestraworks/client/dist/models/Connection.d.ts +16 -3
- package/node_modules/@orchestraworks/client/dist/models/Connection.js +8 -2
- package/node_modules/@orchestraworks/client/dist/models/ConnectionInstallLink.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/ConnectionInstallLink.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Connector.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Connector.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateAgentRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateAgentRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateArtifactRequest.d.ts +4 -4
- package/node_modules/@orchestraworks/client/dist/models/CreateArtifactRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateConnectionInstallLinkRequest.d.ts +3 -3
- package/node_modules/@orchestraworks/client/dist/models/CreateConnectionInstallLinkRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateConnectionRequest.d.ts +8 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateConnectionRequest.js +4 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateConnectorRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateConnectorRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateDashboardRequest.d.ts +3 -3
- package/node_modules/@orchestraworks/client/dist/models/CreateDashboardRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateEnvironmentRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateEnvironmentRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateFileRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateFileRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateGatewayKeyRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateGatewayKeyRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateImageRequest.d.ts +38 -0
- package/node_modules/@orchestraworks/client/dist/models/CreateImageRequest.js +54 -0
- package/node_modules/@orchestraworks/client/dist/models/CreateMachineRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateMachineRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateMetricRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateMetricRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationInvitationRequest.d.ts +4 -4
- package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationInvitationRequest.js +3 -3
- package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationMembershipRequest.d.ts +1 -8
- package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationMembershipRequest.js +0 -3
- package/node_modules/@orchestraworks/client/dist/models/CreatePipelineRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreatePipelineRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateProviderConnectionIntentRequest.d.ts +3 -3
- package/node_modules/@orchestraworks/client/dist/models/CreateProviderConnectionIntentRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateSecretRequest.d.ts +8 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateSecretRequest.js +4 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateSessionRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateSessionRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateSkillRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateSkillRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateTeamMembershipRequest.d.ts +65 -0
- package/node_modules/@orchestraworks/client/dist/models/CreateTeamMembershipRequest.js +69 -0
- package/node_modules/@orchestraworks/client/dist/models/CreateTeamRequest.d.ts +80 -0
- package/node_modules/@orchestraworks/client/dist/models/CreateTeamRequest.js +72 -0
- package/node_modules/@orchestraworks/client/dist/models/CreateTriggerRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateTriggerRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateVolumeRequest.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateVolumeRequest.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/CreateWorkflowRequest.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/Dashboard.d.ts +8 -2
- package/node_modules/@orchestraworks/client/dist/models/Dashboard.js +6 -2
- package/node_modules/@orchestraworks/client/dist/models/DashboardChart.d.ts +45 -4
- package/node_modules/@orchestraworks/client/dist/models/DashboardChart.js +30 -6
- package/node_modules/@orchestraworks/client/dist/models/DashboardChartQuery.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/Delivery.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Delivery.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/EgressPolicyRule.d.ts +0 -13
- package/node_modules/@orchestraworks/client/dist/models/EgressPolicyRule.js +0 -5
- package/node_modules/@orchestraworks/client/dist/models/EntitlementTeamUsage.d.ts +58 -0
- package/node_modules/@orchestraworks/client/dist/models/EntitlementTeamUsage.js +72 -0
- package/node_modules/@orchestraworks/client/dist/models/Environment.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Environment.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/EnvironmentEgressPolicy.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/GatewayKey.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/GatewayKey.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Image.d.ts +113 -0
- package/node_modules/@orchestraworks/client/dist/models/Image.js +99 -0
- package/node_modules/@orchestraworks/client/dist/models/InboundWebhookEdge.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/InboundWebhookEdge.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/InvitationTeamMembership.d.ts +44 -0
- package/node_modules/@orchestraworks/client/dist/models/InvitationTeamMembership.js +54 -0
- package/node_modules/@orchestraworks/client/dist/models/MachineEgressPolicyDiagnostics.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/MachineEgressRuleDiagnostics.d.ts +0 -6
- package/node_modules/@orchestraworks/client/dist/models/MachineEgressRuleDiagnostics.js +0 -4
- package/node_modules/@orchestraworks/client/dist/models/MachineView.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/MachineView.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/MessageWorkItemRequest.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/Metric.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Metric.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/MetricValue.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/MetricValue.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/ModelFile.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/ModelFile.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/OrganizationEntitlements.d.ts +7 -0
- package/node_modules/@orchestraworks/client/dist/models/OrganizationEntitlements.js +5 -0
- package/node_modules/@orchestraworks/client/dist/models/OrganizationInvitation.d.ts +4 -4
- package/node_modules/@orchestraworks/client/dist/models/OrganizationInvitation.js +4 -4
- package/node_modules/@orchestraworks/client/dist/models/OrganizationMembership.d.ts +5 -5
- package/node_modules/@orchestraworks/client/dist/models/OrganizationMembership.js +4 -4
- package/node_modules/@orchestraworks/client/dist/models/PageImage.d.ts +51 -0
- package/node_modules/@orchestraworks/client/dist/models/{PageProject.js → PageImage.js} +16 -16
- package/node_modules/@orchestraworks/client/dist/models/PageTeam.d.ts +51 -0
- package/node_modules/@orchestraworks/client/dist/models/{PageGroupSummary.js → PageTeam.js} +16 -16
- package/node_modules/@orchestraworks/client/dist/models/PageTeamMembership.d.ts +51 -0
- package/node_modules/@orchestraworks/client/dist/models/PageTeamMembership.js +63 -0
- package/node_modules/@orchestraworks/client/dist/models/Pipeline.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Pipeline.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/PolicyAssignment.d.ts +8 -2
- package/node_modules/@orchestraworks/client/dist/models/PolicyAssignment.js +4 -2
- package/node_modules/@orchestraworks/client/dist/models/ProviderConnectionIntent.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/ProviderConnectionIntent.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/ReferenceSubject.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/ReferenceSubject.js +1 -1
- package/node_modules/@orchestraworks/client/dist/models/Role.d.ts +6 -0
- package/node_modules/@orchestraworks/client/dist/models/Role.js +4 -0
- package/node_modules/@orchestraworks/client/dist/models/Secret.d.ts +16 -3
- package/node_modules/@orchestraworks/client/dist/models/Secret.js +8 -2
- package/node_modules/@orchestraworks/client/dist/models/ServiceAccount.d.ts +7 -1
- package/node_modules/@orchestraworks/client/dist/models/ServiceAccount.js +1 -0
- package/node_modules/@orchestraworks/client/dist/models/Session.d.ts +3 -2
- package/node_modules/@orchestraworks/client/dist/models/Session.js +3 -2
- package/node_modules/@orchestraworks/client/dist/models/SessionSummary.d.ts +3 -2
- package/node_modules/@orchestraworks/client/dist/models/SessionSummary.js +3 -2
- package/node_modules/@orchestraworks/client/dist/models/Skill.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Skill.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/SnapshotAnchor.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/Team.d.ts +104 -0
- package/node_modules/@orchestraworks/client/dist/models/{GroupSummary.js → Team.js} +31 -21
- package/node_modules/@orchestraworks/client/dist/models/TeamMembership.d.ts +83 -0
- package/node_modules/@orchestraworks/client/dist/models/TeamMembership.js +85 -0
- package/node_modules/@orchestraworks/client/dist/models/Trigger.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Trigger.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/TriggerTarget.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/UpdateArtifactRequest.d.ts +1 -1
- package/node_modules/@orchestraworks/client/dist/models/UpdateConnectionRequest.d.ts +6 -0
- package/node_modules/@orchestraworks/client/dist/models/UpdateConnectionRequest.js +2 -0
- package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationInvitationRequest.d.ts +4 -4
- package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationInvitationRequest.js +3 -3
- package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationMembershipRequest.d.ts +1 -8
- package/node_modules/@orchestraworks/client/dist/models/UpdateOrganizationMembershipRequest.js +0 -3
- package/node_modules/@orchestraworks/client/dist/models/UpdateSecretRequest.d.ts +6 -0
- package/node_modules/@orchestraworks/client/dist/models/UpdateSecretRequest.js +2 -0
- package/node_modules/@orchestraworks/client/dist/models/UpdateTeamMembershipRequest.d.ts +47 -0
- package/node_modules/@orchestraworks/client/dist/models/UpdateTeamMembershipRequest.js +59 -0
- package/node_modules/@orchestraworks/client/dist/models/UpdateTeamRequest.d.ts +68 -0
- package/node_modules/@orchestraworks/client/dist/models/UpdateTeamRequest.js +66 -0
- package/node_modules/@orchestraworks/client/dist/models/UserGrant.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/UserGrant.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Volume.d.ts +10 -3
- package/node_modules/@orchestraworks/client/dist/models/Volume.js +4 -2
- package/node_modules/@orchestraworks/client/dist/models/WorkItemActivity.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/WorkItemAssignment.d.ts +7 -7
- package/node_modules/@orchestraworks/client/dist/models/WorkItemAssignment.js +5 -5
- package/node_modules/@orchestraworks/client/dist/models/WorkItemDraftAssignment.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/WorkItemDraftAssignment.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Workflow.d.ts +2 -2
- package/node_modules/@orchestraworks/client/dist/models/Workflow.js +2 -2
- package/node_modules/@orchestraworks/client/dist/models/index.d.ts +13 -17
- package/node_modules/@orchestraworks/client/dist/models/index.js +13 -17
- package/node_modules/@orchestraworks/client/package.json +1 -1
- package/package.json +4 -4
- package/skills/orchestra/SKILL.md +74 -64
- package/skills/orchestra-fdk/references/authoring.md +75 -39
- package/skills/orchestra-fdk/references/environment.md +214 -33
- package/skills/orchestra-fdk/references/troubleshooting.md +8 -7
- package/templates/bug-fix/main.ts +6 -1
- package/templates/engineering-team/README.md +10 -7
- package/templates/engineering-team/agents/engineer-agent.md +38 -16
- package/templates/engineering-team/lib/environment.ts +15 -3
- package/templates/engineering-team/main.ts +1 -1
- package/templates/todo-factory/main.ts +6 -1
- package/dist/constructs/project.d.ts +0 -33
- package/dist/constructs/project.js +0 -82
- package/node_modules/@orchestraworks/client/dist/apis/GroupsApi.d.ts +0 -95
- package/node_modules/@orchestraworks/client/dist/apis/ProjectsApi.d.ts +0 -93
- package/node_modules/@orchestraworks/client/dist/esm/apis/GroupsApi.d.ts +0 -95
- package/node_modules/@orchestraworks/client/dist/esm/apis/ProjectsApi.d.ts +0 -93
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateGroupRequest.d.ts +0 -82
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateGroupRequest.js +0 -74
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationRequest.d.ts +0 -53
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateOrganizationRequest.js +0 -50
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateProjectRequest.d.ts +0 -52
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateProjectRequest.js +0 -49
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateUserRequest.d.ts +0 -46
- package/node_modules/@orchestraworks/client/dist/esm/models/CreateUserRequest.js +0 -47
- package/node_modules/@orchestraworks/client/dist/esm/models/CredentialBinding.d.ts +0 -57
- package/node_modules/@orchestraworks/client/dist/esm/models/CredentialBinding.js +0 -50
- package/node_modules/@orchestraworks/client/dist/esm/models/Group.d.ts +0 -106
- package/node_modules/@orchestraworks/client/dist/esm/models/Group.js +0 -92
- package/node_modules/@orchestraworks/client/dist/esm/models/GroupMember.d.ts +0 -40
- package/node_modules/@orchestraworks/client/dist/esm/models/GroupMember.js +0 -45
- package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberAgent.d.ts +0 -44
- package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberReference.d.ts +0 -38
- package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberReference.js +0 -43
- package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberUser.d.ts +0 -38
- package/node_modules/@orchestraworks/client/dist/esm/models/GroupMemberUser.js +0 -45
- package/node_modules/@orchestraworks/client/dist/esm/models/GroupSummary.d.ts +0 -86
- package/node_modules/@orchestraworks/client/dist/esm/models/PageGroupSummary.d.ts +0 -51
- package/node_modules/@orchestraworks/client/dist/esm/models/PageProject.d.ts +0 -51
- package/node_modules/@orchestraworks/client/dist/esm/models/Project.d.ts +0 -76
- package/node_modules/@orchestraworks/client/dist/esm/models/Project.js +0 -69
- package/node_modules/@orchestraworks/client/dist/esm/models/RoleAssignment.d.ts +0 -38
- package/node_modules/@orchestraworks/client/dist/esm/models/RoleAssignment.js +0 -45
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateGroupRequest.d.ts +0 -70
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateGroupRequest.js +0 -60
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateProjectRequest.d.ts +0 -46
- package/node_modules/@orchestraworks/client/dist/esm/models/UpdateProjectRequest.js +0 -45
- package/node_modules/@orchestraworks/client/dist/models/CreateGroupRequest.d.ts +0 -82
- package/node_modules/@orchestraworks/client/dist/models/CreateGroupRequest.js +0 -82
- package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationRequest.d.ts +0 -53
- package/node_modules/@orchestraworks/client/dist/models/CreateOrganizationRequest.js +0 -57
- package/node_modules/@orchestraworks/client/dist/models/CreateProjectRequest.d.ts +0 -52
- package/node_modules/@orchestraworks/client/dist/models/CreateProjectRequest.js +0 -56
- package/node_modules/@orchestraworks/client/dist/models/CreateUserRequest.d.ts +0 -46
- package/node_modules/@orchestraworks/client/dist/models/CreateUserRequest.js +0 -54
- package/node_modules/@orchestraworks/client/dist/models/CredentialBinding.d.ts +0 -57
- package/node_modules/@orchestraworks/client/dist/models/CredentialBinding.js +0 -57
- package/node_modules/@orchestraworks/client/dist/models/Group.d.ts +0 -106
- package/node_modules/@orchestraworks/client/dist/models/Group.js +0 -100
- package/node_modules/@orchestraworks/client/dist/models/GroupMember.d.ts +0 -40
- package/node_modules/@orchestraworks/client/dist/models/GroupMember.js +0 -52
- package/node_modules/@orchestraworks/client/dist/models/GroupMemberAgent.d.ts +0 -44
- package/node_modules/@orchestraworks/client/dist/models/GroupMemberAgent.js +0 -58
- package/node_modules/@orchestraworks/client/dist/models/GroupMemberReference.d.ts +0 -38
- package/node_modules/@orchestraworks/client/dist/models/GroupMemberReference.js +0 -50
- package/node_modules/@orchestraworks/client/dist/models/GroupMemberUser.d.ts +0 -38
- package/node_modules/@orchestraworks/client/dist/models/GroupMemberUser.js +0 -52
- package/node_modules/@orchestraworks/client/dist/models/GroupSummary.d.ts +0 -86
- package/node_modules/@orchestraworks/client/dist/models/PageGroupSummary.d.ts +0 -51
- package/node_modules/@orchestraworks/client/dist/models/PageProject.d.ts +0 -51
- package/node_modules/@orchestraworks/client/dist/models/Project.d.ts +0 -76
- package/node_modules/@orchestraworks/client/dist/models/Project.js +0 -76
- package/node_modules/@orchestraworks/client/dist/models/RoleAssignment.d.ts +0 -38
- package/node_modules/@orchestraworks/client/dist/models/RoleAssignment.js +0 -52
- package/node_modules/@orchestraworks/client/dist/models/UpdateGroupRequest.d.ts +0 -70
- package/node_modules/@orchestraworks/client/dist/models/UpdateGroupRequest.js +0 -68
- package/node_modules/@orchestraworks/client/dist/models/UpdateProjectRequest.d.ts +0 -46
- package/node_modules/@orchestraworks/client/dist/models/UpdateProjectRequest.js +0 -52
|
@@ -128,12 +128,22 @@ export declare function reconcileInjection(desired: InjectionRecipe | undefined,
|
|
|
128
128
|
export declare function metadataInjectionChange(desired: InjectionRecipe | undefined, live: InjectionRecipe | undefined): {
|
|
129
129
|
injection: InjectionRecipe | null;
|
|
130
130
|
} | undefined;
|
|
131
|
+
/**
|
|
132
|
+
* The hosts delta for the value-less PATCH path, compared EXACTLY rather than as a subset: a live row at `[]`
|
|
133
|
+
* after the platform added the column must take a declared list, and a declared `[]` must clear a live one.
|
|
134
|
+
* `undefined` when the plan states no hosts at all (a plan written before the field) or they already match.
|
|
135
|
+
*/
|
|
136
|
+
export declare function metadataHostsChange(desired: readonly string[] | undefined, live: readonly string[] | undefined): {
|
|
137
|
+
hosts: string[];
|
|
138
|
+
} | undefined;
|
|
139
|
+
/** A declared secret's hosts as the plan carries them; `undefined` for a plan written before the field. */
|
|
140
|
+
export declare function declaredSecretHosts(payload: unknown): string[] | undefined;
|
|
131
141
|
/**
|
|
132
142
|
* The write kinds carry value-free identifiers for the confirmation prompt, never the value itself.
|
|
133
143
|
* - `overwrite` — values are never readable, so any supplied value overwrites.
|
|
134
144
|
* - `noop-resolve` — resolve the id and write nothing, which protects the live credential from an
|
|
135
145
|
* empty overwrite.
|
|
136
|
-
* - `metadata-update` — a recipe edit changes no secret VALUE, so it must not be dropped as a noop.
|
|
146
|
+
* - `metadata-update` — a recipe or hosts edit changes no secret VALUE, so it must not be dropped as a noop.
|
|
137
147
|
* - `skip-empty` — the reconcile engine turns this into the named preflight error.
|
|
138
148
|
*/
|
|
139
149
|
export type SecretDecision = {
|
|
@@ -148,13 +158,14 @@ export type SecretDecision = {
|
|
|
148
158
|
kind: "noop-resolve";
|
|
149
159
|
} | {
|
|
150
160
|
kind: "metadata-update";
|
|
151
|
-
injection
|
|
161
|
+
injection?: InjectionRecipe | null;
|
|
162
|
+
hosts?: string[];
|
|
152
163
|
} | {
|
|
153
164
|
kind: "skip-empty";
|
|
154
165
|
};
|
|
155
166
|
/**
|
|
156
|
-
* `meta.injectionChange`
|
|
157
|
-
* recipe through the create/overwrite body.
|
|
167
|
+
* `meta.injectionChange` and `meta.hostsChange` steer only the no-value-plus-exists branch, since a fresh
|
|
168
|
+
* value already writes the recipe and the hosts through the create/overwrite body.
|
|
158
169
|
*
|
|
159
170
|
* `meta.commandLinePending` is the value-free branch, and it is load-bearing: a `cli:`-backed recipe has no
|
|
160
171
|
* bytes yet when this runs, because the collection pass deliberately happens AFTER the confirmation this
|
|
@@ -168,5 +179,8 @@ export declare function decideSecretWrite(resolvedValue: string | undefined, exi
|
|
|
168
179
|
injectionChange?: {
|
|
169
180
|
injection: InjectionRecipe | null;
|
|
170
181
|
};
|
|
182
|
+
hostsChange?: {
|
|
183
|
+
hosts: string[];
|
|
184
|
+
};
|
|
171
185
|
commandLinePending?: boolean;
|
|
172
186
|
}): SecretDecision;
|
|
@@ -65,6 +65,8 @@ function stringLeaves(s) {
|
|
|
65
65
|
...stringLeaves(s.ecrCredential.secretAccessKeySource),
|
|
66
66
|
];
|
|
67
67
|
}
|
|
68
|
+
if ("fields" in s)
|
|
69
|
+
return Object.values(s.fields).flatMap(stringLeaves);
|
|
68
70
|
throw new Error("unreachable ValueFrom variant"); // exhaustiveness guard
|
|
69
71
|
}
|
|
70
72
|
/**
|
|
@@ -220,6 +222,20 @@ function resolveRecipe(s, env, occurrences, cursor) {
|
|
|
220
222
|
return undefined; // both-or-neither
|
|
221
223
|
return JSON.stringify({ type: "aws-ecr", accessKeyId, secretAccessKey });
|
|
222
224
|
}
|
|
225
|
+
if ("fields" in s) {
|
|
226
|
+
// Every field is walked even after one is unresolved, for the same cursor alignment as `ecrCredential`;
|
|
227
|
+
// the platform renders `${secret.<name>}` from the JSON object this writes.
|
|
228
|
+
const resolved = {};
|
|
229
|
+
let complete = true;
|
|
230
|
+
for (const [name, field] of Object.entries(s.fields)) {
|
|
231
|
+
const value = resolveRecipe(field, env, occurrences, cursor);
|
|
232
|
+
if (value === undefined)
|
|
233
|
+
complete = false;
|
|
234
|
+
else
|
|
235
|
+
resolved[name] = value;
|
|
236
|
+
}
|
|
237
|
+
return complete ? JSON.stringify(resolved) : undefined;
|
|
238
|
+
}
|
|
223
239
|
throw new Error("unreachable ValueFrom variant"); // exhaustiveness guard
|
|
224
240
|
}
|
|
225
241
|
/**
|
|
@@ -241,6 +257,8 @@ export function rootEnvName(s) {
|
|
|
241
257
|
return rootEnvName(s.basicAuth.source);
|
|
242
258
|
if ("registryCredential" in s)
|
|
243
259
|
return rootEnvName(s.registryCredential.source);
|
|
260
|
+
if ("fields" in s)
|
|
261
|
+
return allRootSourceLabels(s)[0] ?? "";
|
|
244
262
|
return rootEnvName(s.ecrCredential.accessKeyIdSource);
|
|
245
263
|
}
|
|
246
264
|
/**
|
|
@@ -288,8 +306,25 @@ export function metadataInjectionChange(desired, live) {
|
|
|
288
306
|
return live !== undefined ? { injection: null } : undefined;
|
|
289
307
|
}
|
|
290
308
|
/**
|
|
291
|
-
*
|
|
292
|
-
*
|
|
309
|
+
* The hosts delta for the value-less PATCH path, compared EXACTLY rather than as a subset: a live row at `[]`
|
|
310
|
+
* after the platform added the column must take a declared list, and a declared `[]` must clear a live one.
|
|
311
|
+
* `undefined` when the plan states no hosts at all (a plan written before the field) or they already match.
|
|
312
|
+
*/
|
|
313
|
+
export function metadataHostsChange(desired, live) {
|
|
314
|
+
if (desired === undefined)
|
|
315
|
+
return undefined;
|
|
316
|
+
const current = live ?? [];
|
|
317
|
+
const same = desired.length === current.length && desired.every((host, index) => host === current[index]);
|
|
318
|
+
return same ? undefined : { hosts: [...desired] };
|
|
319
|
+
}
|
|
320
|
+
/** A declared secret's hosts as the plan carries them; `undefined` for a plan written before the field. */
|
|
321
|
+
export function declaredSecretHosts(payload) {
|
|
322
|
+
const hosts = payload.hosts;
|
|
323
|
+
return Array.isArray(hosts) ? hosts : undefined;
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* `meta.injectionChange` and `meta.hostsChange` steer only the no-value-plus-exists branch, since a fresh
|
|
327
|
+
* value already writes the recipe and the hosts through the create/overwrite body.
|
|
293
328
|
*
|
|
294
329
|
* `meta.commandLinePending` is the value-free branch, and it is load-bearing: a `cli:`-backed recipe has no
|
|
295
330
|
* bytes yet when this runs, because the collection pass deliberately happens AFTER the confirmation this
|
|
@@ -311,8 +346,8 @@ export function decideSecretWrite(resolvedValue, exists, meta) {
|
|
|
311
346
|
if (!exists) {
|
|
312
347
|
return { kind: "skip-empty" };
|
|
313
348
|
}
|
|
314
|
-
if (meta.injectionChange !== undefined) {
|
|
315
|
-
return { kind: "metadata-update",
|
|
349
|
+
if (meta.injectionChange !== undefined || meta.hostsChange !== undefined) {
|
|
350
|
+
return { kind: "metadata-update", ...meta.injectionChange, ...meta.hostsChange };
|
|
316
351
|
}
|
|
317
352
|
return { kind: "noop-resolve" };
|
|
318
353
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { TriggerDocument, TriggerTarget } from "../constructs/trigger.js";
|
|
2
2
|
import type { ConnectionIdResolver } from "./connection-slots.js";
|
|
3
|
-
import { type
|
|
3
|
+
import { type DesiredTeam, type TeamIdentityRefusal } from "./apply-core.js";
|
|
4
4
|
import type { FetchAPI } from "@orchestraworks/client";
|
|
5
5
|
import { type PlatformApis } from "./client.js";
|
|
6
6
|
import type { PlatformTarget } from "../cli/core/platform-client.js";
|
|
@@ -12,11 +12,10 @@ export interface TriggerCreateBody {
|
|
|
12
12
|
status?: WireTriggerStatus;
|
|
13
13
|
expiresAt?: string;
|
|
14
14
|
/**
|
|
15
|
-
* Resolved at apply, never at synth.
|
|
16
|
-
*
|
|
17
|
-
* classifier and never patched.
|
|
15
|
+
* Resolved at apply, never at synth, and absent for a trigger in Shared. It rides the CREATE only: on a live
|
|
16
|
+
* row a team is identity, compared by the shared classifier and never patched.
|
|
18
17
|
*/
|
|
19
|
-
|
|
18
|
+
teamId?: string;
|
|
20
19
|
}
|
|
21
20
|
/**
|
|
22
21
|
* The MUTABLE fields only. `target` is re-sent so the policy verbs can be patched, and its anchor and binding
|
|
@@ -37,8 +36,8 @@ export interface LiveTrigger {
|
|
|
37
36
|
target?: TriggerTarget;
|
|
38
37
|
on?: TriggerDocument["on"];
|
|
39
38
|
where?: TriggerDocument["where"];
|
|
40
|
-
/** Null for a
|
|
41
|
-
|
|
39
|
+
/** Null for a row that reports no team, which the platform reads as Shared. */
|
|
40
|
+
teamId?: string | null;
|
|
42
41
|
}
|
|
43
42
|
/** The subset of the generated `TriggersApi` this reconcile drives. */
|
|
44
43
|
export interface TriggersApiLike {
|
|
@@ -54,7 +53,7 @@ export interface TriggersApiLike {
|
|
|
54
53
|
}): Promise<LiveTrigger>;
|
|
55
54
|
}
|
|
56
55
|
/**
|
|
57
|
-
* `refused` is a PREVIEW-ONLY verdict for a live row whose
|
|
56
|
+
* `refused` is a PREVIEW-ONLY verdict for a live row whose team is not the declared one: apply
|
|
58
57
|
* throws that conflict, while the preview reports it as a row so one conflict still leaves the rest classified.
|
|
59
58
|
*/
|
|
60
59
|
export type TriggerAction = "created" | "updated" | "unchanged" | "refused";
|
|
@@ -69,20 +68,24 @@ export interface TriggerReconcileOutcome {
|
|
|
69
68
|
*/
|
|
70
69
|
predicted?: boolean;
|
|
71
70
|
/** Set only on a `refused` outcome — the same payload apply's thrown conflict carries. */
|
|
72
|
-
refusal?:
|
|
71
|
+
refusal?: TeamIdentityRefusal;
|
|
73
72
|
}
|
|
73
|
+
/**
|
|
74
|
+
* A trigger document's team, resolved the way every other row's is; `undefined` decides nothing. `live` is the
|
|
75
|
+
* row the team is judged against, which a trigger in Shared needs before Shared's id is read.
|
|
76
|
+
*/
|
|
77
|
+
export type TriggerTeamResolver = (raw: string | undefined, live?: LiveTrigger) => Promise<DesiredTeam | undefined>;
|
|
74
78
|
export interface TriggerDecision {
|
|
75
79
|
action: TriggerAction;
|
|
76
80
|
}
|
|
77
81
|
/**
|
|
78
82
|
* A drifted IMMUTABLE field fails loudly rather than reporting a false `unchanged`.
|
|
79
83
|
*
|
|
80
|
-
* The
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
* project field is inert, so a row someone moved in the console cannot break a project-less app's apply.
|
|
84
|
+
* The team is checked FIRST and through the shared classifier rather than this lane's own immutable-field
|
|
85
|
+
* wording, because a team conflict outranks every other verdict and must read identically in apply and in
|
|
86
|
+
* preview.
|
|
84
87
|
*/
|
|
85
|
-
export declare function reconcileTrigger(desired: TriggerCreateBody, live: LiveTrigger | undefined): TriggerDecision;
|
|
88
|
+
export declare function reconcileTrigger(desired: TriggerCreateBody, live: LiveTrigger | undefined, team?: DesiredTeam): TriggerDecision;
|
|
86
89
|
/** Built once per apply. */
|
|
87
90
|
/** Built once per apply over the plan-phase `applied` map plus the agents API. */
|
|
88
91
|
export type AgentRefResolver = (ref: string) => Promise<string>;
|
|
@@ -109,20 +112,16 @@ export declare function pipelineResolver(apis: PlatformApis, declared: ReadonlyM
|
|
|
109
112
|
* A create-race 409 on the POST recovers by re-reading and PATCHing, so the create degrades to an update
|
|
110
113
|
* against the winner's row.
|
|
111
114
|
*/
|
|
112
|
-
export declare function reconcileTriggerLive(api: TriggersApiLike, doc: TriggerDocument, resolveAgentRef?: AgentRefResolver,
|
|
115
|
+
export declare function reconcileTriggerLive(api: TriggersApiLike, doc: TriggerDocument, resolveAgentRef?: AgentRefResolver, resolveTeam?: TriggerTeamResolver, dryRun?: boolean, resolveConnectionId?: ConnectionIdResolver, resolvePipeline?: PipelineResolver): Promise<TriggerReconcileOutcome>;
|
|
113
116
|
/**
|
|
114
117
|
* Outcomes accumulate in place, so a mid-batch failure still surfaces the progress made.
|
|
115
118
|
*
|
|
116
|
-
*
|
|
117
|
-
*
|
|
118
|
-
*
|
|
119
|
-
* which only a caller holding the plan can supply; without it this call knows the project as an unresolvable
|
|
120
|
-
* token alone, so it keeps the pending verdict rather than naming what it cannot name.
|
|
119
|
+
* In a dry-run, a trigger placed in a MANAGED team that does not exist live yet resolves `pending-managed`:
|
|
120
|
+
* no live row can sit in a team nothing has created, so a PRESENT row is `refused` and an ABSENT one is still
|
|
121
|
+
* an exact `created`.
|
|
121
122
|
*/
|
|
122
|
-
export declare function reconcileTriggers(api: TriggersApiLike, docs: TriggerDocument[], resolveAgentRef?: AgentRefResolver,
|
|
123
|
+
export declare function reconcileTriggers(api: TriggersApiLike, docs: TriggerDocument[], resolveAgentRef?: AgentRefResolver, resolveTeam?: TriggerTeamResolver, outcomes?: TriggerReconcileOutcome[], options?: {
|
|
123
124
|
dryRun?: boolean;
|
|
124
|
-
projectPending?: boolean;
|
|
125
|
-
projectRef?: string;
|
|
126
125
|
resolveConnectionId?: ConnectionIdResolver;
|
|
127
126
|
resolvePipeline?: PipelineResolver;
|
|
128
127
|
}): Promise<TriggerReconcileOutcome[]>;
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
// ids and reads them back, so the immutable compare runs over ids.
|
|
9
9
|
import { wireNode } from "../constructs/workflow-filter.js";
|
|
10
10
|
import { ApplyError, getBySlugOrUndefined, UnresolvedManagedRefError, } from "./reconcile.js";
|
|
11
|
-
import {
|
|
11
|
+
import { classifyTeamIdentity, exactDeepEqual, platformErrorBody, teamIdentityConflict, } from "./apply-core.js";
|
|
12
12
|
import { httpStatusOf, makeApis } from "./client.js";
|
|
13
13
|
import { PreflightError } from "./preflight-errors.js";
|
|
14
14
|
import { rawJsonBody, toWireValue } from "./raw-json-request.js";
|
|
@@ -59,24 +59,18 @@ function targetVerbs(target) {
|
|
|
59
59
|
/**
|
|
60
60
|
* A drifted IMMUTABLE field fails loudly rather than reporting a false `unchanged`.
|
|
61
61
|
*
|
|
62
|
-
* The
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
* project field is inert, so a row someone moved in the console cannot break a project-less app's apply.
|
|
62
|
+
* The team is checked FIRST and through the shared classifier rather than this lane's own immutable-field
|
|
63
|
+
* wording, because a team conflict outranks every other verdict and must read identically in apply and in
|
|
64
|
+
* preview.
|
|
66
65
|
*/
|
|
67
|
-
export function reconcileTrigger(desired, live) {
|
|
66
|
+
export function reconcileTrigger(desired, live, team) {
|
|
68
67
|
if (live === undefined) {
|
|
69
68
|
return { action: "created" };
|
|
70
69
|
}
|
|
71
|
-
const conflict =
|
|
72
|
-
resourceKind: "trigger",
|
|
73
|
-
slug: desired.slug,
|
|
74
|
-
live,
|
|
75
|
-
desired: desiredProjectOf(desired.projectId),
|
|
76
|
-
});
|
|
70
|
+
const conflict = team === undefined ? undefined : classifyTeamIdentity({ resourceKind: "trigger", slug: desired.slug, live, desired: team });
|
|
77
71
|
if (conflict !== undefined) {
|
|
78
72
|
// This lane accumulates outcomes in the caller's batch, so the error carries none of its own.
|
|
79
|
-
throw
|
|
73
|
+
throw teamIdentityConflict(conflict, []);
|
|
80
74
|
}
|
|
81
75
|
const drifted = changedImmutableField(desired, live);
|
|
82
76
|
if (drifted !== undefined) {
|
|
@@ -102,8 +96,8 @@ function changedImmutableField(desired, live) {
|
|
|
102
96
|
return "where";
|
|
103
97
|
if (identityDrifts(targetIdentity(desired.target), targetIdentity(live.target)))
|
|
104
98
|
return "target anchor/binding";
|
|
105
|
-
// `
|
|
106
|
-
//
|
|
99
|
+
// `teamId` is deliberately absent: it is still identity, but the shared classifier compares it before this
|
|
100
|
+
// runs and words the refusal the way every other lane and every diff renderer words it.
|
|
107
101
|
return undefined;
|
|
108
102
|
}
|
|
109
103
|
/** Unset = absent on the wire: `undefined`, or an explicit `null` clear the platform never echoes for these. */
|
|
@@ -248,7 +242,15 @@ async function readPipeline(apis, ref, declared) {
|
|
|
248
242
|
* A create-race 409 on the POST recovers by re-reading and PATCHing, so the create degrades to an update
|
|
249
243
|
* against the winner's row.
|
|
250
244
|
*/
|
|
251
|
-
export async function reconcileTriggerLive(api, doc, resolveAgentRef = async (ref) => ref,
|
|
245
|
+
export async function reconcileTriggerLive(api, doc, resolveAgentRef = async (ref) => ref, resolveTeam, dryRun = false, resolveConnectionId = async (ref) => ref, resolvePipeline) {
|
|
246
|
+
const team = resolveTeam === undefined ? undefined : await resolveTeam(doc.teamId);
|
|
247
|
+
const judgedAgainst = async (live) => resolveTeam === undefined ? undefined : resolveTeam(doc.teamId, live);
|
|
248
|
+
const refusalAgainst = async (live) => {
|
|
249
|
+
const judged = await judgedAgainst(live);
|
|
250
|
+
return judged === undefined
|
|
251
|
+
? undefined
|
|
252
|
+
: classifyTeamIdentity({ resourceKind: "trigger", slug: doc.slug, live, desired: judged });
|
|
253
|
+
};
|
|
252
254
|
// An agent anchor may be a managed token that cannot resolve in a read-only preview, because the
|
|
253
255
|
// plan-resource phase has not run. Apply fails hard on that; the dry-run previews it as pending.
|
|
254
256
|
let resolved;
|
|
@@ -271,13 +273,8 @@ export async function reconcileTriggerLive(api, doc, resolveAgentRef = async (re
|
|
|
271
273
|
};
|
|
272
274
|
}
|
|
273
275
|
// A READABLE conflict outranks even this pending-dependency prediction: an unresolvable target anchor
|
|
274
|
-
// says nothing about
|
|
275
|
-
const pendingRefusal =
|
|
276
|
-
resourceKind: "trigger",
|
|
277
|
-
slug: doc.slug,
|
|
278
|
-
live,
|
|
279
|
-
desired: desiredProjectOf(projectId),
|
|
280
|
-
});
|
|
276
|
+
// says nothing about which team the live row sits in, and apply would refuse on the team regardless.
|
|
277
|
+
const pendingRefusal = await refusalAgainst(live);
|
|
281
278
|
return pendingRefusal !== undefined
|
|
282
279
|
? {
|
|
283
280
|
slug: doc.slug,
|
|
@@ -288,7 +285,7 @@ export async function reconcileTriggerLive(api, doc, resolveAgentRef = async (re
|
|
|
288
285
|
}
|
|
289
286
|
: { slug: doc.slug, id: live.id, action: "updated", predicted: true };
|
|
290
287
|
}
|
|
291
|
-
const body = createBodyOf(resolved,
|
|
288
|
+
const body = createBodyOf(resolved, team);
|
|
292
289
|
const live = await getBySlugOrUndefined(() => api.getTrigger({ id: resolved.slug }));
|
|
293
290
|
if (live === undefined) {
|
|
294
291
|
// The action is already decided, so the preview fences the POST and leaves the server-derived id
|
|
@@ -313,15 +310,10 @@ export async function reconcileTriggerLive(api, doc, resolveAgentRef = async (re
|
|
|
313
310
|
}
|
|
314
311
|
}
|
|
315
312
|
const current = live ?? (await api.getTrigger({ id: resolved.slug }));
|
|
316
|
-
// Apply throws the
|
|
317
|
-
//
|
|
313
|
+
// Apply throws the team verdict from the pure decision below; the preview must RETURN it instead, because a
|
|
314
|
+
// throw here would abort the whole preview at the first conflicted trigger.
|
|
318
315
|
if (dryRun) {
|
|
319
|
-
const refusal =
|
|
320
|
-
resourceKind: "trigger",
|
|
321
|
-
slug: resolved.slug,
|
|
322
|
-
live: current,
|
|
323
|
-
desired: desiredProjectOf(projectId),
|
|
324
|
-
});
|
|
316
|
+
const refusal = await refusalAgainst(current);
|
|
325
317
|
if (refusal !== undefined) {
|
|
326
318
|
return {
|
|
327
319
|
slug: resolved.slug,
|
|
@@ -332,7 +324,7 @@ export async function reconcileTriggerLive(api, doc, resolveAgentRef = async (re
|
|
|
332
324
|
};
|
|
333
325
|
}
|
|
334
326
|
}
|
|
335
|
-
const decision = reconcileTrigger(body, current);
|
|
327
|
+
const decision = reconcileTrigger(body, current, await judgedAgainst(current));
|
|
336
328
|
if (decision.action === "unchanged") {
|
|
337
329
|
return {
|
|
338
330
|
slug: resolved.slug,
|
|
@@ -362,22 +354,21 @@ export async function reconcileTriggerLive(api, doc, resolveAgentRef = async (re
|
|
|
362
354
|
/**
|
|
363
355
|
* Outcomes accumulate in place, so a mid-batch failure still surfaces the progress made.
|
|
364
356
|
*
|
|
365
|
-
*
|
|
366
|
-
*
|
|
367
|
-
*
|
|
368
|
-
* which only a caller holding the plan can supply; without it this call knows the project as an unresolvable
|
|
369
|
-
* token alone, so it keeps the pending verdict rather than naming what it cannot name.
|
|
357
|
+
* In a dry-run, a trigger placed in a MANAGED team that does not exist live yet resolves `pending-managed`:
|
|
358
|
+
* no live row can sit in a team nothing has created, so a PRESENT row is `refused` and an ABSENT one is still
|
|
359
|
+
* an exact `created`.
|
|
370
360
|
*/
|
|
371
|
-
export async function reconcileTriggers(api, docs, resolveAgentRef = async (ref) => ref,
|
|
361
|
+
export async function reconcileTriggers(api, docs, resolveAgentRef = async (ref) => ref, resolveTeam, outcomes = [], options = {}) {
|
|
372
362
|
const dryRun = options.dryRun === true;
|
|
373
363
|
const resolveConnectionId = options.resolveConnectionId ?? (async (ref) => ref);
|
|
374
364
|
for (const doc of docs) {
|
|
375
|
-
|
|
365
|
+
const team = resolveTeam === undefined ? undefined : await resolveTeam(doc.teamId);
|
|
366
|
+
if (dryRun && team?.state === "pending-managed") {
|
|
376
367
|
// The slug is authoritative, so a GET-by-slug decides absent-vs-present with no write, and the refusal
|
|
377
368
|
// is a VERDICT rather than a throw so one conflict does not abort the batch. The trigger's OTHER refs
|
|
378
|
-
// must still be validated read-only, or a missing imported agent hides behind the pending-
|
|
379
|
-
//
|
|
380
|
-
//
|
|
369
|
+
// must still be validated read-only, or a missing imported agent hides behind the pending-team verdict
|
|
370
|
+
// though apply would fail; an unresolvable MANAGED ref is itself a pending dependency, and any other
|
|
371
|
+
// resolution failure propagates.
|
|
381
372
|
try {
|
|
382
373
|
await resolveTriggerRefs(doc, resolveAgentRef, resolveConnectionId, options.resolvePipeline);
|
|
383
374
|
}
|
|
@@ -387,12 +378,7 @@ export async function reconcileTriggers(api, docs, resolveAgentRef = async (ref)
|
|
|
387
378
|
}
|
|
388
379
|
}
|
|
389
380
|
const live = await getBySlugOrUndefined(() => api.getTrigger({ id: doc.slug }));
|
|
390
|
-
const refusal =
|
|
391
|
-
resourceKind: "trigger",
|
|
392
|
-
slug: doc.slug,
|
|
393
|
-
live,
|
|
394
|
-
desired: pendingDesiredProject(options.projectRef),
|
|
395
|
-
});
|
|
381
|
+
const refusal = classifyTeamIdentity({ resourceKind: "trigger", slug: doc.slug, live, desired: team });
|
|
396
382
|
if (live === undefined) {
|
|
397
383
|
outcomes.push({
|
|
398
384
|
slug: doc.slug,
|
|
@@ -410,24 +396,16 @@ export async function reconcileTriggers(api, docs, resolveAgentRef = async (ref)
|
|
|
410
396
|
refusal,
|
|
411
397
|
});
|
|
412
398
|
}
|
|
413
|
-
else {
|
|
414
|
-
// Reachable only when the caller supplied no declared slug: the row is live, the project is pending,
|
|
415
|
-
// and the engine cannot name it, so the pending verdict stands.
|
|
416
|
-
outcomes.push({
|
|
417
|
-
slug: doc.slug,
|
|
418
|
-
id: live.id,
|
|
419
|
-
action: "updated",
|
|
420
|
-
predicted: true,
|
|
421
|
-
});
|
|
422
|
-
}
|
|
423
399
|
continue;
|
|
424
400
|
}
|
|
425
|
-
outcomes.push(await reconcileTriggerLive(api, doc, resolveAgentRef,
|
|
401
|
+
outcomes.push(await reconcileTriggerLive(api, doc, resolveAgentRef,
|
|
402
|
+
// The live row goes through, so a trigger in Shared is judged against Shared's id once a read reports it.
|
|
403
|
+
async (raw, live) => (resolveTeam === undefined || live === undefined ? team : resolveTeam(raw, live)), dryRun, resolveConnectionId, options.resolvePipeline));
|
|
426
404
|
}
|
|
427
405
|
return outcomes;
|
|
428
406
|
}
|
|
429
|
-
/** A
|
|
430
|
-
function createBodyOf(doc,
|
|
407
|
+
/** A trigger in Shared carries no team, keeping its body the one the platform has always taken. */
|
|
408
|
+
function createBodyOf(doc, team) {
|
|
431
409
|
const body = {
|
|
432
410
|
slug: doc.slug,
|
|
433
411
|
on: doc.on,
|
|
@@ -439,8 +417,8 @@ function createBodyOf(doc, projectId) {
|
|
|
439
417
|
body.status = wireStatus(doc.status);
|
|
440
418
|
if (doc.expiresAt !== undefined)
|
|
441
419
|
body.expiresAt = doc.expiresAt;
|
|
442
|
-
if (
|
|
443
|
-
body.
|
|
420
|
+
if (team?.state === "resolved" && team.shared !== true)
|
|
421
|
+
body.teamId = team.teamId;
|
|
444
422
|
return body;
|
|
445
423
|
}
|
|
446
424
|
async function failing(slug, op) {
|
|
@@ -485,7 +463,7 @@ function toLiveTrigger(json) {
|
|
|
485
463
|
// The immutable identity fields, read back so the reconcile can FAIL a re-point drift.
|
|
486
464
|
on: json.on,
|
|
487
465
|
where: json.where,
|
|
488
|
-
|
|
466
|
+
teamId: json.teamId ?? null,
|
|
489
467
|
};
|
|
490
468
|
}
|
|
491
469
|
/**
|
|
@@ -29,7 +29,7 @@ export interface LiveWorkflow {
|
|
|
29
29
|
id: string;
|
|
30
30
|
slug: string;
|
|
31
31
|
name: string;
|
|
32
|
-
|
|
32
|
+
teamId?: string;
|
|
33
33
|
pipeline: {
|
|
34
34
|
id: string;
|
|
35
35
|
slug: string;
|
|
@@ -51,7 +51,7 @@ export interface ResolvedWorkflow {
|
|
|
51
51
|
/** Each resolves one reference to its id, or throws the refusal for one that names nothing. */
|
|
52
52
|
export interface WorkflowResolvers {
|
|
53
53
|
agent(ref: string): Promise<string>;
|
|
54
|
-
|
|
54
|
+
team(ref: string): Promise<string>;
|
|
55
55
|
connection(ref: string): Promise<string>;
|
|
56
56
|
pipeline(ref: string): Promise<ResolvedPipeline>;
|
|
57
57
|
}
|
|
@@ -12,7 +12,7 @@ import { exactDeepEqual, getBySlugOrUndefined, mapError, platformErrorMessage }
|
|
|
12
12
|
import { httpStatusOf } from "./client.js";
|
|
13
13
|
import { resolveConditionReferences, resolveStageInField } from "./condition-references.js";
|
|
14
14
|
import { connectionIdResolver, managedConnectionTokens } from "./connection-slots.js";
|
|
15
|
-
import { declaredPipelinesOf,
|
|
15
|
+
import { declaredPipelinesOf, teamIdOf } from "./pipeline-reconcile.js";
|
|
16
16
|
import { pinFollowingEntries } from "./pipeline-workflow-reconcile.js";
|
|
17
17
|
import { PreflightError } from "./preflight-errors.js";
|
|
18
18
|
import { rawJsonBody, toWireValue } from "./raw-json-request.js";
|
|
@@ -30,11 +30,11 @@ export function workflowResolvers(apis, plan, applied, connections) {
|
|
|
30
30
|
agents.set(resource.slug, refToken("agent", resource.path.split("/")));
|
|
31
31
|
}
|
|
32
32
|
const agentIds = new Map();
|
|
33
|
-
const
|
|
33
|
+
const teamIds = new Map();
|
|
34
34
|
const connection = connectionIdResolver(managedConnectionTokens(plan), connections);
|
|
35
35
|
return {
|
|
36
36
|
agent: (ref) => memo(agentIds, ref, () => resolveReferenceId(agents.get(ref) ?? ref, "agent", applied, apis)),
|
|
37
|
-
|
|
37
|
+
team: (ref) => memo(teamIds, ref, () => teamIdOf(apis, ref)),
|
|
38
38
|
connection,
|
|
39
39
|
pipeline: pipelineResolver(apis, declaredPipelinesOf(plan.resources)),
|
|
40
40
|
};
|
|
@@ -62,7 +62,7 @@ export async function resolveWorkflow(payload, resolvers, options = {}) {
|
|
|
62
62
|
throw options.dryRun === true && target.managed ? new UnresolvedManagedRefError(message) : new PreflightError(message);
|
|
63
63
|
};
|
|
64
64
|
const own = (ref) => stageIn(pipeline, ref);
|
|
65
|
-
const conditions = { agent: resolvers.agent,
|
|
65
|
+
const conditions = { agent: resolvers.agent, team: resolvers.team, stage: own };
|
|
66
66
|
const node = async (value) => value === undefined ? undefined : wireNode(await resolveConditionReferences(value, conditions));
|
|
67
67
|
const rules = [];
|
|
68
68
|
for (const rule of payload.rules) {
|
|
@@ -96,7 +96,7 @@ async function resolveAction(action, resolvers, own, stageIn) {
|
|
|
96
96
|
const assign = async (body) => ({
|
|
97
97
|
...body,
|
|
98
98
|
...(body.assigneeAgent !== undefined ? { assigneeAgent: await resolvers.agent(body.assigneeAgent) } : {}),
|
|
99
|
-
...(body.
|
|
99
|
+
...(body.assigneeTeam !== undefined ? { assigneeTeam: await resolvers.team(body.assigneeTeam) } : {}),
|
|
100
100
|
});
|
|
101
101
|
if ("assign" in action)
|
|
102
102
|
return { assign: await assign(action.assign) };
|