Skip to content

Models: D

View as Markdown
  • nodes: list[kindgi.client.Node]
  • edges: list[kindgi.client.Edge]
  • run: kindgi.client.FinishedRun
  • improve_run: kindgi.client.ImproveRun (improveRun on the wire)
  • endpoint_id: str (endpointId on the wire)
  • id: uuid.UUID
  • tenant_id: uuid.UUID (tenantId on the wire)
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • flow_id: str (flowId on the wire)
  • flow_version: str (flowVersion on the wire)
  • flow_version_via: Optional[Annotated[Union[Literal['explicit', 'pinned', 'latest'], str], <kindgi.client._open.OpenEnum object at 0x107dd6b90>]] (flowVersionVia on the wire) (optional)
  • flow_pinned_scope: Optional[Annotated[kindgi.client.PinScopeTenant | kindgi.client.PinScopeOrg | kindgi.client.PinScopeProject | kindgi.client.PinScopeUnrecognized, <kindgi.client._open.OpenUnion object at 0x108bb6710>]] (flowPinnedScope on the wire) (optional)
  • status: Union[Literal['pending', 'running', 'suspended', 'completed', 'failed', 'cancelled'], str]
  • dry_run: bool (dryRun on the wire)
  • created_at: AwareDatetime (createdAt on the wire)
  • updated_at: AwareDatetime (updatedAt on the wire)
  • completed_at: AwareDatetime | None (completedAt on the wire) (optional)
  • failure_message: str | None (failureMessage on the wire) (optional)
  • failure: kindgi.client.RunFailure | None (optional)
  • output: Any | None (optional)
  • content_erased_at: AwareDatetime | None (contentErasedAt on the wire) (optional)
  • parent_run_id: uuid.UUID | None (parentRunId on the wire) (optional)
  • parent_node_id: str | None (parentNodeId on the wire) (optional)
  • agent: kindgi.client.RunAgent | None (optional)
  • waiting_for: kindgi.client.RunWaitingFor | None (waitingFor on the wire) (optional)
  • trigger: kindgi.client.RunTrigger | None (optional)
  • started_by: Optional[Annotated[Union[Literal['person', 'key', 'schedule', 'webhook', 'event', 'mail'], str], <kindgi.client._open.OpenEnum object at 0x107dd6b90>]] (startedBy on the wire) (optional)
  • acts_for: str | None (actsFor on the wire) (optional)
  • tools_allowed_unattended: list[str] | None (toolsAllowedUnattended on the wire) (optional)
  • replay_of: uuid.UUID | None (replayOf on the wire) (optional)
  • test_run_id: str | None (testRunId on the wire) (optional)
  • versions: kindgi.client.FlowVersionOverrides | None (optional)
  • segments: list[kindgi.client.ScopeSegment] | None (optional)
  • trace_id: str | None (traceId on the wire) (optional)
  • public_access_token: str | None (publicAccessToken on the wire) (optional)
  • public_access_token_expires_at: AwareDatetime | None (publicAccessTokenExpiresAt on the wire) (optional)
  • sequence: int
  • kind: str
  • node_id: str | None (nodeId on the wire) (optional)
  • payload: Any | None (optional)
  • timestamp: AwareDatetime | str

A system key (kgi_sy_…): the operator's, acting in no tenant. Never its secret.

  • id: str
  • label: str | None (optional)
  • scopes: list[Annotated[Union[Literal['system:tenants', 'system:tenants:create', 'system:tenants:image-prefix', 'system:tenants:production', 'system:tenants:limits', 'system:tenants:contacts', 'system:tenants:purge', 'system:suspend', 'system:deployments', 'system:pack-env', 'system:env-refs', 'system:usage:read', 'system:license', 'kindgi:system'], str], <kindgi.client._open.OpenEnum object at 0x107dd6b90>]]
  • created_at: AwareDatetime (createdAt on the wire)
  • expires_at: AwareDatetime | None (expiresAt on the wire) (optional)
  • revoked_at: AwareDatetime | None (revokedAt on the wire) (optional)
  • minted_by: str (mintedBy on the wire)
  • user_id: str (userId on the wire)
  • email: str
  • display_name: str | None (displayName on the wire) (optional)

