> ## Documentation Index
> Fetch the complete documentation index at: https://docs.checkfu.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Automations

> List Automations in the selected Workspace, filterable by agent_id (the Agent an agent-target Automation runs; non-agent targets never match), principal…



## OpenAPI

````yaml /openapi.json get /v1/automations
openapi: 3.1.0
info:
  title: Checkfu API
  version: '2026-08-31'
  description: >-
    Authentication is declared per operation: API-key, runtime, or connector
    bearer; Automation signature; or credential-free pairing redemption. Every
    general Checkfu REST request requires the dated `Checkfu-Version` header
    (one of: 2026-08-31); the three MCP JSON-RPC transports use
    `MCP-Protocol-Version`, A2A uses `A2A-Version`, and the provider OAuth
    callback carries neither Checkfu header. API keys resolve one Workspace
    without a request selector; authenticated responses identify it with
    `Checkfu-Workspace-Id`.
servers:
  - url: https://api.checkfu.com
security:
  - bearerAuth: []
tags:
  - name: organizations
  - name: sourceRepositories
  - name: tenants
  - name: workspaces
  - name: principals
  - name: principalGroups
  - name: principalAccessCredentials
  - name: apiKeys
  - name: agents
  - name: harnessRuntime
  - name: permissionAssignments
  - name: actionPolicies
  - name: files
  - name: memoryStores
  - name: modelCredentials
  - name: modelRoutingProfiles
  - name: toolSources
  - name: skills
  - name: skillSources
  - name: agentBlueprints
  - name: skillProposals
  - name: instructionProposals
  - name: catalog
  - name: managedTools
  - name: concepts
  - name: support
  - name: connections
  - name: connectionVaults
  - name: connectionAssignments
  - name: connectedRuntimes
  - name: fileTrees
  - name: collaboration
  - name: automationGraphs
  - name: automations
  - name: actionApprovals
  - name: standingApprovals
  - name: workloadReviewPolicies
  - name: usage
  - name: models
  - name: outcomes
  - name: budgets
  - name: billing
  - name: sessions
  - name: audit
  - name: sessionExports
  - name: runs
  - name: runnerPools
  - name: transcripts
  - name: sessionWatches
  - name: sessionCapsules
  - name: sessionTrajectories
  - name: webhookEndpoints
  - name: integrationGateway
  - name: workEnvironments
  - name: computers
  - name: computerScreens
  - name: computerBrowserObservations
  - name: computerBrowserActions
  - name: environments
  - name: computerHeadlessOperations
  - name: vaults
  - name: apiMcp
  - name: a2a
paths:
  /v1/automations:
    get:
      tags:
        - automations
      summary: List Automations
      description: >-
        List Automations in the selected Workspace, filterable by `agent_id`
        (the Agent an agent-target Automation runs; non-agent targets never
        match), `principal`, `collaboration_space`, trigger `kind` (schedule,
        webhook, or subscription), and `status` (active or paused). Pass
        `external_id` for an exact lookup of the Automation holding that
        caller-chosen key through the workspace's unique index; that form
        returns zero or one Automation, honors `page`, and always returns
        `next_page: null`, and it composes with the other filters — a keyed
        Automation failing one of them is absent rather than returned anyway.
        Rows carry scheduler-owned state — last Session and Run and the
        persisted `next_run_at` — but never the ingest secret or the encrypted
        input.


        Checkfu support posture: alpha; hosted. Required evidence journey:
        automation-firing. Deployment-specific readiness and the latest proven
        release are available from GET /v1/support/capabilities.
      operationId: automations.listAutomations
      parameters:
        - name: checkfu-version
          in: header
          schema:
            type: string
            enum:
              - '2026-08-31'
          required: true
        - name: limit
          in: query
          schema:
            type: integer
            minimum: 1
          required: false
        - name: page
          in: query
          schema:
            type: string
            pattern: ^c1_[0-9a-z]+$
          required: false
        - name: order
          in: query
          schema:
            type: string
            enum:
              - asc
              - desc
          required: false
        - name: agent_id
          in: query
          schema:
            $ref: '#/components/schemas/AgentId'
          required: false
        - name: principal
          in: query
          schema:
            $ref: '#/components/schemas/PrincipalId'
          required: false
        - name: collaboration_space
          in: query
          schema:
            $ref: '#/components/schemas/CollaborationSpaceId'
          required: false
        - name: kind
          in: query
          schema:
            type: string
            enum:
              - schedule
              - schedule_once
              - webhook
              - subscription
              - any
          required: false
        - name: status
          in: query
          schema:
            type: string
            enum:
              - active
              - paused
          required: false
        - name: external_id
          in: query
          schema:
            type: string
            pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
          required: false
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Automation_1'
                  next_page:
                    anyOf:
                      - type: string
                      - type: 'null'
                required:
                  - data
                  - next_page
                additionalProperties: false
          headers:
            checkfu-workspace-id:
              description: The Workspace resolved from the authenticated bearer credential.
              required: true
              schema:
                $ref: '#/components/schemas/WorkspaceId'
        '400':
          description: Typed Checkfu wire error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationMalformedError'
        '401':
          description: Typed Checkfu wire error
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - type
                      - message
                      - more
                    properties:
                      type:
                        type: string
                        enum:
                          - auth.invalid_key
                      message:
                        type: string
                      more:
                        type: string
                        enum:
                          - >-
                            https://docs.checkfu.com/reference/errors#auth-invalid-key
                        description: >-
                          Stable public documentation and remedy for this error
                          type.
                    additionalProperties: false
                additionalProperties: false
        '403':
          description: >-
            The organization, tenant, or workspace backing this key is
            administratively disabled. | Deployment governance or retention
            policy denied the request.
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    required:
                      - error
                    properties:
                      error:
                        type: object
                        properties:
                          type:
                            type: string
                            enum:
                              - auth.disabled_tenancy
                          message:
                            type: string
                          more:
                            type: string
                            enum:
                              - >-
                                https://docs.checkfu.com/reference/errors#auth-disabled-tenancy
                            description: >-
                              Stable public documentation and remedy for this
                              error type.
                        required:
                          - type
                          - message
                          - more
                        additionalProperties: false
                    additionalProperties: false
                  - $ref: '#/components/schemas/PolicyDeniedError'
        '429':
          description: Typed Checkfu wire error
          headers:
            retry-after:
              description: >-
                Delay in seconds for rate limits or deployment quotas with a
                known release or UTC reset boundary
              required: false
              schema:
                type: integer
                minimum: 1
          content:
            application/json:
              schema:
                type: object
                required:
                  - error
                properties:
                  error:
                    type: object
                    required:
                      - type
                      - message
                      - more
                    properties:
                      type:
                        type: string
                        enum:
                          - budget.exceeded
                      message:
                        type: string
                      more:
                        type: string
                        enum:
                          - >-
                            https://docs.checkfu.com/reference/errors#budget-exceeded
                        description: >-
                          Stable public documentation and remedy for this error
                          type.
                    additionalProperties: false
                additionalProperties: false
        '500':
          description: >-
            An unexpected internal failure occurred; the message contains an
            opaque incident reference.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RuntimeInternalError'
      security:
        - bearerAuth: []
