@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.
- package/README.md +1 -1
- package/dist/artifacts/prelude.js +10 -1
- package/dist/cli/api/execute.js +7 -7
- package/dist/cli/core/auth.d.ts +11 -1
- package/dist/cli/core/auth.js +48 -4
- package/dist/cli/core/errors.js +4 -0
- package/dist/cli/core/platform-client.d.ts +3 -2
- 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 +5 -5
- package/dist/cli/firstRun.js +18 -17
- 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 +102 -95
- 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 +82 -67
- package/skills/orchestra-fdk/references/authoring.md +83 -45
- package/skills/orchestra-fdk/references/environment.md +214 -33
- package/skills/orchestra-fdk/references/troubleshooting.md +10 -8
- 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
package/dist/cli/main.d.ts
CHANGED
|
@@ -34,7 +34,7 @@ import { type SynthCommandOptions } from "./factory/synth.js";
|
|
|
34
34
|
*
|
|
35
35
|
* {@link topLevelHelpText} is what `orchestra --help` actually prints — this body plus a runtime epilogue.
|
|
36
36
|
*/
|
|
37
|
-
export declare const TOP_LEVEL_HELP = "orchestra \u2014 the Orchestra command line.\n\norchestra fdk is the software factory as code. A software factory \u2014\nagents, environments, workflows, and the credentials that power them \u2014 is\ndefined in code: versioned, reviewed, type-checked. fdk apply reconciles\nthe platform to it, like cdk or terraform.\n\nUSAGE\n orchestra <command> [flags]\n\nThe orchestra CLI does two jobs:\n\n 1 Factory as code \u2014 where change happens.\n Declare the factory in code; fdk synth renders the plan, fdk diff\n previews it, fdk apply makes the platform match. Code is the source of\n truth, so every change is version-controlled, reviewed, and type-guarded.\n\n 2 Platform commands \u2014 probe the live factory.\n Read state, reason about what exists, trial an idea before codifying\n it, or fall back for a one-off: orchestra <noun> <verb>.\n\n Rule of thumb: observe with commands. Change in code.\n\nSIGN IN\n auth login Authenticate and save a profile (both jobs use it)\n\nFACTORY AS CODE\n fdk init Write a starter factory into this folder\n fdk synth Render the factory to a plan\n fdk diff Preview what apply would change\n fdk apply Make the platform match the code\n\nPLATFORM COMMANDS orchestra <noun> <verb> \u2014 nouns match API paths exactly\n Build & run agents environments sessions machines compute-enrollments\n pipelines work-items workflows decisions skills\n files artifacts volumes
|
|
37
|
+
export declare const TOP_LEVEL_HELP = "orchestra \u2014 the Orchestra command line.\n\norchestra fdk is the software factory as code. A software factory \u2014\nagents, environments, workflows, and the credentials that power them \u2014 is\ndefined in code: versioned, reviewed, type-checked. fdk apply reconciles\nthe platform to it, like cdk or terraform.\n\nUSAGE\n orchestra <command> [flags]\n\nThe orchestra CLI does two jobs:\n\n 1 Factory as code \u2014 where change happens.\n Declare the factory in code; fdk synth renders the plan, fdk diff\n previews it, fdk apply makes the platform match. Code is the source of\n truth, so every change is version-controlled, reviewed, and type-guarded.\n\n 2 Platform commands \u2014 probe the live factory.\n Read state, reason about what exists, trial an idea before codifying\n it, or fall back for a one-off: orchestra <noun> <verb>.\n\n Rule of thumb: observe with commands. Change in code.\n\nSIGN IN\n auth login Authenticate and save a profile (both jobs use it)\n\nFACTORY AS CODE\n fdk init Write a starter factory into this folder\n fdk synth Render the factory to a plan\n fdk diff Preview what apply would change\n fdk apply Make the platform match the code\n\nPLATFORM COMMANDS orchestra <noun> <verb> \u2014 nouns match API paths exactly\n Build & run agents environments sessions machines compute-enrollments\n pipelines work-items workflows decisions skills\n files images artifacts volumes room-tokens\n compute-providers\n Events & wiring triggers events deliveries connections\n connection-intents install-links connectors providers\n Models models model-aliases model-configs model-providers\n model-provider-keys gateway-keys\n Credentials secrets api-keys\n Organization organizations organization-memberships organization-invitations\n users teams team-memberships user-grants service-accounts\n roles policies me\n Observability metrics dashboards health\n\n Standard verbs: list \u00B7 get \u00B7 create \u00B7 update \u00B7 delete.\n Command endpoints keep their own verb: sessions interrupt, work-items move,\n workflows revert.\n Typed flows: user-grants grant (mint a user-grant and walk its consent flow) \u00B7\n sessions wait (poll a session until it settles) \u00B7\n sessions tail (print a session's items as they are saved) \u00B7\n compute-providers check (show why a Launcher fails) \u00B7\n artifacts preview (serve an HTML page locally).\n Write verbs exist for trial and fallback; durable change belongs in code.\n Writing to a factory-managed resource warns: the next apply reverts it.\n orchestra <noun> --help lists a noun's verbs and flags.\n\nBACKUP\n api <METHOD> </path> Raw authenticated call (like gh api). For when a typed\n command is missing or wrong \u2014 needing it is a bug; file it.\n\nYOUR CODING AGENT\n skills install Link the two bundled skills, orchestra and orchestra-fdk,\n into Claude Code or Codex. Both flags are required:\n --harness claude|codex|both|other --scope user|project.\n\nTHIS MACHINE\n install Install the CLI globally, ask what this machine is, then\n install the worker and the harness families you choose.\n worker run Serve this machine: claim its identity, then register.\n worker install Install the worker here, taking every answer from flags.\n worker enroll Redeem an enrollment token, then serve this machine.\n\nRUN YOUR AGENT HERE The local environment on this machine, and the machines it runs.\n local up Start it, and print the two lines a shell needs to reach it.\n local status Read its four checks: boot, content, turns, environment.\n local down Stop it, and the machines it launched.\n outpost token Mint an offer for a machine you already own.\n outpost up Enrol this machine, or this container, and hold its worker.\n outpost down Stop that worker and revoke its enrollment.\n Every other command reaches it the ordinary way, by base URL.\n\nCONVENTIONS\n --output json On every platform command; the default is a human table.\n --body @file.json Full request body where flags are too coarse.\n --file <path> On files create and artifacts create / create-version:\n store the bytes at <path> and let the create name them.\n Credential values in responses print masked; --reveal or --output-file is the\n deliberate path.\n fdk apply defaults to any-change: it confirms the whole pre-flight preview\n before any write, and stays silent when nothing changes. A single platform\n command defaults to sensitive-only \u2014 it asks for credential values and IAM only.\n Override with --require-approval never | sensitive-only | any-change or with\n ORCHESTRA_REQUIRE_APPROVAL; the legacy --approve-secrets is exactly never.\n Prompts and bindings are written as prompt`\u2026` / binding`\u2026` tagged templates\n over the typed context handle \u2014 never hand-spelled {{\u2026}} strings.\n\nEXAMPLES\n orchestra fdk apply # reconcile the factory in ./\n orchestra secrets create --name deepseek --value-from-command-line\n orchestra sessions list --status RUNNING --output json\n orchestra work-items move bug-12 --stage review\n orchestra gateway-keys create --slug ci-smoke --output-file key.json\n\nLEARN MORE\n orchestra <command> --help \u00B7 orchestra skills install --harness <name>\n --scope user (links the reference and setup skills into your coding agent \u2014\n the same documents AI agents use)\n";
|
|
38
38
|
/**
|
|
39
39
|
* A function rather than a constant because the epilogue names an ABSOLUTE PATH that differs per install and
|
|
40
40
|
* can only be resolved by the running process. `buildProgram` calls it once and pins the result, so the text
|
package/dist/cli/main.js
CHANGED
|
@@ -93,7 +93,7 @@ FACTORY AS CODE
|
|
|
93
93
|
PLATFORM COMMANDS orchestra <noun> <verb> — nouns match API paths exactly
|
|
94
94
|
Build & run agents environments sessions machines compute-enrollments
|
|
95
95
|
pipelines work-items workflows decisions skills
|
|
96
|
-
files artifacts volumes
|
|
96
|
+
files images artifacts volumes room-tokens
|
|
97
97
|
compute-providers
|
|
98
98
|
Events & wiring triggers events deliveries connections
|
|
99
99
|
connection-intents install-links connectors providers
|
|
@@ -101,7 +101,8 @@ PLATFORM COMMANDS orchestra <noun> <verb> — nouns match API paths exactly
|
|
|
101
101
|
model-provider-keys gateway-keys
|
|
102
102
|
Credentials secrets api-keys
|
|
103
103
|
Organization organizations organization-memberships organization-invitations
|
|
104
|
-
users
|
|
104
|
+
users teams team-memberships user-grants service-accounts
|
|
105
|
+
roles policies me
|
|
105
106
|
Observability metrics dashboards health
|
|
106
107
|
|
|
107
108
|
Standard verbs: list · get · create · update · delete.
|
|
@@ -375,7 +376,7 @@ export function buildProgram(handlers = defaultHandlers, pointer = bundledSkillP
|
|
|
375
376
|
// The one command that installs this machine. It carries the auth flags because its first questions are a
|
|
376
377
|
// sign-in, and `--no-browser` for the same reason `login` has it.
|
|
377
378
|
addAuthOptions(program.command("install"))
|
|
378
|
-
.option("--
|
|
379
|
+
.option("--team <id>", "team this machine's work belongs to (omitted: Shared)")
|
|
379
380
|
.option("--role <role>", `what this machine is: ${MACHINE_ROLES.join(" | ")} (no default)`)
|
|
380
381
|
.option("--harness <families>", `comma-separated harness families to install now: ${HARNESS_FAMILIES.join(", ")}`)
|
|
381
382
|
.option("--root <dir>", "directory the worker installs its pinned runtime and harness families into")
|
package/dist/cli/upload.d.ts
CHANGED
|
@@ -19,6 +19,8 @@ export interface UploadedFile {
|
|
|
19
19
|
readonly sizeBytes: number;
|
|
20
20
|
readonly contentType: string;
|
|
21
21
|
readonly filename: string;
|
|
22
|
+
/** True when the platform already held these bytes, so this call stored nothing. */
|
|
23
|
+
readonly alreadyStored: boolean;
|
|
22
24
|
}
|
|
23
25
|
export interface UploadOptions {
|
|
24
26
|
/**
|
|
@@ -31,7 +33,7 @@ export interface UploadOptions {
|
|
|
31
33
|
readonly io: CliIo;
|
|
32
34
|
readonly organizationId?: string | undefined;
|
|
33
35
|
/** Borrowed from the create's own body when it spells them, so both calls describe one file. */
|
|
34
|
-
readonly
|
|
36
|
+
readonly teamId?: string | undefined;
|
|
35
37
|
readonly filename?: string | undefined;
|
|
36
38
|
readonly contentType?: string | undefined;
|
|
37
39
|
}
|
package/dist/cli/upload.js
CHANGED
|
@@ -64,7 +64,14 @@ export async function uploadFile(path, options) {
|
|
|
64
64
|
const parts = await push(declared, path, stats.size, options);
|
|
65
65
|
await complete(declared, parts, options);
|
|
66
66
|
report(declared, parts, filename, stats.size, options.io);
|
|
67
|
-
return {
|
|
67
|
+
return {
|
|
68
|
+
fileId: declared.file.id,
|
|
69
|
+
sha256,
|
|
70
|
+
sizeBytes: stats.size,
|
|
71
|
+
contentType,
|
|
72
|
+
filename,
|
|
73
|
+
alreadyStored: parts === undefined,
|
|
74
|
+
};
|
|
68
75
|
}
|
|
69
76
|
catch (failure) {
|
|
70
77
|
if (!(failure instanceof PlanExpiredError) || attempt >= DECLARE_ATTEMPTS) {
|
|
@@ -103,7 +110,7 @@ async function declare(path, options, sha256, sizeBytes) {
|
|
|
103
110
|
sizeBytes,
|
|
104
111
|
filename: options.filename,
|
|
105
112
|
contentType: options.contentType,
|
|
106
|
-
...(options.
|
|
113
|
+
...(options.teamId !== undefined ? { teamId: options.teamId } : {}),
|
|
107
114
|
},
|
|
108
115
|
...(options.organizationId !== undefined ? { xOrganizationId: options.organizationId } : {}),
|
|
109
116
|
});
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { CreateAgentRequestSyncModeEnum, type AgentModelSettings, type StandbyCapacity } from "@orchestraworks/client";
|
|
2
2
|
import { Construct } from "../core/construct.js";
|
|
3
3
|
import type { PlanResource } from "../core/plan.js";
|
|
4
|
-
import type { IAgent, IEnvironment, ISkill } from "./interfaces.js";
|
|
4
|
+
import type { IAgent, IEnvironment, ISkill, ITeam } from "./interfaces.js";
|
|
5
|
+
import { type TeamMembershipDeclaration } from "./team-membership.js";
|
|
5
6
|
/**
|
|
6
7
|
* Seeded into the agent's memory directory inside the harness home; a family that keeps no memory directory
|
|
7
8
|
* resolves `path` under the workspace root instead.
|
|
@@ -46,6 +47,13 @@ export interface AgentProps {
|
|
|
46
47
|
syncMode?: SyncMode;
|
|
47
48
|
slug?: string;
|
|
48
49
|
name?: string;
|
|
50
|
+
/** Fixed at create; undeclared, the agent is created in Shared. */
|
|
51
|
+
team?: ITeam;
|
|
52
|
+
/**
|
|
53
|
+
* The agent's full set of team membership rows. Undeclared, apply leaves the rows the platform wrote at
|
|
54
|
+
* create; declared, apply makes the live rows match it, and never removes the minted use policies.
|
|
55
|
+
*/
|
|
56
|
+
memberships?: readonly TeamMembershipDeclaration[];
|
|
49
57
|
}
|
|
50
58
|
export declare class Agent extends Construct implements IAgent {
|
|
51
59
|
/** Accepts a platform id or a slug interchangeably — one rule, stated on `IResource`. */
|
package/dist/constructs/agent.js
CHANGED
|
@@ -5,6 +5,7 @@ import { refToken } from "../core/tokens.js";
|
|
|
5
5
|
import { MANAGED_SKILL_IDS } from "../generated/managed-skills.js";
|
|
6
6
|
import { registerImport, resolveManagedSlug, validateExplicitSlug } from "./references.js";
|
|
7
7
|
import { Skill } from "./skill.js";
|
|
8
|
+
import { teamMembershipRows, TeamMemberships } from "./team-membership.js";
|
|
8
9
|
const HARNESS_FAMILIES = ["claude", "codex", "pi", "script", "custom"];
|
|
9
10
|
const SYNC_MODES = Object.values(CreateAgentRequestSyncModeEnum);
|
|
10
11
|
/** The platform serves each managed skill under `skill_<key>`, and `<key>` is that skill's frontmatter `name`. */
|
|
@@ -121,6 +122,7 @@ export class Agent extends Construct {
|
|
|
121
122
|
...(props.labels !== undefined ? { labels: { ...props.labels } } : {}),
|
|
122
123
|
...(props.modelSettings !== undefined ? { modelSettings: { ...props.modelSettings } } : {}),
|
|
123
124
|
...(props.standbyCapacity !== undefined ? { standbyCapacity: structuredClone(props.standbyCapacity) } : {}),
|
|
125
|
+
...(props.memberships !== undefined ? { memberships: [...props.memberships] } : {}),
|
|
124
126
|
};
|
|
125
127
|
validateStandbyCapacity(`agent '${this.node.path.join("/")}'`, this.props.standbyCapacity);
|
|
126
128
|
this.managedSkillIds = this.receivesManagedSkills() ? managedIdsWithoutAuthoredNames(this.props.skills ?? []) : [];
|
|
@@ -131,6 +133,10 @@ export class Agent extends Construct {
|
|
|
131
133
|
this.explicitSlug = props.slug;
|
|
132
134
|
this.displayName = props.name ?? id;
|
|
133
135
|
this.agentId = refToken("agent", this.node.path);
|
|
136
|
+
if (props.memberships !== undefined) {
|
|
137
|
+
const rows = teamMembershipRows(`agent '${this.node.path.join("/")}'`, props.memberships);
|
|
138
|
+
new TeamMemberships(this, "memberships", () => this.slug, { agentId: this.agentId }, rows);
|
|
139
|
+
}
|
|
134
140
|
}
|
|
135
141
|
get slug() {
|
|
136
142
|
return resolveManagedSlug(this, this.explicitSlug, "agent");
|
|
@@ -171,6 +177,7 @@ export class Agent extends Construct {
|
|
|
171
177
|
standbyCapacity: this.props.standbyCapacity !== undefined ? structuredClone(this.props.standbyCapacity) : null,
|
|
172
178
|
// Sent only when declared: an agent that never names a mode keeps whatever the platform holds for it.
|
|
173
179
|
...(this.props.syncMode !== undefined ? { syncMode: this.props.syncMode } : {}),
|
|
180
|
+
...(this.props.team !== undefined ? { teamId: this.props.team.teamId } : {}),
|
|
174
181
|
};
|
|
175
182
|
return { kind: "agent", path: this.node.path.join("/"), slug, managed: true, payload };
|
|
176
183
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// A self-hosted compute provider: the record a customer's Launcher signs in for, which runs the machines of
|
|
2
2
|
// every environment that names it (`Environment`'s `computeProvider`). The record is organization-wide, so its
|
|
3
|
-
// create carries no
|
|
3
|
+
// create carries no team. Its create answers the record's key once; apply prints that key on a terminal and
|
|
4
4
|
// keeps it nowhere (`engine/compute-provider-reconcile.ts`). A key is never declared here: minting, rotating
|
|
5
5
|
// and revoking one is the console's or the generated CLI's job.
|
|
6
6
|
import { Construct } from "../core/construct.js";
|
|
@@ -48,7 +48,7 @@ export class ComputeProvider extends Construct {
|
|
|
48
48
|
const slug = this.slug;
|
|
49
49
|
// The azure block is ALWAYS emitted whole: a patch replaces it whole, so a list removed from the
|
|
50
50
|
// declaration must arrive as an empty one to clear the record's, not as an absent block read as unchanged.
|
|
51
|
-
// No `
|
|
51
|
+
// No `teamId` ever: the record is organization-wide.
|
|
52
52
|
const payload = {
|
|
53
53
|
slug,
|
|
54
54
|
name: this.displayName,
|
|
@@ -3,7 +3,7 @@ import type { PlanResource } from "../core/plan.js";
|
|
|
3
3
|
import { type ProviderHandle } from "./provider-types.js";
|
|
4
4
|
import { type EgressRuleBundle } from "./egress-preset.js";
|
|
5
5
|
import type { IConnector } from "./connector.js";
|
|
6
|
-
import type { IResource, ISecret } from "./interfaces.js";
|
|
6
|
+
import type { IResource, ISecret, ITeam } from "./interfaces.js";
|
|
7
7
|
import type { AutoRespondOf, InstallOf } from "../generated/providers.js";
|
|
8
8
|
import { type FilterInput } from "./workflow-filter.js";
|
|
9
9
|
export type AuthMode = "GITHUB_APP" | "OAUTH" | "CUSTOMER_MANAGED_TOKEN" | "WEBHOOK_SECRET" | "FORGE_APP";
|
|
@@ -64,23 +64,18 @@ export interface IConnection extends IResource {
|
|
|
64
64
|
readonly connectionSlug?: string;
|
|
65
65
|
readonly installValues?: Record<string, string>;
|
|
66
66
|
/**
|
|
67
|
-
* The
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
* `allow(connection)
|
|
71
|
-
*
|
|
72
|
-
* Two same-provider bundles in one environment share provider hosts by design, and priority is deliberately
|
|
73
|
-
* NOT the remedy: attribution arbitrates only WITHIN the winning priority tier, so unequal priorities would
|
|
74
|
-
* hand every request — including one attributed to the other connection — the higher-priority connection's
|
|
75
|
-
* credential. Keep the bundles at their equal default and opt the dispatching triggers into
|
|
76
|
-
* `attributeConnection`, or put the connections in separate environments.
|
|
67
|
+
* The network rules an environment folds on with `EgressPolicy.applyPreset(...)`: the provider's API hosts
|
|
68
|
+
* and the git paths its catalog declares. The rules carry no credential; the connection itself is presented
|
|
69
|
+
* on the catalog hosts its own `hosts` cover. A grant that needs its own paths, name or priority stays on
|
|
70
|
+
* `EgressPolicy.allow(connection, …)`; the bundle supersedes a plain `allow(connection)` because applying
|
|
71
|
+
* both collides on the rule name and is a synth error.
|
|
77
72
|
*/
|
|
78
73
|
egressPolicy(options?: ConnectionEgressPolicyOptions): EgressRuleBundle;
|
|
79
74
|
}
|
|
80
75
|
/**
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
76
|
+
* Which of the provider's git paths a connection's bundle opens — a network choice only, since the
|
|
77
|
+
* credential follows the connection's `hosts` on every path the network admits:
|
|
78
|
+
* - `"readWrite"` (the default) — clone, fetch and push;
|
|
84
79
|
* - `"read"` — a push then fails at its *second* request: the `info/refs` discovery GET is a read and
|
|
85
80
|
* succeeds, then the push POST meets the policy's default deny as a structured 403;
|
|
86
81
|
* - `"none"` — narrows only THIS bundle: an environment that also applies the anonymous
|
|
@@ -101,8 +96,8 @@ export declare function connectionLabel(connection: IConnection): string;
|
|
|
101
96
|
/**
|
|
102
97
|
* The ONE implementation behind all four connection forms (the managed construct and the three imports), so an
|
|
103
98
|
* imported reference expands to exactly what the construct does. Everything it emits is read off the provider
|
|
104
|
-
* catalog — hosts
|
|
105
|
-
*
|
|
99
|
+
* catalog — hosts and the transport's path families — so a new provider's git transport is catalog data
|
|
100
|
+
* rather than a change here.
|
|
106
101
|
*/
|
|
107
102
|
export declare function connectionEgressBundle(connection: IConnection, options?: ConnectionEgressPolicyOptions): EgressRuleBundle;
|
|
108
103
|
export interface ConnectionProps<C extends ProviderHandle = ProviderHandle> {
|
|
@@ -128,6 +123,15 @@ export interface ConnectionProps<C extends ProviderHandle = ProviderHandle> {
|
|
|
128
123
|
* but mints no bus row. Never a trust boundary — verification remains the gate.
|
|
129
124
|
*/
|
|
130
125
|
where?: FilterInput[];
|
|
126
|
+
/** Fixed at create; undeclared, the connection is created in Shared. */
|
|
127
|
+
team?: ITeam;
|
|
128
|
+
/**
|
|
129
|
+
* The catalog hosts this connection's credential is presented on, in egress rule host syntax: an exact host,
|
|
130
|
+
* `*.suffix`, or `*`. A request to a catalog API or git host that one of these covers gets the credential at
|
|
131
|
+
* the egress edge; an environment's rules only decide whether the request may leave. Omitted, every catalog
|
|
132
|
+
* host (`["*"]`), and apply always sends the list, so a row at `[]` converges on it; `[]` covers none.
|
|
133
|
+
*/
|
|
134
|
+
hosts?: string[];
|
|
131
135
|
}
|
|
132
136
|
export interface ConnectionImportOptions<C extends ProviderHandle = ProviderHandle> {
|
|
133
137
|
provider: C;
|
|
@@ -143,6 +147,8 @@ export declare class Connection<C extends ProviderHandle = ProviderHandle> exten
|
|
|
143
147
|
private readonly explicitSlug;
|
|
144
148
|
private readonly displayName;
|
|
145
149
|
private readonly whereConditions;
|
|
150
|
+
private readonly team;
|
|
151
|
+
private readonly hosts;
|
|
146
152
|
constructor(scope: Construct, id: string, props: ConnectionProps<C>);
|
|
147
153
|
get slug(): string;
|
|
148
154
|
get connectionSlug(): string;
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
import { Construct } from "../core/construct.js";
|
|
4
4
|
import { refToken } from "../core/tokens.js";
|
|
5
5
|
import { assertAuthorableInstallFields, assertDeclaredAutoRespondFields, interpolateHost, } from "./provider-types.js";
|
|
6
|
-
import { ARCHIVE_RULE_SUFFIX,
|
|
6
|
+
import { ARCHIVE_RULE_SUFFIX, CONNECTION_RULE_PRIORITY, CONNECTION_RULE_SUFFIXES, GIT_READ_RULE_SUFFIX, GIT_WRITE_RULE_SUFFIX, } from "./egress-preset.js";
|
|
7
|
+
import { normalizeCredentialHosts } from "./secret.js";
|
|
7
8
|
import { envImportMarker, isEnvImportMarker, parseEnvImportMarker, registerImport, resolveManagedSlug, validateExplicitSlug, } from "./references.js";
|
|
8
9
|
import { copyConditions, flattenConditions } from "./workflow-filter.js";
|
|
9
10
|
const MANAGED_CHAT_PROVIDER_IDS = new Set(["slack", "teams"]);
|
|
@@ -52,11 +53,11 @@ export const Auth = {
|
|
|
52
53
|
const GIT_TRANSPORT_MODES = ["readWrite", "read", "none"];
|
|
53
54
|
const EVERY_PATH = ["*"];
|
|
54
55
|
const EVERY_METHOD = ["*"];
|
|
56
|
+
const EVERY_HOST = ["*"];
|
|
55
57
|
/**
|
|
56
58
|
* The catalog declares an archive HOST but no path families for it, because there is no protocol conversation
|
|
57
59
|
* there to describe: a clone is redirected to it and downloads a pack. So the rule is the read verbs on every
|
|
58
|
-
* path
|
|
59
|
-
* authenticate.
|
|
60
|
+
* path.
|
|
60
61
|
*/
|
|
61
62
|
const ARCHIVE_METHODS = ["GET", "HEAD"];
|
|
62
63
|
/**
|
|
@@ -78,8 +79,8 @@ export function connectionLabel(connection) {
|
|
|
78
79
|
/**
|
|
79
80
|
* The ONE implementation behind all four connection forms (the managed construct and the three imports), so an
|
|
80
81
|
* imported reference expands to exactly what the construct does. Everything it emits is read off the provider
|
|
81
|
-
* catalog — hosts
|
|
82
|
-
*
|
|
82
|
+
* catalog — hosts and the transport's path families — so a new provider's git transport is catalog data
|
|
83
|
+
* rather than a change here.
|
|
83
84
|
*/
|
|
84
85
|
export function connectionEgressBundle(connection, options = {}) {
|
|
85
86
|
const provider = connection.provider;
|
|
@@ -92,7 +93,7 @@ export function connectionEgressBundle(connection, options = {}) {
|
|
|
92
93
|
const entries = [
|
|
93
94
|
...providerApiRules(connection, baseName),
|
|
94
95
|
...(provider.gitTransport !== undefined && gitMode !== "none"
|
|
95
|
-
? gitTransportRules(
|
|
96
|
+
? gitTransportRules(provider.gitTransport, baseName, gitMode)
|
|
96
97
|
: []),
|
|
97
98
|
];
|
|
98
99
|
// An EMPTY bundle is a certain authoring mistake, not a no-op: the provider declares no api hosts and no git
|
|
@@ -126,21 +127,7 @@ function assertUnreservedLabel(label, baseName) {
|
|
|
126
127
|
`by something that does not: the label is a managed connection's slug, an import's verbatim slug or ` +
|
|
127
128
|
`id, or — for Connection.fromEnv — the env variable's NAME.`);
|
|
128
129
|
}
|
|
129
|
-
|
|
130
|
-
return { connectionId: connection.connectionId, valueTemplate };
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* The interpolated `apiHosts`, partitioned by the catalog's declared credentialed subset; an ABSENT
|
|
134
|
-
* `credentialedApiHosts` means every host may carry the credential and emits the single unsuffixed rule.
|
|
135
|
-
*
|
|
136
|
-
* A declared subset still puts the BASE name on one of its two halves, and that is load-bearing: every bundle
|
|
137
|
-
* must claim the name a plain `EgressPolicy.allow(connection)` claims, since the duplicate-name synth error is
|
|
138
|
-
* the whole mechanism behind the bundle superseding it. A bundle claiming neither half would let a retained
|
|
139
|
-
* `allow(connection)` synthesize silently beside it and credential every api host at the same priority — and
|
|
140
|
-
* at that tie the platform prefers the credentialed rule, so the host the partition keeps anonymous would get
|
|
141
|
-
* the token pushed at it. So the base name goes to the credentialed half whenever it names any host, and
|
|
142
|
-
* either half is omitted when it would name none.
|
|
143
|
-
*/
|
|
130
|
+
/** The interpolated `apiHosts` as one rule under the base name, the name `allow(connection)` also claims. */
|
|
144
131
|
function providerApiRules(connection, baseName) {
|
|
145
132
|
const provider = connection.provider;
|
|
146
133
|
const ctx = { providerId: provider.id, ruleName: baseName };
|
|
@@ -148,58 +135,16 @@ function providerApiRules(connection, baseName) {
|
|
|
148
135
|
// A rule over no hosts matches no request, so a provider with no api hosts contributes no API rule at all.
|
|
149
136
|
if (hosts.length === 0)
|
|
150
137
|
return [];
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
if (declared === undefined) {
|
|
154
|
-
return [
|
|
155
|
-
connectionCredentialedRule({
|
|
156
|
-
name: baseName,
|
|
157
|
-
hosts,
|
|
158
|
-
priority: CONNECTION_RULE_PRIORITY,
|
|
159
|
-
paths: EVERY_PATH,
|
|
160
|
-
methods: EVERY_METHOD,
|
|
161
|
-
credential,
|
|
162
|
-
}),
|
|
163
|
-
];
|
|
164
|
-
}
|
|
165
|
-
const credentialed = new Set(declared.map((host) => interpolateHost(host, connection.installValues, ctx)));
|
|
166
|
-
// A declared credentialed host that is not one of the provider's own api hosts is a silent CATALOG defect:
|
|
167
|
-
// the intended-credentialed host would fall into the credential-free remainder and every request to it would
|
|
168
|
-
// go out anonymous. Named here rather than discovered as a 401 in a sandbox.
|
|
169
|
-
const stranger = [...credentialed].find((host) => !hosts.includes(host));
|
|
170
|
-
if (stranger !== undefined) {
|
|
171
|
-
throw new Error(`connection egress bundle '${baseName}': provider '${provider.id}' declares credentialed api host ` +
|
|
172
|
-
`'${stranger}', which is not one of its api hosts ${JSON.stringify(hosts)}. This is a provider ` +
|
|
173
|
-
`catalog defect — report it rather than working around it in the app.`);
|
|
174
|
-
}
|
|
175
|
-
const credentialedHosts = hosts.filter((host) => credentialed.has(host));
|
|
176
|
-
const remainder = hosts.filter((host) => !credentialed.has(host));
|
|
177
|
-
const credentialFreeRule = (name) => ({
|
|
178
|
-
name,
|
|
179
|
-
action: "allow",
|
|
180
|
-
hosts: remainder,
|
|
181
|
-
priority: CONNECTION_RULE_PRIORITY,
|
|
182
|
-
paths: [...EVERY_PATH],
|
|
183
|
-
methods: [...EVERY_METHOD],
|
|
184
|
-
});
|
|
185
|
-
// The declared subset names no host at all: there is no credentialed half, so the credential-free half IS
|
|
186
|
-
// the bundle's api rule and takes the base name over every host (`hosts` was checked non-empty above).
|
|
187
|
-
if (credentialedHosts.length === 0)
|
|
188
|
-
return [credentialFreeRule(baseName)];
|
|
189
|
-
const rules = [
|
|
190
|
-
connectionCredentialedRule({
|
|
138
|
+
return [
|
|
139
|
+
{
|
|
191
140
|
name: baseName,
|
|
192
|
-
|
|
141
|
+
action: "allow",
|
|
142
|
+
hosts,
|
|
193
143
|
priority: CONNECTION_RULE_PRIORITY,
|
|
194
|
-
paths: EVERY_PATH,
|
|
195
|
-
methods: EVERY_METHOD,
|
|
196
|
-
|
|
197
|
-
}),
|
|
144
|
+
paths: [...EVERY_PATH],
|
|
145
|
+
methods: [...EVERY_METHOD],
|
|
146
|
+
},
|
|
198
147
|
];
|
|
199
|
-
// Omitted when the declared subset is every host: an empty-host rule would allow nothing.
|
|
200
|
-
if (remainder.length > 0)
|
|
201
|
-
rules.push(credentialFreeRule(`${baseName}${CREDENTIAL_FREE_RULE_SUFFIX}`));
|
|
202
|
-
return rules;
|
|
203
148
|
}
|
|
204
149
|
/**
|
|
205
150
|
* Each path family becomes ONE rule carrying that family's methods and paths, because the platform matches a
|
|
@@ -208,16 +153,15 @@ function providerApiRules(connection, baseName) {
|
|
|
208
153
|
* under `{ git: "read" }` no rule names the push path at all, so the default deny refuses it structurally
|
|
209
154
|
* rather than by a fence someone has to remember to write.
|
|
210
155
|
*/
|
|
211
|
-
function gitTransportRules(
|
|
212
|
-
const credential = connectionCredential(connection, gitCarriageTemplate(connection, transport, baseName));
|
|
156
|
+
function gitTransportRules(transport, baseName, mode) {
|
|
213
157
|
const rules = [];
|
|
214
158
|
// The suffixes come from the shared reserved vocabulary rather than being spelled here, so the set a label
|
|
215
159
|
// is checked against and the set this function emits cannot drift apart.
|
|
216
|
-
const read = pathFamilyRule(`${baseName}${GIT_READ_RULE_SUFFIX}`, transport.host, transport.readPaths
|
|
160
|
+
const read = pathFamilyRule(`${baseName}${GIT_READ_RULE_SUFFIX}`, transport.host, transport.readPaths);
|
|
217
161
|
if (read !== undefined)
|
|
218
162
|
rules.push(read);
|
|
219
163
|
if (mode === "readWrite") {
|
|
220
|
-
const write = pathFamilyRule(`${baseName}${GIT_WRITE_RULE_SUFFIX}`, transport.host, transport.writePaths
|
|
164
|
+
const write = pathFamilyRule(`${baseName}${GIT_WRITE_RULE_SUFFIX}`, transport.host, transport.writePaths);
|
|
221
165
|
if (write !== undefined)
|
|
222
166
|
rules.push(write);
|
|
223
167
|
}
|
|
@@ -237,31 +181,17 @@ function gitTransportRules(connection, transport, baseName, mode) {
|
|
|
237
181
|
* The family's distinct methods and paths, in catalog declaration order. `undefined` when the family is empty,
|
|
238
182
|
* so a catalog declaring no write paths yields no write rule rather than a rule matching nothing.
|
|
239
183
|
*/
|
|
240
|
-
function pathFamilyRule(name, host, family
|
|
184
|
+
function pathFamilyRule(name, host, family) {
|
|
241
185
|
if (family.length === 0)
|
|
242
186
|
return undefined;
|
|
243
|
-
return
|
|
187
|
+
return {
|
|
244
188
|
name,
|
|
189
|
+
action: "allow",
|
|
245
190
|
hosts: [host],
|
|
246
191
|
priority: CONNECTION_RULE_PRIORITY,
|
|
247
192
|
paths: [...new Set(family.map((entry) => entry.path))],
|
|
248
193
|
methods: [...new Set(family.map((entry) => entry.method))],
|
|
249
|
-
|
|
250
|
-
});
|
|
251
|
-
}
|
|
252
|
-
/**
|
|
253
|
-
* `${authorization.<carriage>}` is the platform's placeholder for this connection's credential shaped for that
|
|
254
|
-
* carriage. The name comes from the catalog and the rendering is the broker's; orchestra composes the address and
|
|
255
|
-
* nothing else.
|
|
256
|
-
*/
|
|
257
|
-
function gitCarriageTemplate(connection, transport, baseName) {
|
|
258
|
-
const carriage = transport.carriage;
|
|
259
|
-
if (typeof carriage !== "string" || carriage.trim() === "") {
|
|
260
|
-
throw new Error(`connection egress bundle '${baseName}': provider '${connection.provider.id}' declares a git transport ` +
|
|
261
|
-
`with no credential carriage, so its transport rules cannot say how the credential is presented. ` +
|
|
262
|
-
`This is a provider catalog defect — report it rather than working around it in the app.`);
|
|
263
|
-
}
|
|
264
|
-
return `\${authorization.${carriage}}`;
|
|
194
|
+
};
|
|
265
195
|
}
|
|
266
196
|
/**
|
|
267
197
|
* Refuses the two shapes that are certainly a mistake rather than a preference: an option this surface does
|
|
@@ -303,6 +233,8 @@ export class Connection extends Construct {
|
|
|
303
233
|
explicitSlug;
|
|
304
234
|
displayName;
|
|
305
235
|
whereConditions;
|
|
236
|
+
team;
|
|
237
|
+
hosts;
|
|
306
238
|
constructor(scope, id, props) {
|
|
307
239
|
super(scope, id);
|
|
308
240
|
validateExplicitSlug(this, props.slug, "connection");
|
|
@@ -329,6 +261,8 @@ export class Connection extends Construct {
|
|
|
329
261
|
this.explicitSlug = props.slug;
|
|
330
262
|
this.displayName = props.name ?? id;
|
|
331
263
|
this.whereConditions = props.where !== undefined ? flattenConditions(props.where) : [];
|
|
264
|
+
this.team = props.team;
|
|
265
|
+
this.hosts = props.hosts !== undefined ? normalizeCredentialHosts(props.hosts, label) : [...EVERY_HOST];
|
|
332
266
|
this.connectionId = refToken("connection", this.node.path);
|
|
333
267
|
}
|
|
334
268
|
get slug() {
|
|
@@ -362,7 +296,10 @@ export class Connection extends Construct {
|
|
|
362
296
|
slug,
|
|
363
297
|
auth,
|
|
364
298
|
install: { provider: structuredClone(this.installValues ?? {}) },
|
|
299
|
+
hosts: [...this.hosts],
|
|
365
300
|
};
|
|
301
|
+
if (this.team !== undefined)
|
|
302
|
+
payload.teamId = this.team.teamId;
|
|
366
303
|
// Emitted only when declared, so a filter-less connection's canonical bytes are unchanged.
|
|
367
304
|
if (this.whereConditions.length > 0)
|
|
368
305
|
payload.where = copyConditions(this.whereConditions);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Construct } from "../core/construct.js";
|
|
2
2
|
import type { PlanResource } from "../core/plan.js";
|
|
3
3
|
import type { ProviderHandle } from "./provider-types.js";
|
|
4
|
-
import type { IResource, ISecret } from "./interfaces.js";
|
|
4
|
+
import type { IResource, ISecret, ITeam } from "./interfaces.js";
|
|
5
5
|
export interface IConnector extends IResource {
|
|
6
6
|
/** Accepts a platform id or a slug interchangeably — one rule, stated on `IResource`. */
|
|
7
7
|
readonly connectorId: string;
|
|
@@ -32,6 +32,8 @@ export interface ConnectorProps<C extends ProviderHandle = ProviderHandle> {
|
|
|
32
32
|
botSecret?: ISecret;
|
|
33
33
|
webhookSecret?: ISecret;
|
|
34
34
|
privateKey?: ISecret;
|
|
35
|
+
/** Fixed at create; undeclared, the connector is created in Shared. */
|
|
36
|
+
team?: ITeam;
|
|
35
37
|
}
|
|
36
38
|
/**
|
|
37
39
|
* `[construct prop, wire field]` pairs — the ONE list the construct serializes through and the apply/diff
|
|
@@ -124,6 +124,8 @@ export class Connector extends Construct {
|
|
|
124
124
|
if (secret !== undefined)
|
|
125
125
|
payload[wire] = secret.secretId;
|
|
126
126
|
}
|
|
127
|
+
if (this.props.team !== undefined)
|
|
128
|
+
payload.teamId = this.props.team.teamId;
|
|
127
129
|
return { kind: "connector", path: this.node.path.join("/"), slug, managed: true, payload };
|
|
128
130
|
}
|
|
129
131
|
static fromSlug(scope, slug) {
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* The fields are the platform's own `EgressPolicyRule` fields, so `applyPreset` folds an entry onto the
|
|
7
|
-
* builder verbatim rather than translating it: `paths` are globs matched query-blind, and a higher `priority`
|
|
8
|
-
* is evaluated first.
|
|
2
|
+
* The allow rule shape a bundle entry has. The fields are the platform's own `EgressPolicyRule` fields, so
|
|
3
|
+
* `applyPreset` folds an entry onto the builder verbatim rather than translating it: `paths` are globs matched
|
|
4
|
+
* query-blind, and a higher `priority` is evaluated first.
|
|
9
5
|
*/
|
|
10
6
|
export type PresetRule = {
|
|
11
7
|
name: string;
|
|
@@ -22,23 +18,11 @@ export type PresetRule = {
|
|
|
22
18
|
*/
|
|
23
19
|
export type EgressRuleBundle = ReadonlyArray<PresetRule>;
|
|
24
20
|
/**
|
|
25
|
-
* @internal — strictly above the preset's 100, so a connection's
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* It lives in this module, which imports nothing at runtime, because both `environment.ts` and `connection.ts`
|
|
30
|
-
* read it and neither may import the other.
|
|
21
|
+
* @internal — strictly above the preset's 100, so a connection's rule wins a host an anonymous preset row
|
|
22
|
+
* also opens. It lives in this module, which imports nothing at runtime, because both `environment.ts` and
|
|
23
|
+
* `connection.ts` read it.
|
|
31
24
|
*/
|
|
32
25
|
export declare const CONNECTION_RULE_PRIORITY = 300;
|
|
33
|
-
/**
|
|
34
|
-
* @internal — the two reserved suffixes of the credentialed/credential-free host split. The author-declared
|
|
35
|
-
* split (`allow(connection, { credentialHosts })`) emits BOTH, because its base name is the author's own
|
|
36
|
-
* `name:` and neither partition may quietly take it. The catalog-declared one (`connection.egressPolicy()`)
|
|
37
|
-
* emits only `-credential-free`, because there the base name is derived and the bundle must claim it — that
|
|
38
|
-
* ownership is the fence keeping a retained `allow(connection)` from coexisting with a bundle.
|
|
39
|
-
*/
|
|
40
|
-
export declare const CREDENTIAL_RULE_SUFFIX = "-credential";
|
|
41
|
-
export declare const CREDENTIAL_FREE_RULE_SUFFIX = "-credential-free";
|
|
42
26
|
/**
|
|
43
27
|
* @internal — declared here rather than inline at their one mint site because the whole set is a single
|
|
44
28
|
* reserved vocabulary (see {@link CONNECTION_RULE_SUFFIXES}): a tail spelled in one file and reserved in
|
|
@@ -57,38 +41,9 @@ export declare const ARCHIVE_RULE_SUFFIX = "-archive";
|
|
|
57
41
|
* second, and it reports a duplicate rule when the thing that can actually be changed is the connection's
|
|
58
42
|
* slug. With it the derived names are collision-free by construction, because a collision between distinct
|
|
59
43
|
* labels would require one suffix here to be a proper suffix of another, and none is (pinned by a test, so a
|
|
60
|
-
*
|
|
44
|
+
* fourth tail cannot quietly break the argument).
|
|
61
45
|
*/
|
|
62
46
|
export declare const CONNECTION_RULE_SUFFIXES: readonly string[];
|
|
63
|
-
/**
|
|
64
|
-
* @internal — the platform's placeholder for the connection's fully-shaped `Authorization` value: at hydration
|
|
65
|
-
* the broker derives the scheme from the connection's auth mode and the provider catalog's carriage
|
|
66
|
-
* declaration, rather than from a scheme this SDK hardcoded.
|
|
67
|
-
*/
|
|
68
|
-
export declare const AUTHORIZATION_TEMPLATE = "${authorization}";
|
|
69
|
-
/**
|
|
70
|
-
* @internal — `valueTemplate` is a NAME of a rendering the platform performs, never a credential value:
|
|
71
|
-
* `${authorization.gitBasic}` is the git smart-HTTP shape (HTTP Basic with the minted installation token, the
|
|
72
|
-
* only carriage GitHub's git transport accepts). Which one an entry gets is read off the provider catalog, so
|
|
73
|
-
* no carriage knob ever reaches an author.
|
|
74
|
-
*/
|
|
75
|
-
export interface ConnectionRuleCredential {
|
|
76
|
-
readonly connectionId: string;
|
|
77
|
-
readonly valueTemplate: string;
|
|
78
|
-
}
|
|
79
|
-
/** @internal */
|
|
80
|
-
export interface ConnectionRuleFields {
|
|
81
|
-
readonly name: string;
|
|
82
|
-
readonly hosts: readonly string[];
|
|
83
|
-
readonly priority: number;
|
|
84
|
-
readonly paths: readonly string[];
|
|
85
|
-
readonly methods: readonly string[];
|
|
86
|
-
readonly credential: ConnectionRuleCredential;
|
|
87
|
-
}
|
|
88
|
-
/** @internal — the single call site is `connection.egressPolicy()`, which composes every field from catalog data. */
|
|
89
|
-
export declare function connectionCredentialedRule(fields: ConnectionRuleFields): PresetRule;
|
|
90
|
-
/** @internal */
|
|
91
|
-
export declare function connectionCredentialOf(entry: PresetRule): ConnectionRuleCredential | undefined;
|
|
92
47
|
/**
|
|
93
48
|
* Each entry is a **function**, not a constant, for two reasons: it returns a fresh bundle per call (nothing
|
|
94
49
|
* shared, nothing mutable in common), and future configuration — optional extra domains, tenant-scoping the
|