An API key. Never includes the secret. principal is whom it acts for; absent on a key that is a service account of its own (service_account:<tokenId>), as keys minted before principals are.

  • token_id: uuid.UUID (tokenId on the wire)
  • principal: kindgi.client.ApiKeyPrincipal | None (optional)
  • role: Union[Literal['admin', 'member'], str]
  • capabilities: list[kindgi.client.Capability]
  • label: str | None (optional)
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • created_by: str | None (createdBy on the wire) (optional)
  • created_at: AwareDatetime (createdAt on the wire)
  • expires_at: AwareDatetime | None (expiresAt on the wire) (optional)
  • revoked_at: AwareDatetime | None (revokedAt on the wire) (optional)
  • last_used_at: AwareDatetime | None (lastUsedAt on the wire) (optional)
  • blob_id: str (blobId on the wire)
  • tenant_id: uuid.UUID (tenantId on the wire)
  • name: str
  • content_type: str (contentType on the wire)
  • size: int
  • hash: str
  • tags: dict[str, str]
  • owner_run_id: uuid.UUID | None (ownerRunId on the wire) (optional)
  • project_id: str | None (projectId on the wire) (optional)
  • created_by: str | None (createdBy on the wire) (optional)
  • created_at: AwareDatetime (createdAt on the wire)
  • bucket: str | None (optional)
  • key: str | None (optional)
  • id: str
  • tenant_id: str (tenantId on the wire)
  • timestamp: AwareDatetime
  • actor_subject: str (actorSubject on the wire)
  • on_behalf_subject: str | None (onBehalfSubject on the wire) (optional)
  • action: str
  • resource: str
  • outcome: Union[Literal['allowed', 'denied'], str]
  • reason: str
  • failing: str | None (optional)
  • evidence: dict[str, Any] | None (optional)
  • correlation_id: str | None (correlationId on the wire) (optional)
  • run_id: str | None (runId on the wire) (optional)
  • latency_ms: float | None (latencyMs on the wire) (optional)
  • blob_id: str (blobId on the wire)
  • deleted: bool
  • root: str
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • agents: list[kindgi.client.DeployCheckAgentId]
  • blocks: list[kindgi.client.DeployCheckBodyBlock]
  • replace: list[kindgi.client.DeployReplaceBlock] | None (optional)
  • id: str
  • version: str
  • replaced: list[kindgi.client.ReplacedItem]
  • not_needed: list[str] (notNeeded on the wire)
  • block_id: str (blockId on the wire)
  • in_files: str (inFiles on the wire)
  • runs: kindgi.client.Runs
  • pr: kindgi.client.Pr1 | None (optional)
  • block_id: str (blockId on the wire)
  • reason: str
  • data: list[kindgi.client.DeploymentRecord]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)
  • project_id: str | None (projectId on the wire) (optional)
  • pack_id: str | None (packId on the wire) (optional)
  • kept_builds: int | None (keptBuilds on the wire) (optional)
  • tools: list[kindgi.client.DeploymentContentsTool]
  • guardrails: list[kindgi.client.DeploymentContentsGuardrail]
  • agents: list[kindgi.client.DeploymentContentsAgent]
  • flows: list[kindgi.client.DeploymentContentsFlow]
  • blocks: list[kindgi.client.DeploymentContentsBlock] | None (optional)
  • id: str
  • version: str
  • authored_version: str | None (authoredVersion on the wire) (optional)
  • reason: Optional[Annotated[Union[Literal['pins-changed', 'unpinned', 'version-taken'], str], <kindgi.client._open.OpenEnum object at 0x107dd6b90>]] (optional)
  • new_version: bool | None (newVersion on the wire) (optional)
  • pin_changes: list[kindgi.client.PinChange] | None (pinChanges on the wire) (optional)
  • id: str
  • version: str | None (optional)
  • id: str
  • version: str
  • authored_version: str | None (authoredVersion on the wire) (optional)
  • reason: Optional[Annotated[Union[Literal['pins-changed', 'unpinned', 'version-taken'], str], <kindgi.client._open.OpenEnum object at 0x107dd6b90>]] (optional)
  • new_version: bool | None (newVersion on the wire) (optional)
  • pin_changes: list[kindgi.client.PinChange] | None (pinChanges on the wire) (optional)
  • id: str
  • version: str | None (optional)
  • id: str
  • version: str | None (optional)