components:
  schemas:
    AgentId:
      type: string
      pattern: ^agent_[0-9a-f]{32}$
    PrincipalId:
      type: string
      pattern: ^prin_[0-9a-f]{32}$
    CollaborationSpaceId:
      type: string
      pattern: ^cspace_[0-9a-f]{32}$
    Automation_1:
      anyOf:
        - $ref: '#/components/schemas/Objects_130'
        - $ref: '#/components/schemas/Objects_132'
        - $ref: '#/components/schemas/Objects_134'
        - $ref: '#/components/schemas/Objects_135'
        - $ref: '#/components/schemas/Objects_136'
        - $ref: '#/components/schemas/Objects_137'
    WorkspaceId:
      type: string
      pattern: ^wrkspc_[0-9a-f]{32}$
    ValidationMalformedError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - validation.malformed
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#validation-malformed
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        The request could not be decoded or violated a declared input
        constraint.
    PolicyDeniedError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - policy.denied
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#policy-denied
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: Deployment governance or retention policy denied the request.
    RuntimeInternalError:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - runtime.internal
            message:
              type: string
            more:
              type: string
              enum:
                - https://docs.checkfu.com/reference/errors#runtime-internal
              description: Stable public documentation and remedy for this error type.
          required:
            - type
            - message
            - more
          additionalProperties: false
      required:
        - error
      additionalProperties: false
      description: >-
        An unexpected internal failure occurred; the message contains an opaque
        incident reference.
    Objects_130:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AutomationId'
        workspace_id:
          $ref: '#/components/schemas/WorkspaceId'
        version:
          type: integer
          exclusiveMinimum: 0
        name:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 255
        description:
          $ref: '#/components/schemas/Union_251'
        external_id:
          $ref: '#/components/schemas/Union_252'
        created_by:
          $ref: '#/components/schemas/PrincipalId'
        identity:
          $ref: '#/components/schemas/Objects_117'
        environment_id:
          $ref: '#/components/schemas/EnvironmentId'
        connected_runtime:
          $ref: '#/components/schemas/Union_253'
        metadata:
          $ref: '#/components/schemas/ResourceMetadata'
        status:
          $ref: '#/components/schemas/Union_223'
        paused_reason:
          $ref: '#/components/schemas/Union_254'
        last_run_at:
          $ref: '#/components/schemas/Union_255'
        last_session_id:
          $ref: '#/components/schemas/Union_256'
        last_run_id:
          $ref: '#/components/schemas/Union_257'
        next_run_at:
          $ref: '#/components/schemas/Union_258'
        created_at:
          type: string
        updated_at:
          type: string
        target:
          $ref: '#/components/schemas/Objects_118'
        collaboration_space_id:
          anyOf:
            - $ref: '#/components/schemas/CollaborationSpaceId'
            - type: 'null'
        trigger:
          $ref: '#/components/schemas/Union_229'
        input:
          $ref: '#/components/schemas/Objects_131'
      required:
        - id
        - workspace_id
        - version
        - name
        - description
        - external_id
        - created_by
        - identity
        - environment_id
        - connected_runtime
        - status
        - paused_reason
        - last_run_at
        - last_session_id
        - last_run_id
        - next_run_at
        - created_at
        - updated_at
        - target
        - collaboration_space_id
        - trigger
        - input
      additionalProperties: false
    Objects_132:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AutomationId'
        workspace_id:
          $ref: '#/components/schemas/WorkspaceId'
        version:
          type: integer
          exclusiveMinimum: 0
        name:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 255
        description:
          $ref: '#/components/schemas/Union_251'
        external_id:
          $ref: '#/components/schemas/Union_252'
        created_by:
          $ref: '#/components/schemas/PrincipalId'
        identity:
          $ref: '#/components/schemas/Objects_117'
        environment_id:
          $ref: '#/components/schemas/EnvironmentId'
        connected_runtime:
          $ref: '#/components/schemas/Union_253'
        metadata:
          $ref: '#/components/schemas/ResourceMetadata'
        status:
          $ref: '#/components/schemas/Union_223'
        paused_reason:
          $ref: '#/components/schemas/Union_254'
        last_run_at:
          $ref: '#/components/schemas/Union_255'
        last_session_id:
          $ref: '#/components/schemas/Union_256'
        last_run_id:
          $ref: '#/components/schemas/Union_257'
        next_run_at:
          $ref: '#/components/schemas/Union_258'
        created_at:
          type: string
        updated_at:
          type: string
        target:
          $ref: '#/components/schemas/Objects_118'
        collaboration_space_id:
          anyOf:
            - $ref: '#/components/schemas/CollaborationSpaceId'
            - type: 'null'
        trigger:
          $ref: '#/components/schemas/Objects_123'
        input:
          $ref: '#/components/schemas/Objects_133'
      required:
        - id
        - workspace_id
        - version
        - name
        - description
        - external_id
        - created_by
        - identity
        - environment_id
        - connected_runtime
        - status
        - paused_reason
        - last_run_at
        - last_session_id
        - last_run_id
        - next_run_at
        - created_at
        - updated_at
        - target
        - collaboration_space_id
        - trigger
        - input
      additionalProperties: false
    Objects_134:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AutomationId'
        workspace_id:
          $ref: '#/components/schemas/WorkspaceId'
        version:
          type: integer
          exclusiveMinimum: 0
        name:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 255
        description:
          $ref: '#/components/schemas/Union_251'
        external_id:
          $ref: '#/components/schemas/Union_252'
        created_by:
          $ref: '#/components/schemas/PrincipalId'
        identity:
          $ref: '#/components/schemas/Objects_117'
        environment_id:
          $ref: '#/components/schemas/EnvironmentId'
        connected_runtime:
          $ref: '#/components/schemas/Union_253'
        metadata:
          $ref: '#/components/schemas/ResourceMetadata'
        status:
          $ref: '#/components/schemas/Union_223'
        paused_reason:
          $ref: '#/components/schemas/Union_254'
        last_run_at:
          $ref: '#/components/schemas/Union_255'
        last_session_id:
          $ref: '#/components/schemas/Union_256'
        last_run_id:
          $ref: '#/components/schemas/Union_257'
        next_run_at:
          $ref: '#/components/schemas/Union_258'
        created_at:
          type: string
        updated_at:
          type: string
        target:
          $ref: '#/components/schemas/Objects_118'
        collaboration_space_id:
          $ref: '#/components/schemas/CollaborationSpaceId'
        trigger:
          type: object
          properties:
            kind:
              type: string
              enum:
                - subscription
            source:
              $ref: '#/components/schemas/Union_259'
            cron: false
            timezone: false
            dedupe_key: false
            filter: false
          required:
            - kind
            - source
          additionalProperties: false
        input:
          $ref: '#/components/schemas/Objects_133'
      required:
        - id
        - workspace_id
        - version
        - name
        - description
        - external_id
        - created_by
        - identity
        - environment_id
        - connected_runtime
        - status
        - paused_reason
        - last_run_at
        - last_session_id
        - last_run_id
        - next_run_at
        - created_at
        - updated_at
        - target
        - collaboration_space_id
        - trigger
        - input
      additionalProperties: false
    Objects_135:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AutomationId'
        workspace_id:
          $ref: '#/components/schemas/WorkspaceId'
        version:
          type: integer
          exclusiveMinimum: 0
        name:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 255
        description:
          $ref: '#/components/schemas/Union_251'
        external_id:
          $ref: '#/components/schemas/Union_252'
        created_by:
          $ref: '#/components/schemas/PrincipalId'
        identity:
          $ref: '#/components/schemas/Objects_117'
        environment_id:
          $ref: '#/components/schemas/EnvironmentId'
        connected_runtime:
          $ref: '#/components/schemas/Union_253'
        metadata:
          $ref: '#/components/schemas/ResourceMetadata'
        status:
          $ref: '#/components/schemas/Union_223'
        paused_reason:
          $ref: '#/components/schemas/Union_254'
        last_run_at:
          $ref: '#/components/schemas/Union_255'
        last_session_id:
          $ref: '#/components/schemas/Union_256'
        last_run_id:
          $ref: '#/components/schemas/Union_257'
        next_run_at:
          $ref: '#/components/schemas/Union_258'
        created_at:
          type: string
        updated_at:
          type: string
        target:
          $ref: '#/components/schemas/Union_246'
        collaboration_space_id:
          anyOf:
            - $ref: '#/components/schemas/CollaborationSpaceId'
            - type: 'null'
        trigger:
          $ref: '#/components/schemas/Union_229'
        input: false
      required:
        - id
        - workspace_id
        - version
        - name
        - description
        - external_id
        - created_by
        - identity
        - environment_id
        - connected_runtime
        - status
        - paused_reason
        - last_run_at
        - last_session_id
        - last_run_id
        - next_run_at
        - created_at
        - updated_at
        - target
        - collaboration_space_id
        - trigger
      additionalProperties: false
    Objects_136:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AutomationId'
        workspace_id:
          $ref: '#/components/schemas/WorkspaceId'
        version:
          type: integer
          exclusiveMinimum: 0
        name:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 255
        description:
          $ref: '#/components/schemas/Union_251'
        external_id:
          $ref: '#/components/schemas/Union_252'
        created_by:
          $ref: '#/components/schemas/PrincipalId'
        identity:
          $ref: '#/components/schemas/Objects_117'
        environment_id:
          $ref: '#/components/schemas/EnvironmentId'
        connected_runtime:
          $ref: '#/components/schemas/Union_253'
        metadata:
          $ref: '#/components/schemas/ResourceMetadata'
        status:
          $ref: '#/components/schemas/Union_223'
        paused_reason:
          $ref: '#/components/schemas/Union_254'
        last_run_at:
          $ref: '#/components/schemas/Union_255'
        last_session_id:
          $ref: '#/components/schemas/Union_256'
        last_run_id:
          $ref: '#/components/schemas/Union_257'
        next_run_at:
          $ref: '#/components/schemas/Union_258'
        created_at:
          type: string
        updated_at:
          type: string
        target:
          $ref: '#/components/schemas/Union_246'
        collaboration_space_id:
          anyOf:
            - $ref: '#/components/schemas/CollaborationSpaceId'
            - type: 'null'
        trigger:
          $ref: '#/components/schemas/Objects_123'
        input: false
      required:
        - id
        - workspace_id
        - version
        - name
        - description
        - external_id
        - created_by
        - identity
        - environment_id
        - connected_runtime
        - status
        - paused_reason
        - last_run_at
        - last_session_id
        - last_run_id
        - next_run_at
        - created_at
        - updated_at
        - target
        - collaboration_space_id
        - trigger
      additionalProperties: false
    Objects_137:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/AutomationId'
        workspace_id:
          $ref: '#/components/schemas/WorkspaceId'
        version:
          type: integer
          exclusiveMinimum: 0
        name:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 255
        description:
          $ref: '#/components/schemas/Union_251'
        external_id:
          $ref: '#/components/schemas/Union_252'
        created_by:
          $ref: '#/components/schemas/PrincipalId'
        identity:
          $ref: '#/components/schemas/Objects_117'
        environment_id:
          $ref: '#/components/schemas/EnvironmentId'
        connected_runtime:
          $ref: '#/components/schemas/Union_253'
        metadata:
          $ref: '#/components/schemas/ResourceMetadata'
        status:
          $ref: '#/components/schemas/Union_223'
        paused_reason:
          $ref: '#/components/schemas/Union_254'
        last_run_at:
          $ref: '#/components/schemas/Union_255'
        last_session_id:
          $ref: '#/components/schemas/Union_256'
        last_run_id:
          $ref: '#/components/schemas/Union_257'
        next_run_at:
          $ref: '#/components/schemas/Union_258'
        created_at:
          type: string
        updated_at:
          type: string
        target:
          $ref: '#/components/schemas/Union_246'
        collaboration_space_id:
          anyOf:
            - $ref: '#/components/schemas/CollaborationSpaceId'
            - type: 'null'
        trigger:
          $ref: '#/components/schemas/Objects_129'
        input: false
      required:
        - id
        - workspace_id
        - version
        - name
        - description
        - external_id
        - created_by
        - identity
        - environment_id
        - connected_runtime
        - status
        - paused_reason
        - last_run_at
        - last_session_id
        - last_run_id
        - next_run_at
        - created_at
        - updated_at
        - target
        - collaboration_space_id
        - trigger
      additionalProperties: false
    AutomationId:
      type: string
      pattern: ^auto_[0-9a-f]{32}$
    Union_251:
      anyOf:
        - type: string
          allOf:
            - minLength: 1
            - maxLength: 4096
        - type: 'null'
    Union_252:
      anyOf:
        - type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        - type: 'null'
    Objects_117:
      type: object
      properties:
        acted_as:
          $ref: '#/components/schemas/PrincipalId'
      required:
        - acted_as
      additionalProperties: false
    EnvironmentId:
      type: string
      pattern: ^env_[0-9a-f]{32}$
    Union_253:
      anyOf:
        - $ref: '#/components/schemas/ConnectedRuntimeId'
        - type: 'null'
    ResourceMetadata:
      type: object
      additionalProperties:
        type: string
        allOf:
          - maxLength: 512
      allOf:
        - propertyNames:
            type: string
            allOf:
              - minLength: 1
              - maxLength: 64
        - maxProperties: 16
          description: at most 16 correlation pairs with keys of 1 to 64 characters
    Union_223:
      type: string
      enum:
        - active
        - paused
    Union_254:
      anyOf:
        - $ref: '#/components/schemas/Union_224'
        - type: 'null'
    Union_255:
      anyOf:
        - type: string
        - type: 'null'
    Union_256:
      anyOf:
        - $ref: '#/components/schemas/SessionId'
        - type: 'null'
    Union_257:
      anyOf:
        - $ref: '#/components/schemas/RunId'
        - type: 'null'
    Union_258:
      anyOf:
        - type: string
        - type: 'null'
    Objects_118:
      type: object
      properties:
        kind:
          type: string
          enum:
            - agent_definition
        session_target:
          $ref: '#/components/schemas/AutomationAgentSessionTarget'
        agent:
          $ref: '#/components/schemas/ManagedAgentsAgentParams'
        agent_deployment_id: false
        agent_deployment_revision_selection: false
        budget:
          $ref: '#/components/schemas/SessionBudgetRequest'
      required:
        - kind
        - agent
      additionalProperties: false
    Union_229:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - schedule
            cron:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 255
            timezone:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 255
            dedupe_key: false
            source: false
            filter: false
          required:
            - kind
            - cron
            - timezone
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - schedule_once
            at:
              $ref: '#/components/schemas/CurrentTimestamp'
            cron: false
            timezone: false
            dedupe_key: false
            source: false
            filter: false
          required:
            - kind
            - at
          additionalProperties: false
    Objects_131:
      type: object
      properties:
        kind:
          type: string
          enum:
            - snapshot
        prompt:
          $ref: '#/components/schemas/AutomationPrompt'
        outcome:
          $ref: '#/components/schemas/Objects_119'
        flow_review:
          $ref: '#/components/schemas/Objects_120'
        delivery_screen:
          anyOf:
            - type: object
              properties:
                model_routing_profile_key:
                  type: string
                  pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                tier:
                  $ref: '#/components/schemas/Union_132'
                instructions:
                  type: string
                  allOf:
                    - minLength: 1
                    - maxLength: 4096
                failure:
                  type: string
                  enum:
                    - fail_open
                    - fail_closed
              required:
                - model_routing_profile_key
                - instructions
              additionalProperties: false
            - type: object
              properties:
                evaluation:
                  $ref: '#/components/schemas/Objects_93'
                rule:
                  $ref: '#/components/schemas/Union_194'
                failure:
                  type: string
                  enum:
                    - fail_open
                    - fail_closed
              required:
                - evaluation
                - rule
              additionalProperties: false
        resources:
          $ref: '#/components/schemas/AutomationResources'
        prompt_template: false
      required:
        - kind
        - prompt
      additionalProperties: false
    Objects_123:
      type: object
      properties:
        kind:
          type: string
          enum:
            - webhook
        provider:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        mcp_events:
          type: boolean
          enum:
            - true
        dedupe_key:
          type: object
          properties:
            kind:
              type: string
              enum:
                - json_pointer
            pointer:
              type: string
              allOf:
                - maxLength: 512
                - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
          required:
            - kind
            - pointer
          additionalProperties: false
        filter:
          type: object
          properties:
            predicates:
              type: array
              items:
                $ref: '#/components/schemas/Union_244'
              allOf:
                - maxItems: 32
            check:
              anyOf:
                - type: object
                  properties:
                    model_routing_profile_key:
                      type: string
                      pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                    tier:
                      $ref: '#/components/schemas/Union_132'
                    instructions:
                      type: string
                      allOf:
                        - minLength: 1
                        - maxLength: 4096
                    failure:
                      $ref: '#/components/schemas/Union_234'
                  required:
                    - model_routing_profile_key
                    - instructions
                    - failure
                  additionalProperties: false
                - type: object
                  properties:
                    evaluation:
                      $ref: '#/components/schemas/Objects_93'
                    rule:
                      $ref: '#/components/schemas/Union_194'
                    failure:
                      $ref: '#/components/schemas/Union_234'
                  required:
                    - evaluation
                    - rule
                    - failure
                  additionalProperties: false
          required:
            - predicates
          additionalProperties: false
        cron: false
        timezone: false
        source: false
      required:
        - kind
        - dedupe_key
      additionalProperties: false
    Objects_133:
      type: object
      properties:
        kind:
          type: string
          enum:
            - template
        prompt_template:
          $ref: '#/components/schemas/AutomationPrompt'
        outcome:
          $ref: '#/components/schemas/Objects_119'
        flow_review:
          $ref: '#/components/schemas/Objects_120'
        delivery_screen:
          anyOf:
            - type: object
              properties:
                model_routing_profile_key:
                  type: string
                  pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                tier:
                  $ref: '#/components/schemas/Union_132'
                instructions:
                  type: string
                  allOf:
                    - minLength: 1
                    - maxLength: 4096
                failure:
                  type: string
                  enum:
                    - fail_open
                    - fail_closed
              required:
                - model_routing_profile_key
                - instructions
              additionalProperties: false
            - type: object
              properties:
                evaluation:
                  $ref: '#/components/schemas/Objects_93'
                rule:
                  $ref: '#/components/schemas/Union_194'
                failure:
                  type: string
                  enum:
                    - fail_open
                    - fail_closed
              required:
                - evaluation
                - rule
              additionalProperties: false
        resources:
          $ref: '#/components/schemas/AutomationResources'
        prompt: false
      required:
        - kind
        - prompt_template
      additionalProperties: false
    Union_259:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - conversation
            conversation:
              $ref: '#/components/schemas/Union_204'
            resource_type: false
            external_id: false
          required:
            - kind
            - conversation
          additionalProperties: false
        - $ref: '#/components/schemas/Objects_125'
    Union_246:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - steps
            agent_deployment_id: false
            agent_deployment_revision_selection: false
            memory_store: false
            sessions: false
            budget: false
            steps:
              $ref: '#/components/schemas/AutomationStepGroups'
            dag: false
          required:
            - kind
            - steps
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - steps
            agent_deployment_id: false
            agent_deployment_revision_selection: false
            memory_store: false
            sessions: false
            budget: false
            dag:
              $ref: '#/components/schemas/AutomationStepDagDataflow'
            steps: false
          required:
            - kind
            - dag
          additionalProperties: false
    Objects_129:
      type: object
      properties:
        kind:
          type: string
          enum:
            - any
        sources:
          anyOf:
            - type: array
              prefixItems:
                - $ref: '#/components/schemas/Union_229'
                - $ref: '#/components/schemas/Objects_123'
              maxItems: 2
              minItems: 2
            - type: array
              prefixItems:
                - $ref: '#/components/schemas/Objects_123'
                - $ref: '#/components/schemas/Union_229'
              maxItems: 2
              minItems: 2
      required:
        - kind
        - sources
      additionalProperties: false
    ConnectedRuntimeId:
      type: string
      pattern: ^crt_[0-9a-f]{32}$
    Union_224:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - manual
            error_type: false
          required:
            - kind
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - error
            error_type:
              $ref: '#/components/schemas/Union_74'
          required:
            - kind
            - error_type
          additionalProperties: false
    SessionId:
      type: string
      pattern: ^sess_[0-9a-f]{32}$
    RunId:
      type: string
      pattern: ^run_[0-9a-f]{32}$
    AutomationAgentSessionTarget:
      anyOf:
        - type: object
          properties:
            mode:
              type: string
              enum:
                - start_new
          required:
            - mode
          additionalProperties: false
        - type: object
          properties:
            mode:
              type: string
              enum:
                - continue_selected
            session:
              $ref: '#/components/schemas/SessionId'
          required:
            - mode
            - session
          additionalProperties: false
    ManagedAgentsAgentParams:
      type: object
      properties:
        type:
          type: string
          enum:
            - agent
        id:
          $ref: '#/components/schemas/AgentId'
        version:
          type: integer
          exclusiveMinimum: 0
      required:
        - type
        - id
      additionalProperties: false
    SessionBudgetRequest:
      type: object
      properties:
        limit:
          $ref: '#/components/schemas/SessionBudgetRequestSafeLimit'
        metric:
          type: string
          enum:
            - model_tokens
            - model_spend
            - session_runtime_ms
            - web_search_requests
            - total_spend
      required:
        - limit
      additionalProperties: false
      description: >-
        A create-time Session spending cap compiled into one session-scoped
        pause_session Budget.
    CurrentTimestamp:
      type: string
      allOf:
        - maxLength: 24
        - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$
          x-checkfu-current-timestamp: true
          description: A canonical UTC ISO-8601 timestamp with millisecond precision.
    AutomationPrompt:
      type: string
      allOf:
        - minLength: 1
        - maxLength: 65536
    Objects_119:
      type: object
      properties:
        rubric:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 65536
        max_iterations:
          type: integer
          allOf:
            - minimum: 1
              maximum: 20
        deliverables:
          $ref: '#/components/schemas/CurrentOutcomeDeliverablesDistinctPaths'
        report:
          type: object
          properties:
            extraction:
              type: string
              enum:
                - json
                - model
            outputs:
              $ref: '#/components/schemas/OutcomeReportDistinctOutputKeys'
          required:
            - extraction
            - outputs
          additionalProperties: false
        check:
          type: object
          properties:
            evaluation:
              $ref: '#/components/schemas/Objects_93'
            rule:
              $ref: '#/components/schemas/Union_194'
          required:
            - evaluation
            - rule
          additionalProperties: false
        feedback_on_false:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 1024
      required:
        - rubric
      additionalProperties: false
    Objects_120:
      type: object
      properties:
        model_routing_profile_key:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        tier:
          $ref: '#/components/schemas/Union_132'
        criteria:
          $ref: '#/components/schemas/UniqueFlowReviewCriteria'
      required:
        - model_routing_profile_key
        - criteria
      additionalProperties: false
    Union_132:
      type: string
      enum:
        - default
        - planning
        - tool_loop
    Objects_93:
      type: object
      properties:
        schema_version:
          type: number
          enum:
            - 1
        model_routing_profile_key:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        tier:
          $ref: '#/components/schemas/Union_132'
        timeout_ms:
          type: number
          allOf:
            - minimum: 100
            - maximum: 30000
        questions:
          $ref: '#/components/schemas/TypedCheckQuestions'
      required:
        - schema_version
        - model_routing_profile_key
        - questions
      additionalProperties: false
    Union_194:
      anyOf:
        - $ref: '#/components/schemas/CheckBooleanRuleThresholds'
        - $ref: '#/components/schemas/Objects_94'
        - $ref: '#/components/schemas/CheckScoreTailRuleThresholds'
        - type: object
          properties:
            type:
              type: string
              enum:
                - all
            rules:
              type: array
              items:
                anyOf:
                  - $ref: '#/components/schemas/CheckBooleanRuleThresholds'
                  - $ref: '#/components/schemas/Objects_94'
                  - $ref: '#/components/schemas/CheckScoreTailRuleThresholds'
              allOf:
                - minItems: 1
                - maxItems: 8
          required:
            - type
            - rules
          additionalProperties: false
    AutomationResources:
      type: array
      items:
        anyOf:
          - $ref: '#/components/schemas/Union_236'
          - $ref: '#/components/schemas/Objects_122'
          - type: object
            properties:
              store:
                $ref: '#/components/schemas/MemoryStoreId'
              access:
                $ref: '#/components/schemas/Union_240'
              selection:
                $ref: '#/components/schemas/Union_242'
              instructions:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 4096
            required:
              - store
              - access
            additionalProperties: false
    Union_244:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - exists
            pointer:
              type: string
              allOf:
                - maxLength: 512
                - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
            value: false
          required:
            - kind
            - pointer
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - equals
            pointer:
              type: string
              allOf:
                - maxLength: 512
                - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
            value:
              $ref: '#/components/schemas/Union_203'
          required:
            - kind
            - pointer
            - value
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - contains
            pointer:
              type: string
              allOf:
                - maxLength: 512
                - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
            value:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 4096
          required:
            - kind
            - pointer
            - value
          additionalProperties: false
    Union_234:
      type: string
      enum:
        - fail_open
        - fail_closed
    Union_204:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - ambient
                - direct
            root_external_id:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 512
            thread_external_id:
              type: 'null'
          required:
            - kind
            - root_external_id
            - thread_external_id
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - thread
            root_external_id:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 512
            thread_external_id:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 512
          required:
            - kind
            - root_external_id
            - thread_external_id
          additionalProperties: false
    Objects_125:
      type: object
      properties:
        kind:
          type: string
          enum:
            - resource
        resource_type:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
        external_id:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 512
        conversation: false
      required:
        - kind
        - resource_type
        - external_id
      additionalProperties: false
    AutomationStepGroups:
      type: array
      items:
        $ref: '#/components/schemas/Objects_126'
      allOf:
        - minItems: 1
        - maxItems: 20
    AutomationStepDagDataflow:
      type: object
      properties:
        nodes:
          type: array
          items:
            anyOf:
              - $ref: '#/components/schemas/Objects_126'
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - decision
                  id:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  condition:
                    anyOf:
                      - type: object
                        properties:
                          kind:
                            type: string
                            enum:
                              - predicates
                          predicates:
                            type: array
                            items:
                              $ref: '#/components/schemas/Union_244'
                            allOf:
                              - minItems: 1
                              - maxItems: 10
                          check: false
                          input:
                            anyOf:
                              - $ref: '#/components/schemas/Objects_128'
                              - $ref: '#/components/schemas/Objects_127'
                        required:
                          - kind
                          - predicates
                          - input
                        additionalProperties: false
                      - $ref: '#/components/schemas/AutomationDecisionCheckInput'
                required:
                  - kind
                  - id
                  - condition
                additionalProperties: false
          allOf:
            - minItems: 1
            - maxItems: 20
        edges:
          type: array
          items:
            anyOf:
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - then
                  from:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  to:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - output
                  from:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  to:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - continue
                  from:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  to:
                    anyOf:
                      - type: string
                        allOf:
                          - minLength: 1
                          - maxLength: 64
                          - pattern: ^[A-Za-z0-9_]+$
                      - type: 'null'
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - otherwise
                  from:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  to:
                    anyOf:
                      - type: string
                        allOf:
                          - minLength: 1
                          - maxLength: 64
                          - pattern: ^[A-Za-z0-9_]+$
                      - type: 'null'
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - uncertain
                  from:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  to:
                    anyOf:
                      - type: string
                        allOf:
                          - minLength: 1
                          - maxLength: 64
                          - pattern: ^[A-Za-z0-9_]+$
                      - type: 'null'
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
              - type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - error
                  from:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  to:
                    anyOf:
                      - type: string
                        allOf:
                          - minLength: 1
                          - maxLength: 64
                          - pattern: ^[A-Za-z0-9_]+$
                      - type: 'null'
                required:
                  - kind
                  - from
                  - to
                additionalProperties: false
          allOf:
            - maxItems: 320
      required:
        - nodes
        - edges
      additionalProperties: false
    Union_74:
      type: string
      enum:
        - validation.malformed
        - validation.prompt_integrity_review_required
        - validation.not_found
        - validation.conflict
        - validation.idempotency_conflict
        - validation.idempotency_in_progress
        - validation.payload_too_large
        - validation.range_too_large
        - auth.invalid_key
        - auth.authorization_unavailable
        - auth.request_admission_unavailable
        - auth.disabled_tenancy
        - policy.denied
        - budget.exceeded
        - model.no_eligible_model
        - model.credential_rejected
        - model.platform_supply_unavailable
        - model.platform_capacity_reached
        - billing.entitlement_unavailable
        - billing.usage_limit_reached
        - billing.payment_required
        - billing.seat_activation_unavailable
        - memory.not_found
        - memory.conflict
        - memory.read_only
        - memory.invalid_path
        - memory.backend_unavailable
        - memory.curation_failed
        - runtime.invalid_transition
        - runtime.primary_thread
        - retention.zdr_unsupported
        - runtime.checkpoint_expired
        - runtime.session_history_unavailable
        - runtime.harness_unavailable
        - runtime.harness_failed
        - runtime.runner_unavailable
        - runtime.provider_host_unavailable
        - runtime.lease_lost
        - runtime.start_timeout
        - runtime.allocation_failed
        - runtime.allocation_not_ready
        - runtime.provisioning_suspended
        - runtime.computer_unavailable
        - runtime.turn_deadline_exceeded
        - runtime.observation_gap
        - runtime.observation_conflict
        - runtime.attestation_invalid
        - runtime.harness_incompatible
        - runtime.target_mismatch
        - runtime.transcript_index_unavailable
        - runtime.managed_tool_failed
        - runtime.managed_tool_canceled
        - runtime.internal
    SessionBudgetRequestSafeLimit:
      type: integer
      exclusiveMinimum: 0
    CurrentOutcomeDeliverablesDistinctPaths:
      type: array
      items:
        type: string
        pattern: ^\/\S+$
      allOf:
        - minItems: 1
        - maxItems: 32
        - uniqueItems: true
          description: Outcome deliverables with distinct paths
    OutcomeReportDistinctOutputKeys:
      type: array
      items:
        anyOf:
          - type: object
            properties:
              key:
                type: string
                pattern: ^[a-z][a-z0-9_]{0,49}$
              title:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 200
              description:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 4096
              type:
                type: string
                enum:
                  - string
              acceptance:
                type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - one_of
                  values:
                    $ref: >-
                      #/components/schemas/OutcomeReportDistinctStringAcceptanceValues
                required:
                  - kind
                  - values
                additionalProperties: false
            required:
              - key
              - title
              - type
            additionalProperties: false
          - type: object
            properties:
              key:
                type: string
                pattern: ^[a-z][a-z0-9_]{0,49}$
              title:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 200
              description:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 4096
              type:
                type: string
                enum:
                  - integer
              acceptance:
                $ref: '#/components/schemas/OutcomeReportNumericAcceptanceRange'
            required:
              - key
              - title
              - type
            additionalProperties: false
          - type: object
            properties:
              key:
                type: string
                pattern: ^[a-z][a-z0-9_]{0,49}$
              title:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 200
              description:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 4096
              type:
                type: string
                enum:
                  - number
              acceptance:
                $ref: '#/components/schemas/OutcomeReportNumericAcceptanceRange'
            required:
              - key
              - title
              - type
            additionalProperties: false
          - type: object
            properties:
              key:
                type: string
                pattern: ^[a-z][a-z0-9_]{0,49}$
              title:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 200
              description:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 4096
              type:
                type: string
                enum:
                  - boolean
              acceptance:
                type: object
                properties:
                  kind:
                    type: string
                    enum:
                      - equals
                  value:
                    type: boolean
                required:
                  - kind
                  - value
                additionalProperties: false
            required:
              - key
              - title
              - type
            additionalProperties: false
      allOf:
        - minItems: 1
        - maxItems: 32
        - x-checkfu-distinct-output-keys: true
          description: Outcome Report outputs with distinct keys
    UniqueFlowReviewCriteria:
      type: array
      items:
        type: object
        properties:
          key:
            type: string
            allOf:
              - minLength: 1
              - maxLength: 64
              - pattern: ^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$
          description:
            $ref: '#/components/schemas/FlowReviewCriterionDescription'
          severity:
            type: string
            enum:
              - low
              - medium
              - high
        required:
          - key
          - description
          - severity
        additionalProperties: false
      allOf:
        - minItems: 1
        - maxItems: 16
    TypedCheckQuestions:
      type: array
      items:
        anyOf:
          - type: object
            properties:
              key:
                $ref: '#/components/schemas/CheckQuestionKey'
              type:
                type: string
                enum:
                  - boolean
              instructions:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 4096
              true_description:
                $ref: '#/components/schemas/CheckDescription'
              false_description:
                $ref: '#/components/schemas/CheckDescription'
            required:
              - key
              - type
              - instructions
            additionalProperties: false
          - type: object
            properties:
              key:
                $ref: '#/components/schemas/CheckQuestionKey'
              type:
                type: string
                enum:
                  - choice
              instructions:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 4096
              options:
                $ref: '#/components/schemas/CheckChoiceOptions'
            required:
              - key
              - type
              - instructions
              - options
            additionalProperties: false
          - type: object
            properties:
              key:
                $ref: '#/components/schemas/CheckQuestionKey'
              type:
                type: string
                enum:
                  - score
              instructions:
                type: string
                allOf:
                  - minLength: 1
                  - maxLength: 4096
              levels:
                $ref: '#/components/schemas/CheckScoreLevels'
            required:
              - key
              - type
              - instructions
              - levels
            additionalProperties: false
      allOf:
        - minItems: 1
        - maxItems: 8
    CheckBooleanRuleThresholds:
      type: object
      properties:
        type:
          type: string
          enum:
            - boolean
        question_key:
          $ref: '#/components/schemas/CheckQuestionKey'
        expected:
          type: boolean
        false_max:
          type: number
          allOf:
            - minimum: 0
            - maximum: 1
        true_min:
          type: number
          allOf:
            - minimum: 0
            - maximum: 1
      required:
        - type
        - question_key
        - expected
        - false_max
        - true_min
      additionalProperties: false
    Objects_94:
      type: object
      properties:
        type:
          type: string
          enum:
            - choice_matches
        question_key:
          $ref: '#/components/schemas/CheckQuestionKey'
        option_keys:
          $ref: '#/components/schemas/CheckChoiceMatchesOptions'
        min_probability:
          type: number
          allOf:
            - minimum: 0
            - maximum: 1
        min_margin:
          type: number
          allOf:
            - minimum: 0
            - maximum: 1
      required:
        - type
        - question_key
        - option_keys
        - min_probability
        - min_margin
      additionalProperties: false
    CheckScoreTailRuleThresholds:
      type: object
      properties:
        type:
          type: string
          enum:
            - score_tail
        question_key:
          $ref: '#/components/schemas/CheckQuestionKey'
        at_or_above_level:
          type: integer
          minimum: 0
        false_max:
          type: number
          allOf:
            - minimum: 0
            - maximum: 1
        true_min:
          type: number
          allOf:
            - minimum: 0
            - maximum: 1
      required:
        - type
        - question_key
        - at_or_above_level
        - false_max
        - true_min
      additionalProperties: false
    Union_236:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - file_tree
            file_tree_id:
              $ref: '#/components/schemas/FileTreeId'
            mount_path:
              $ref: '#/components/schemas/MountPath'
            version_policy:
              $ref: '#/components/schemas/Union_237'
            access:
              $ref: '#/components/schemas/Union_238'
            writeback:
              type: 'null'
          required:
            - kind
            - file_tree_id
            - mount_path
            - version_policy
            - access
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - file_tree
            file_tree_id:
              $ref: '#/components/schemas/FileTreeId'
            mount_path:
              $ref: '#/components/schemas/MountPath'
            version_policy:
              $ref: '#/components/schemas/Union_237'
            access:
              type: string
              enum:
                - read_write
            writeback:
              $ref: '#/components/schemas/Objects_121'
          required:
            - kind
            - file_tree_id
            - mount_path
            - version_policy
            - access
            - writeback
          additionalProperties: false
    Objects_122:
      type: object
      properties:
        kind:
          type: string
          enum:
            - file
        file_id:
          $ref: '#/components/schemas/FileId'
        mount_path:
          $ref: '#/components/schemas/MountPath'
        access:
          type: string
          enum:
            - read_only
      required:
        - kind
        - file_id
        - mount_path
        - access
      additionalProperties: false
    MemoryStoreId:
      type: string
      pattern: ^memstore_[0-9a-f]{32}$
    Union_240:
      type: string
      enum:
        - read_only
        - read_write
    Union_242:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - ref
            ref:
              $ref: '#/components/schemas/Union_124'
          required:
            - kind
            - ref
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - version
            version:
              $ref: '#/components/schemas/MemoryVersionId'
          required:
            - kind
            - version
          additionalProperties: false
    Union_203:
      anyOf:
        - type: string
          allOf:
            - maxLength: 4096
        - type: boolean
        - type: number
          allOf:
            - minimum: -9007199254740991
              maximum: 9007199254740991
    Objects_126:
      type: object
      properties:
        id:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 64
            - pattern: ^[A-Za-z0-9_]+$
        name:
          type: string
          allOf:
            - maxLength: 255
        condition:
          anyOf:
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - predicates
                predicates:
                  type: array
                  items:
                    $ref: '#/components/schemas/Union_244'
                  allOf:
                    - minItems: 1
                    - maxItems: 10
                check: false
                input:
                  anyOf:
                    - type: object
                      properties:
                        kind:
                          type: string
                          enum:
                            - trigger_payload
                      required:
                        - kind
                      additionalProperties: false
                    - type: object
                      properties:
                        kind:
                          type: string
                          enum:
                            - previous_step_output
                      required:
                        - kind
                      additionalProperties: false
              required:
                - kind
                - predicates
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - check
                check:
                  $ref: '#/components/schemas/Union_245'
                predicates: false
                input:
                  anyOf:
                    - type: object
                      properties:
                        kind:
                          type: string
                          enum:
                            - trigger_payload
                      required:
                        - kind
                      additionalProperties: false
                    - type: object
                      properties:
                        kind:
                          type: string
                          enum:
                            - previous_step_output
                      required:
                        - kind
                      additionalProperties: false
              required:
                - kind
                - check
              additionalProperties: false
        group:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 64
            - pattern: ^[A-Za-z0-9_]+$
        action:
          anyOf:
            - $ref: '#/components/schemas/AutomationInvokeManagedToolStepAction'
            - $ref: '#/components/schemas/AutomationStepBudgetRequiresNewSession'
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - parse_json
                input_bindings:
                  $ref: '#/components/schemas/AutomationJsonInputBindings'
                output_schema:
                  $ref: '#/components/schemas/AutomationJsonOutputSchema'
                policy_version:
                  type: number
                  enum:
                    - 1
              required:
                - action
                - input_bindings
                - output_schema
                - policy_version
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - query_sessions
                agent:
                  $ref: '#/components/schemas/AgentId'
                limit:
                  type: integer
                  allOf:
                    - minimum: 1
                      maximum: 100
                scan_limit:
                  type: integer
                  allOf:
                    - minimum: 1
                      maximum: 1000
                max_event_positions:
                  type: integer
                  allOf:
                    - minimum: 1
                      maximum: 1000
              required:
                - action
                - agent
                - limit
                - scan_limit
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - mark_sessions_processed
                query_step:
                  type: string
                  allOf:
                    - minLength: 1
                    - maxLength: 64
                    - pattern: ^[A-Za-z0-9_]+$
                required_effects:
                  type: array
                  items:
                    type: string
                    allOf:
                      - minLength: 1
                      - maxLength: 64
                      - pattern: ^[A-Za-z0-9_]+$
                  allOf:
                    - maxItems: 20
              required:
                - action
                - query_step
                - required_effects
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - check
                check:
                  $ref: '#/components/schemas/Union_245'
                input:
                  $ref: '#/components/schemas/Objects_127'
              required:
                - action
                - check
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - propose_skill_update
                query_step:
                  type: string
                  allOf:
                    - minLength: 1
                    - maxLength: 64
                    - pattern: ^[A-Za-z0-9_]+$
                model_routing_profile_key:
                  type: string
                  pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                parameters:
                  $ref: '#/components/schemas/AutomationSkillProposalParameters'
                input_bindings:
                  type: object
                  additionalProperties:
                    $ref: '#/components/schemas/AutomationAgentOutputBinding'
                  allOf:
                    - maxProperties: 32
                    - maxProperties: 2
                join:
                  type: object
                  properties:
                    kind:
                      type: string
                      enum:
                        - all_completed
                  required:
                    - kind
                  additionalProperties: false
              required:
                - action
                - query_step
                - model_routing_profile_key
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - observe_skill_proposal
                proposal_step:
                  type: string
                  allOf:
                    - minLength: 1
                    - maxLength: 64
                    - pattern: ^[A-Za-z0-9_]+$
              required:
                - action
                - proposal_step
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - read_skill
                skill:
                  $ref: '#/components/schemas/SkillId'
                version:
                  type: integer
                  allOf:
                    - minimum: 1
                      maximum: 9007199254740991
              required:
                - action
                - skill
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - read_memory
                memory_store:
                  $ref: '#/components/schemas/MemoryStoreId'
                path:
                  $ref: '#/components/schemas/MemoryPath'
              required:
                - action
                - memory_store
                - path
              additionalProperties: false
            - $ref: '#/components/schemas/AutomationMemoryWriteInput'
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - call_connection
                connection:
                  $ref: '#/components/schemas/ConnectionId'
                tool:
                  type: string
                  pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                arguments:
                  $ref: '#/components/schemas/AutomationStepArguments'
                argument_bindings:
                  $ref: '#/components/schemas/AutomationStepArgumentBindings'
                join:
                  type: object
                  properties:
                    kind:
                      type: string
                      enum:
                        - all_completed
                  required:
                    - kind
                  additionalProperties: false
                acted_as: false
                retry:
                  $ref: '#/components/schemas/AutomationConnectionStepRetry'
              required:
                - action
                - connection
                - tool
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - request_approval
                approver:
                  $ref: '#/components/schemas/PrincipalId'
                message:
                  type: string
                  allOf:
                    - minLength: 1
                    - maxLength: 16384
                timeout_seconds:
                  type: integer
                  allOf:
                    - exclusiveMinimum: 0
                    - maximum: 604800
              required:
                - action
                - approver
                - message
              additionalProperties: false
            - type: object
              properties:
                action:
                  type: string
                  enum:
                    - wait
                seconds:
                  type: integer
                  allOf:
                    - exclusiveMinimum: 0
                    - maximum: 604800
              required:
                - action
                - seconds
              additionalProperties: false
      required:
        - id
        - action
      additionalProperties: false
    Objects_128:
      type: object
      properties:
        kind:
          type: string
          enum:
            - previous_step_output
      required:
        - kind
      additionalProperties: false
    Objects_127:
      type: object
      properties:
        kind:
          type: string
          enum:
            - mapped
        bindings:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/AutomationAgentOutputBinding'
          allOf:
            - maxProperties: 32
            - minProperties: 1
        join:
          type: object
          properties:
            kind:
              type: string
              enum:
                - all_completed
          required:
            - kind
          additionalProperties: false
      required:
        - kind
        - bindings
      additionalProperties: false
    AutomationDecisionCheckInput:
      type: object
      properties:
        kind:
          type: string
          enum:
            - check
        check:
          anyOf:
            - type: object
              properties:
                model_routing_profile_key:
                  type: string
                  pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
                tier:
                  $ref: '#/components/schemas/Union_132'
                instructions:
                  type: string
                  allOf:
                    - minLength: 1
                    - maxLength: 4096
                failure:
                  type: string
                  enum:
                    - fail_closed
              required:
                - model_routing_profile_key
                - instructions
                - failure
              additionalProperties: false
            - type: object
              properties:
                evaluation:
                  $ref: '#/components/schemas/Objects_93'
                rule:
                  $ref: '#/components/schemas/Union_194'
                failure:
                  type: string
                  enum:
                    - fail_closed
              required:
                - evaluation
                - rule
                - failure
              additionalProperties: false
        predicates: false
        input:
          anyOf:
            - $ref: '#/components/schemas/Objects_128'
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - trigger_payload
              required:
                - kind
              additionalProperties: false
            - $ref: '#/components/schemas/Objects_127'
      required:
        - kind
        - check
        - input
      additionalProperties: false
    OutcomeReportDistinctStringAcceptanceValues:
      type: array
      items:
        type: string
      allOf:
        - minItems: 1
        - maxItems: 32
        - uniqueItems: true
          description: distinct accepted string values
    OutcomeReportNumericAcceptanceRange:
      type: object
      properties:
        kind:
          type: string
          enum:
            - range
        minimum:
          type: number
        maximum:
          type: number
      required:
        - kind
      additionalProperties: false
      allOf:
        - anyOf:
            - required:
                - minimum
            - required:
                - maximum
          x-checkfu-numeric-acceptance-range: true
          description: a non-empty numeric range whose minimum does not exceed its maximum
    FlowReviewCriterionDescription:
      type: string
      allOf:
        - minLength: 1
        - maxLength: 1024
    CheckQuestionKey:
      type: string
      allOf:
        - minLength: 1
        - maxLength: 64
    CheckDescription:
      type: string
      allOf:
        - minLength: 1
    CheckChoiceOptions:
      type: array
      items:
        type: object
        properties:
          key:
            $ref: '#/components/schemas/CheckQuestionKey'
          description:
            $ref: '#/components/schemas/CheckDescription'
        required:
          - key
          - description
        additionalProperties: false
      allOf:
        - minItems: 2
        - maxItems: 32
    CheckScoreLevels:
      type: array
      items:
        $ref: '#/components/schemas/CheckDescription'
      allOf:
        - minItems: 2
        - maxItems: 10
    CheckChoiceMatchesOptions:
      type: array
      items:
        $ref: '#/components/schemas/CheckQuestionKey'
      allOf:
        - minItems: 1
    FileTreeId:
      type: string
      pattern: ^ftree_[0-9a-f]{32}$
    MountPath:
      type: string
      allOf:
        - minLength: 2
        - maxLength: 1024
    Union_237:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - latest
          required:
            - kind
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - pinned
            version:
              type: integer
              exclusiveMinimum: 0
          required:
            - kind
            - version
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - ref
            ref:
              $ref: '#/components/schemas/GitReference'
          required:
            - kind
            - ref
          additionalProperties: false
    Union_238:
      type: string
      enum:
        - read_only
        - read_write
    Objects_121:
      type: object
      properties:
        kind:
          type: string
          enum:
            - pull_request
        commit_message:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 4096
        pull_request_title:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 256
        pull_request_body:
          type: string
          allOf:
            - maxLength: 16384
        allow_workflow_changes:
          type: boolean
          enum:
            - true
      required:
        - kind
      additionalProperties: false
    FileId:
      type: string
      pattern: ^file_[0-9a-f]{32}$
    Union_124:
      anyOf:
        - type: object
          properties:
            kind:
              type: string
              enum:
                - canonical
          required:
            - kind
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - session
            session:
              $ref: '#/components/schemas/SessionId'
          required:
            - kind
            - session
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - proposal
            proposal:
              $ref: '#/components/schemas/MemoryProposalId'
          required:
            - kind
            - proposal
          additionalProperties: false
        - type: object
          properties:
            kind:
              type: string
              enum:
                - curation
            run:
              $ref: '#/components/schemas/CurationRunId'
          required:
            - kind
            - run
          additionalProperties: false
    MemoryVersionId:
      type: string
      pattern: ^memver_[0-9a-f]{32}$
    Union_245:
      anyOf:
        - type: object
          properties:
            model_routing_profile_key:
              type: string
              pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
            tier:
              $ref: '#/components/schemas/Union_132'
            instructions:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 4096
            failure:
              $ref: '#/components/schemas/Union_234'
          required:
            - model_routing_profile_key
            - instructions
            - failure
          additionalProperties: false
        - type: object
          properties:
            evaluation:
              $ref: '#/components/schemas/Objects_93'
            rule:
              $ref: '#/components/schemas/Union_194'
            failure:
              $ref: '#/components/schemas/Union_234'
          required:
            - evaluation
            - rule
            - failure
          additionalProperties: false
    AutomationInvokeManagedToolStepAction:
      type: object
      properties:
        action:
          type: string
          enum:
            - invoke_managed_tool
        selection:
          $ref: '#/components/schemas/ManagedToolSelection'
        arguments:
          $ref: '#/components/schemas/ManagedToolInvocationArguments'
        maximum_charge_microusd:
          type: integer
          allOf:
            - minimum: 0
            - maximum: 9007199254740991
        argument_bindings:
          $ref: '#/components/schemas/AutomationStepArgumentBindings'
        join:
          type: object
          properties:
            kind:
              type: string
              enum:
                - all_completed
          required:
            - kind
          additionalProperties: false
        acted_as: false
        acted_as_principal_id: false
        retry: false
      required:
        - action
        - selection
        - arguments
        - maximum_charge_microusd
      additionalProperties: false
      allOf:
        - anyOf:
            - properties:
                argument_bindings: false
            - properties:
                arguments:
                  type: object
    AutomationStepBudgetRequiresNewSession:
      anyOf:
        - type: object
          properties:
            action:
              type: string
              enum:
                - run_agent
            budget:
              $ref: '#/components/schemas/SessionBudgetRequest'
            session_target:
              $ref: '#/components/schemas/AutomationAgentSessionTarget'
            agent:
              $ref: '#/components/schemas/ManagedAgentsAgentParams'
            agent_deployment_revision_selection: false
            retry:
              $ref: '#/components/schemas/AutomationStepRetry'
            outcome:
              $ref: '#/components/schemas/Objects_119'
            prompt:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 16384
            input: false
            for_each: false
          required:
            - action
            - agent
            - prompt
          additionalProperties: false
        - type: object
          properties:
            action:
              type: string
              enum:
                - run_agent
            budget:
              $ref: '#/components/schemas/SessionBudgetRequest'
            session_target:
              $ref: '#/components/schemas/AutomationAgentSessionTarget'
            agent:
              $ref: '#/components/schemas/ManagedAgentsAgentParams'
            agent_deployment_revision_selection: false
            retry:
              $ref: '#/components/schemas/AutomationStepRetry'
            outcome:
              $ref: '#/components/schemas/Objects_119'
            prompt:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 16384
            input:
              type: object
              properties:
                kind:
                  type: string
                  enum:
                    - trigger_payload
              required:
                - kind
              additionalProperties: false
            for_each:
              $ref: '#/components/schemas/AutomationStepForEach'
          required:
            - action
            - agent
            - prompt
            - input
          additionalProperties: false
        - type: object
          properties:
            action:
              type: string
              enum:
                - run_agent
            budget:
              $ref: '#/components/schemas/SessionBudgetRequest'
            session_target:
              $ref: '#/components/schemas/AutomationAgentSessionTarget'
            agent:
              $ref: '#/components/schemas/ManagedAgentsAgentParams'
            agent_deployment_revision_selection: false
            retry:
              $ref: '#/components/schemas/AutomationStepRetry'
            outcome:
              $ref: '#/components/schemas/Objects_119'
            input:
              type: object
              properties:
                kind:
                  type: string
                  enum:
                    - previous_step_output
              required:
                - kind
              additionalProperties: false
            prompt: false
            for_each: false
          required:
            - action
            - agent
            - input
          additionalProperties: false
        - type: object
          properties:
            action:
              type: string
              enum:
                - run_agent
            budget:
              $ref: '#/components/schemas/SessionBudgetRequest'
            session_target:
              $ref: '#/components/schemas/AutomationAgentSessionTarget'
            agent:
              $ref: '#/components/schemas/ManagedAgentsAgentParams'
            agent_deployment_revision_selection: false
            retry:
              $ref: '#/components/schemas/AutomationStepRetry'
            outcome:
              $ref: '#/components/schemas/Objects_119'
            prompt:
              type: string
              allOf:
                - minLength: 1
                - maxLength: 16384
            input:
              type: object
              properties:
                kind:
                  type: string
                  enum:
                    - mapped
                bindings:
                  type: object
                  additionalProperties:
                    $ref: '#/components/schemas/AutomationAgentOutputBinding'
                  allOf:
                    - maxProperties: 32
                    - minProperties: 1
              required:
                - kind
                - bindings
              additionalProperties: false
            join:
              type: object
              properties:
                kind:
                  type: string
                  enum:
                    - all_completed
              required:
                - kind
              additionalProperties: false
            for_each: false
          required:
            - action
            - agent
            - prompt
            - input
          additionalProperties: false
      allOf:
        - anyOf:
            - properties:
                budget: false
            - properties:
                session_target:
                  properties:
                    mode:
                      const: start_new
          description: an authored step Budget requires a newly created child Session
    AutomationJsonInputBindings:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/AutomationAgentOutputBinding'
      allOf:
        - maxProperties: 32
    AutomationJsonOutputSchema:
      type: object
      additionalProperties:
        description: >-
          A value in the JSON data model: null, boolean, finite number, string,
          array, or object.
        allOf:
          - x-checkfu-json-budget:
              maximumBytes: 8192
              maximumDepth: 64
              maximumNodes: 5000
              maximumInspectionWork: 10000
            x-checkfu-unicode-scalar-values: true
      allOf:
        - x-checkfu-json-budget:
            maximumBytes: 8192
            maximumDepth: 64
            maximumNodes: 5000
            maximumInspectionWork: 10000
          x-checkfu-unicode-scalar-values: true
        - maxProperties: 5000
          description: >-
            A standard Draft-07 JSON Schema declaration of at most 8 KiB;
            pattern, patternProperties, format, uniqueItems, multipleOf,
            dependencies, unsupported dialects and recursive references are
            refused. Local references use structural schema locations with ASCII
            keys. Execution is subject to a bounded validation-work budget.
    AutomationSkillProposalParameters:
      type: object
      properties:
        instructions:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 4096
        skill_name:
          type: string
          pattern: ^[a-z0-9](?:[a-z0-9._-]{0,93})$
      additionalProperties: false
    AutomationAgentOutputBinding:
      type: object
      properties:
        source:
          anyOf:
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - trigger_payload
              required:
                - kind
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - agent_output
                step_id:
                  type: string
                  allOf:
                    - minLength: 1
                    - maxLength: 64
                    - pattern: ^[A-Za-z0-9_]+$
              required:
                - kind
                - step_id
              additionalProperties: false
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - data_output
                step_id:
                  type: string
                  allOf:
                    - minLength: 1
                    - maxLength: 64
                    - pattern: ^[A-Za-z0-9_]+$
              required:
                - kind
                - step_id
              additionalProperties: false
        pointer:
          type: string
          allOf:
            - maxLength: 512
            - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
      required:
        - source
        - pointer
      additionalProperties: false
    SkillId:
      type: string
      pattern: ^skl_[0-9a-f]{32}$
    MemoryPath:
      type: string
      allOf:
        - maxLength: 1024
    AutomationMemoryWriteInput:
      type: object
      properties:
        action:
          type: string
          enum:
            - write_memory
        memory_store:
          $ref: '#/components/schemas/MemoryStoreId'
        parameters:
          $ref: '#/components/schemas/AutomationMemoryWriteParameters'
        input_bindings:
          $ref: '#/components/schemas/AutomationMemoryWriteBindings'
        join:
          type: object
          properties:
            kind:
              type: string
              enum:
                - all_completed
          required:
            - kind
          additionalProperties: false
      required:
        - action
        - memory_store
      additionalProperties: false
    ConnectionId:
      type: string
      pattern: ^conn_[0-9a-f]{32}$
    AutomationStepArguments:
      type: object
      additionalProperties:
        description: >-
          A value in the JSON data model: null, boolean, finite number, string,
          array, or object.
        allOf:
          - x-checkfu-json-budget:
              maximumBytes: 8192
              maximumDepth: 64
              maximumNodes: 8192
              maximumInspectionWork: 8192
            x-checkfu-unicode-scalar-values: true
      allOf:
        - x-checkfu-json-budget:
            maximumBytes: 8192
            maximumDepth: 64
            maximumNodes: 8192
            maximumInspectionWork: 8192
          x-checkfu-unicode-scalar-values: true
        - maxProperties: 8192
          description: JSON tool arguments of at most 8192 bytes
    AutomationStepArgumentBindings:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/AutomationAgentOutputBinding'
      allOf:
        - maxProperties: 32
    AutomationConnectionStepRetry:
      type: object
      properties:
        max_attempts:
          type: integer
          allOf:
            - minimum: 2
              maximum: 5
        wait_seconds:
          type: integer
          allOf:
            - minimum: 0
              maximum: 3600
        repeat_safety:
          $ref: '#/components/schemas/AutomationConnectionRetrySafety'
      required:
        - max_attempts
        - wait_seconds
        - repeat_safety
      additionalProperties: false
    GitReference:
      type: string
      allOf:
        - minLength: 1
        - maxLength: 1024
        - pattern: ^\S+$
    MemoryProposalId:
      type: string
      pattern: ^mprop_[0-9a-f]{32}$
    CurationRunId:
      type: string
      pattern: ^mcur_[0-9a-f]{32}$
    ManagedToolSelection:
      type: object
      properties:
        managed_tool_id:
          $ref: '#/components/schemas/ManagedToolId'
        managed_tool_release_id:
          $ref: '#/components/schemas/ManagedToolReleaseId'
      required:
        - managed_tool_id
        - managed_tool_release_id
      additionalProperties: false
    ManagedToolInvocationArguments:
      x-checkfu-json-budget:
        maximumBytes: 1048576
        maximumDepth: 64
        maximumNodes: 100000
        maximumInspectionWork: 100000
      x-checkfu-unicode-scalar-values: true
      description: >-
        ManagedMap arguments: at most 1 MiB of UTF-8 JSON, with Unicode scalar
        strings and bounded structure.
    AutomationStepRetry:
      type: object
      properties:
        max_attempts:
          type: integer
          allOf:
            - minimum: 2
              maximum: 5
        wait_seconds:
          type: integer
          allOf:
            - minimum: 0
              maximum: 3600
      required:
        - max_attempts
        - wait_seconds
      additionalProperties: false
    AutomationStepForEach:
      type: object
      properties:
        items:
          type: string
          allOf:
            - maxLength: 512
            - pattern: ^(?:\/(?:[^~/]|~[01])*)*$
        max_items:
          type: integer
          allOf:
            - minimum: 1
              maximum: 50
        concurrency:
          type: integer
          allOf:
            - minimum: 1
              maximum: 8
      required:
        - items
        - max_items
      additionalProperties: false
    AutomationMemoryWriteParameters:
      type: object
      properties:
        path:
          $ref: '#/components/schemas/MemoryPath'
        content:
          $ref: '#/components/schemas/MemoryDocumentContentUtf8Bytes'
        media_type:
          type: string
          allOf:
            - minLength: 1
            - maxLength: 255
        expected_sha256:
          anyOf:
            - type: string
              pattern: ^sha256:[0-9a-f]{64}$
            - type: 'null'
        provenance:
          $ref: '#/components/schemas/NullableAutomationMemoryWriteProvenance'
      additionalProperties: false
    AutomationMemoryWriteBindings:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/AutomationAgentOutputBinding'
      allOf:
        - maxProperties: 32
        - maxProperties: 5
    AutomationConnectionRetrySafety:
      type: string
      enum:
        - tool_declared
        - idempotency_key
    ManagedToolId:
      type: string
      pattern: ^mtl_[0-9a-f]{32}$
    ManagedToolReleaseId:
      type: string
      pattern: ^mtrel_[0-9a-f]{32}$
    MemoryDocumentContentUtf8Bytes:
      type: string
      allOf:
        - maxLength: 100000
          description: >-
            Memory document text no larger than 100000 bytes when encoded as
            UTF-8
    NullableAutomationMemoryWriteProvenance:
      anyOf:
        - $ref: '#/components/schemas/AutomationMemoryWriteProvenance'
        - type: 'null'
    AutomationMemoryWriteProvenance:
      type: object
      properties:
        source_event_ids:
          type: array
          items:
            $ref: '#/components/schemas/EventId'
          allOf:
            - maxItems: 65536
        source_version_ids:
          type: array
          items:
            $ref: '#/components/schemas/MemoryVersionId'
          allOf:
            - maxItems: 65536
        source_refs:
          type: array
          items:
            type: string
            allOf:
              - minLength: 1
              - maxLength: 1024
          allOf:
            - maxItems: 65536
        curation_run:
          $ref: '#/components/schemas/CurationRunId'
        confidence:
          $ref: '#/components/schemas/Union_122'
        valid_from:
          type: string
          allOf:
            - maxLength: 65536
        supersedes:
          type: object
          properties:
            path:
              $ref: '#/components/schemas/MemoryPath'
            version:
              $ref: '#/components/schemas/MemoryVersionId'
          required:
            - path
            - version
          additionalProperties: false
      required:
        - source_event_ids
        - source_version_ids
        - source_refs
        - confidence
        - valid_from
      additionalProperties: false
    EventId:
      type: string
      pattern: ^evt_[0-9a-f]{32}$
    Union_122:
      type: string
      enum:
        - observed
        - inferred
        - uncertain
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.