Its pack service's status, when the server routes each pack call to the deployment that shipped the tool (KINDGI_PACK_ROUTING=per-deployment). Absent otherwise, and for a deployment that ships nothing a pack service serves (no tool, and no guardrail check but built-in ones: a pack of agents and flows only), which needs none. pending: no pack service yet, and calls to its tools fail (pack-endpoint-pending) rather than go to another deployment. ready: calls go to its own pack service. cleared: its pack service was taken down, and calls fail (pack-endpoint-cleared); it carries waiting or retired to say whether it comes back. Carries no URL and no token.

  • status: Union[Literal['pending', 'ready', 'cleared'], str]
  • since: AwareDatetime
  • problem: kindgi.client.DeploymentEndpointProblem | None (optional)
  • waiting: Optional[Literal[True]] (optional)
  • retired: str | None (optional)
  • pack_env_problem: kindgi.client.PackEnvProblem | None (packEnvProblem on the wire) (optional)
  • kept_for: list[kindgi.client.DeploymentKeptFor] | None (keptFor on the wire) (optional)
  • kept_for_total: int | None (keptForTotal on the wire) (optional)

While the deployment waits for a pack service (pending, or cleared and waiting): the last reason recorded while it waited. A ready endpoint has none, nor a retired one. A fixed code, never free text.

  • code: str
  • since: AwareDatetime

One thing a build's pack service is kept for. To let the build go, unregister it: kindgi tools|agents|flows unregister <id> <version>, kindgi guardrails unregister <id>.

  • kind: str
  • id: str
  • version: str | None (optional)
  • registered: Optional[Literal[True]] (optional)
  • held: Optional[Literal[True]] (optional)
  • status: Union[Literal['pinned', 'pending-approval', 'refused', 'superseded', 'rejected', 'expired'], str]
  • change_id: uuid.UUID (changeId on the wire)
  • release_gate: kindgi.client.ReleaseGateRef | None (releaseGate on the wire) (optional)
  • approval_id: str | None (approvalId on the wire) (optional)
  • checks: list[kindgi.client.GateCheck] | None (optional)
  • id: str
  • version: str
  • pinned: bool
  • gate: kindgi.client.DeploymentPinGate | None (optional)
  • id: str
  • version: str
  • tools: int
  • guardrails: int
  • agents: int
  • flows: int
  • deployment: kindgi.client.DeploymentRecord
  • created: bool
  • moved: kindgi.client.PromotionMoves
  • left_behind: list[kindgi.client.LeftBehindVersion] | None (leftBehind on the wire) (optional)
  • pinned: list[kindgi.client.DeploymentPinnedAgent] | None (optional)
  • pinned_flows: list[kindgi.client.DeploymentPinnedFlow] | None (pinnedFlows on the wire) (optional)
  • block_check: kindgi.client.PromotionBlockCheck | None (blockCheck on the wire) (optional)
  • to_project_id: str (toProjectId on the wire)
  • reason: str | None (optional)
  • pin: bool | None (optional)
  • replace: list[kindgi.client.DeployReplaceBlock] | None (optional)
  • moves: kindgi.client.PromotionMoves
  • values: list[kindgi.client.DeploymentValue]
  • next_environment: kindgi.client.PromotionNextEnvironment (nextEnvironment on the wire)
  • env_name: str | None (envName on the wire) (optional)
  • left_behind: list[kindgi.client.LeftBehindVersion] | None (leftBehind on the wire) (optional)
  • to_project_id: str (toProjectId on the wire)
  • deployment_id: str (deploymentId on the wire)
  • tenant_id: uuid.UUID (tenantId on the wire)
  • image_ref: str (imageRef on the wire)
  • image_digest: str (imageDigest on the wire)
  • artifact_version: str (artifactVersion on the wire)
  • index_hash: str (indexHash on the wire)
  • signer_key_id: str (signerKeyId on the wire)
  • signer_public_key: str (signerPublicKey on the wire)
  • signature: str
  • published_at: AwareDatetime (publishedAt on the wire)
  • activated_at: AwareDatetime (activatedAt on the wire)
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • pack_env: kindgi.client.PackEnvDeclaration | None (packEnv on the wire) (optional)
  • promoted_from_deployment_id: str | None (promotedFromDeploymentId on the wire) (optional)
  • pack_id: str | None (packId on the wire) (optional)
  • endpoint: kindgi.client.DeploymentEndpoint | None (optional)
  • primitives: kindgi.client.DeploymentPrimitiveCounts
  • contents: kindgi.client.DeploymentContents
  • source: kindgi.client.DeploymentSource | None (optional)
  • replaced: list[kindgi.client.DeploymentReplacedBlock] | None (optional)
  • image_ref: str (imageRef on the wire)
  • artifact_version: str (artifactVersion on the wire)
  • index_hash: str (indexHash on the wire)
  • signer_key_id: str (signerKeyId on the wire)
  • signer_public_key: str (signerPublicKey on the wire)
  • signature: str
  • published_at: AwareDatetime (publishedAt on the wire)
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • source: kindgi.client.DeploymentSourceBody | None (optional)
  • replace: list[kindgi.client.DeployReplaceBlock] | None (optional)
  • block_id: str (blockId on the wire)
  • from_: str (from on the wire)
  • to: str
  • reason: str
  • by: kindgi.client.PinActor
  • env_name: str (envName on the wire)
  • secrets: list[kindgi.client.Secrets | kindgi.client.Secrets1]
  • resolved: int
  • added: int
  • references: list[kindgi.client.Reference]

Where a deployment's pack lives in git, as kindgi deploy read it from the work tree it ran in. Absent for a deploy made outside git, one made before deploys said, and from a runtime that doesn't keep it.

  • repo: str | None (optional)
  • path: str
  • commit: str
  • branch: str | None (optional)
  • dirty: bool
  • block_files: dict[str, str] (blockFiles on the wire)

Where the pack lives in git, when the deploy runs inside a work tree. The deployment keeps it with each block's file from the image's index. A field it doesn't know is ignored. Not covered by the signature.

  • repo: str | None (optional)
  • path: str
  • commit: str
  • branch: str | None (optional)
  • dirty: bool
  • primitive: Literal['tool', 'guardrail', 'agent', 'flow', 'block']
  • index: int
  • id: str | None (optional)
  • path: str
  • message: str
  • name: str
  • kind: str
  • needed_by: kindgi.client.DeploymentValueNeededBy (neededBy on the wire)
  • found_at: Optional[Annotated[Union[Literal['project', 'org', 'tenant'], str], <kindgi.client._open.OpenEnum object at 0x107dd6b90>]] (foundAt on the wire) (optional)
  • problem: str | None (optional)
  • data: list[kindgi.client.DeploymentValue]
  • type: str
  • id: str
  • version: str | None (optional)
  • root: str
  • key: str
  • rank_before: int | None (rankBefore on the wire) (optional)