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

# List saved Tool selections and their actual preparation outcomes



## OpenAPI

````yaml /api-reference/openapi.json get /v1/projects/{projectId}/tool-setups
openapi: 3.1.0
info:
  title: Firedrill Control API
  version: 1.0.0
  description: >-
    The control plane for drills, drill runs, and the worlds they run in. Errors
    always carry the canonical envelope; unsafe operations require an
    Idempotency-Key; long work returns an operation resource.
servers:
  - url: https://api.firedrill.run
security:
  - controlCredential: []
paths:
  /v1/projects/{projectId}/tool-setups:
    get:
      summary: List saved Tool selections and their actual preparation outcomes
      operationId: toolSetups.list
      parameters:
        - name: projectId
          in: path
          required: true
          schema:
            type: string
            pattern: ^prj_[0-9a-z]{12,32}$
        - name: cursor
          in: query
          schema:
            type: string
            minLength: 1
            maxLength: 2048
        - name: limit
          in: query
          schema:
            type: integer
            minimum: 1
            maximum: 50
            default: 20
      responses:
        '200':
          description: Saved Tool setups
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ToolSetupPage'
        default:
          description: Canonical error envelope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
components:
  schemas:
    ToolSetupPage:
      type: object
      properties:
        items:
          maxItems: 50
          type: array
          items:
            type: object
            properties:
              schemaVersion:
                type: number
                enum:
                  - 1
              setupId:
                type: string
                pattern: ^setup_[0-9a-z]{12,32}$
              organizationId:
                type: string
                pattern: ^org_[0-9a-z]{12,32}$
              projectId:
                type: string
                pattern: ^prj_[0-9a-z]{12,32}$
              operationId:
                type: string
                pattern: ^op_[0-9a-z]{12,32}$
              requestHash:
                type: string
                pattern: ^sha256:[0-9a-f]{64}$
              request:
                type: object
                properties:
                  name:
                    type: string
                    minLength: 1
                    maxLength: 100
                  use:
                    type: string
                    enum:
                      - reusable
                      - automated
                  tools:
                    minItems: 1
                    maxItems: 8
                    type: array
                    items:
                      type: object
                      properties:
                        libraryEntryId:
                          type: string
                          pattern: ^[a-z0-9][a-z0-9-]{0,79}$
                        expectedPackageArchiveDigest:
                          type: string
                          pattern: ^sha256:[0-9a-f]{64}$
                        initialState:
                          type: string
                          enum:
                            - starter
                            - empty
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                      required:
                        - libraryEntryId
                        - expectedPackageArchiveDigest
                        - initialState
                      additionalProperties: false
                  previousSetupId:
                    type: string
                    pattern: ^setup_[0-9a-z]{12,32}$
                  expectedPreviousBuildHash:
                    type: string
                    pattern: ^sha256:[0-9a-f]{64}$
                  testDefinitions:
                    $ref: '#/components/schemas/ToolTestDefinitions'
                required:
                  - use
                  - tools
                additionalProperties: false
              state:
                type: string
                enum:
                  - pending
                  - building
                  - preparing
                  - ready
                  - failed
                  - cancelled
              version:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              source:
                type: object
                properties:
                  sourceDraftId:
                    type: string
                    pattern: ^draft_[0-9a-z]{12,32}$
                  revision:
                    type: integer
                    minimum: 1
                    maximum: 2147483647
                  sourceDigest:
                    type: string
                    pattern: ^sha256:[0-9a-f]{64}$
                required:
                  - sourceDraftId
                  - revision
                  - sourceDigest
                additionalProperties: false
              buildAttemptId:
                type: string
                pattern: ^attempt_[0-9a-z]{12,32}$
              buildOperationId:
                type: string
                pattern: ^op_[0-9a-z]{12,32}$
              buildHash:
                type: string
                pattern: ^sha256:[0-9a-f]{64}$
              environmentId:
                type: string
                pattern: ^env_[0-9a-z]{12,32}$
              preparationOperationId:
                type: string
                pattern: ^op_[0-9a-z]{12,32}$
              error:
                type: object
                properties:
                  schemaVersion:
                    type: number
                    enum:
                      - 1
                  code:
                    type: string
                    pattern: ^[a-z][a-z0-9-]*\.[A-Z][A-Z0-9_]*$
                  source:
                    type: string
                    enum:
                      - framework
                      - world
                      - tool
                      - target
                      - assertion
                      - reporter
                      - control
                  message:
                    type: string
                    minLength: 1
                    maxLength: 4000
                  retryable:
                    type: boolean
                  correlationId:
                    type: string
                    pattern: ^corr_[A-Za-z0-9][A-Za-z0-9_-]{5,95}$
                  issues:
                    default: []
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          minLength: 1
                          maxLength: 128
                        message:
                          type: string
                          minLength: 1
                          maxLength: 2000
                        path:
                          type: array
                          items:
                            anyOf:
                              - type: string
                              - type: integer
                                minimum: 0
                                maximum: 9007199254740991
                        suggestion:
                          type: string
                          minLength: 1
                          maxLength: 4000
                      required:
                        - code
                        - message
                      additionalProperties: {}
                  details:
                    type: object
                    additionalProperties:
                      $ref: '#/components/schemas/ToolSetupPage___schema0'
                  evidence:
                    type: object
                    properties:
                      runId:
                        type: string
                        pattern: ^run_[A-Za-z0-9][A-Za-z0-9_-]{5,95}$
                      sequence:
                        type: integer
                        minimum: 0
                        exclusiveMinimum: true
                        maximum: 9007199254740991
                    additionalProperties: {}
                required:
                  - schemaVersion
                  - code
                  - source
                  - message
                  - retryable
                  - issues
                additionalProperties: {}
              createdBy:
                type: string
                minLength: 1
                maxLength: 255
              createdAtMs:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              updatedAtMs:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              finishedAtMs:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
            required:
              - schemaVersion
              - setupId
              - organizationId
              - projectId
              - operationId
              - requestHash
              - request
              - state
              - version
              - createdBy
              - createdAtMs
              - updatedAtMs
            additionalProperties: false
        nextCursor:
          type: string
          minLength: 1
          maxLength: 2048
      required:
        - items
      additionalProperties: false
    ErrorEnvelope:
      type: object
      properties:
        code:
          type: string
          pattern: ^(control|world)\.[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$
        message:
          type: string
          minLength: 1
        correlationId:
          type: string
          minLength: 1
        retryable:
          type: boolean
        retryAfterMs:
          type: integer
          exclusiveMinimum: 0
          maximum: 9007199254740991
        operationId:
          type: string
        source:
          type: string
          enum:
            - platform
            - simulated_provider
        issues:
          type: array
          items:
            type: object
            properties:
              path:
                type: string
              code:
                type: string
              message:
                type: string
            required:
              - path
              - code
              - message
            additionalProperties: false
        details:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
        evidence:
          type: object
          properties:
            sessionId:
              type: string
            runId:
              type: string
            journalSeq:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            buildHash:
              type: string
          additionalProperties: false
      required:
        - code
        - message
        - correlationId
        - retryable
        - source
      additionalProperties: true
    ToolTestDefinitions:
      type: object
      properties:
        targets:
          minItems: 1
          maxItems: 100
          type: array
          items:
            type: object
            properties:
              schemaVersion:
                type: number
                enum:
                  - 1
              target:
                oneOf:
                  - type: object
                    properties:
                      id:
                        type: string
                        minLength: 1
                        maxLength: 96
                        pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                      kind:
                        type: string
                        enum:
                          - module
                      bindings:
                        minItems: 1
                        maxItems: 4
                        type: array
                        items:
                          type: string
                          enum:
                            - direct
                            - http
                            - mcp
                            - cli
                      bindingEnvironment:
                        type: object
                        additionalProperties:
                          type: string
                          enum:
                            - FIREDRILL_HTTP_URL
                            - FIREDRILL_HTTP_TOKEN
                            - FIREDRILL_MCP_URL
                            - FIREDRILL_MCP_TOKEN
                            - FIREDRILL_CLI_URL
                            - FIREDRILL_CLI_TOKEN
                      module:
                        type: string
                        minLength: 1
                        maxLength: 1024
                      export:
                        default: default
                        type: string
                        minLength: 1
                        maxLength: 128
                      timeoutMs:
                        type: integer
                        minimum: 0
                        exclusiveMinimum: true
                        maximum: 3600000
                    required:
                      - id
                      - kind
                      - bindings
                      - module
                      - export
                      - timeoutMs
                    additionalProperties: false
                  - type: object
                    properties:
                      id:
                        type: string
                        minLength: 1
                        maxLength: 96
                        pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                      kind:
                        type: string
                        enum:
                          - command
                      bindings:
                        minItems: 1
                        maxItems: 3
                        type: array
                        items:
                          type: string
                          enum:
                            - http
                            - mcp
                            - cli
                      bindingEnvironment:
                        type: object
                        additionalProperties:
                          type: string
                          enum:
                            - FIREDRILL_HTTP_URL
                            - FIREDRILL_HTTP_TOKEN
                            - FIREDRILL_MCP_URL
                            - FIREDRILL_MCP_TOKEN
                            - FIREDRILL_CLI_URL
                            - FIREDRILL_CLI_TOKEN
                      executable:
                        type: string
                        minLength: 1
                        maxLength: 1024
                      arguments:
                        default: []
                        type: array
                        items:
                          type: string
                          maxLength: 4096
                      workingDirectory:
                        type: string
                        minLength: 1
                        maxLength: 1024
                      environmentFromHost:
                        default: {}
                        type: object
                        additionalProperties:
                          type: string
                          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
                      timeoutMs:
                        type: integer
                        minimum: 0
                        exclusiveMinimum: true
                        maximum: 3600000
                    required:
                      - id
                      - kind
                      - bindings
                      - executable
                      - arguments
                      - environmentFromHost
                      - timeoutMs
                    additionalProperties: false
                  - type: object
                    properties:
                      id:
                        type: string
                        minLength: 1
                        maxLength: 96
                        pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                      kind:
                        type: string
                        enum:
                          - http
                      bindings:
                        minItems: 1
                        maxItems: 3
                        type: array
                        items:
                          type: string
                          enum:
                            - http
                            - mcp
                            - cli
                      bindingEnvironment:
                        type: object
                        additionalProperties:
                          type: string
                          enum:
                            - FIREDRILL_HTTP_URL
                            - FIREDRILL_HTTP_TOKEN
                            - FIREDRILL_MCP_URL
                            - FIREDRILL_MCP_TOKEN
                            - FIREDRILL_CLI_URL
                            - FIREDRILL_CLI_TOKEN
                      url:
                        type: string
                        format: uri
                      method:
                        type: string
                        enum:
                          - POST
                          - PUT
                      headersFromEnvironment:
                        default: {}
                        type: object
                        additionalProperties:
                          type: string
                          pattern: ^[A-Za-z_][A-Za-z0-9_]*$
                      timeoutMs:
                        type: integer
                        minimum: 0
                        exclusiveMinimum: true
                        maximum: 3600000
                    required:
                      - id
                      - kind
                      - bindings
                      - url
                      - method
                      - headersFromEnvironment
                      - timeoutMs
                    additionalProperties: false
                  - type: object
                    properties:
                      id:
                        type: string
                        minLength: 1
                        maxLength: 96
                        pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                      kind:
                        type: string
                        enum:
                          - external
                      bindings:
                        minItems: 1
                        maxItems: 4
                        type: array
                        items:
                          type: string
                          enum:
                            - direct
                            - http
                            - mcp
                            - cli
                      bindingEnvironment:
                        type: object
                        additionalProperties:
                          type: string
                          enum:
                            - FIREDRILL_HTTP_URL
                            - FIREDRILL_HTTP_TOKEN
                            - FIREDRILL_MCP_URL
                            - FIREDRILL_MCP_TOKEN
                            - FIREDRILL_CLI_URL
                            - FIREDRILL_CLI_TOKEN
                      timeoutMs:
                        type: integer
                        minimum: 0
                        exclusiveMinimum: true
                        maximum: 86400000
                    required:
                      - id
                      - kind
                      - bindings
                      - timeoutMs
                    additionalProperties: false
            required:
              - schemaVersion
              - target
            additionalProperties: false
        scenarios:
          default: []
          maxItems: 100
          type: array
          items:
            type: object
            properties:
              schemaVersion:
                type: number
                enum:
                  - 1
              id:
                type: string
                minLength: 1
                maxLength: 96
                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              title:
                type: string
                minLength: 1
                maxLength: 200
              virtualTimeUs:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              actors:
                default: []
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                      maxLength: 96
                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                    instanceId:
                      type: string
                      minLength: 1
                      maxLength: 96
                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                    description:
                      type: string
                      minLength: 1
                      maxLength: 500
                      pattern: \S
                      description: >-
                        Plain-text actor description for authoring and
                        inspection; not a prompt or permission.
                    attributes:
                      default: {}
                      type: object
                      additionalProperties:
                        $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                    grants:
                      default: []
                      type: array
                      items:
                        type: object
                        properties:
                          packageId:
                            type: string
                            minLength: 1
                            maxLength: 96
                            pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                          instanceId:
                            type: string
                            minLength: 1
                            maxLength: 96
                            pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                          operationId:
                            type: string
                            minLength: 1
                            maxLength: 160
                            pattern: >-
                              ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                        required:
                          - packageId
                          - operationId
                        additionalProperties: false
                  required:
                    - id
                    - attributes
                    - grants
                  additionalProperties: false
              state:
                default: []
                type: array
                items:
                  oneOf:
                    - type: object
                      properties:
                        action:
                          type: string
                          enum:
                            - upsert
                        packageId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        namespace:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        rowId:
                          type: string
                          minLength: 1
                          maxLength: 512
                        value:
                          type: object
                          additionalProperties:
                            $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                      required:
                        - action
                        - packageId
                        - namespace
                        - rowId
                        - value
                      additionalProperties: false
                    - type: object
                      properties:
                        action:
                          type: string
                          enum:
                            - delete
                        packageId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        namespace:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        rowId:
                          type: string
                          minLength: 1
                          maxLength: 512
                      required:
                        - action
                        - packageId
                        - namespace
                        - rowId
                      additionalProperties: false
              faults:
                default: []
                type: array
                items:
                  type: object
                  properties:
                    packageId:
                      type: string
                      minLength: 1
                      maxLength: 96
                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                    instanceId:
                      type: string
                      minLength: 1
                      maxLength: 96
                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                    faultId:
                      type: string
                      minLength: 1
                      maxLength: 96
                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                  required:
                    - packageId
                    - faultId
                  additionalProperties: false
              initialEvents:
                default: []
                type: array
                items:
                  type: object
                  properties:
                    event:
                      type: object
                      properties:
                        packageId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        eventId:
                          type: string
                          minLength: 1
                          maxLength: 160
                          pattern: >-
                            ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                      required:
                        - packageId
                        - eventId
                      additionalProperties: false
                    payload:
                      type: object
                      additionalProperties:
                        $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                    atUs:
                      type: integer
                      minimum: -9007199254740991
                      maximum: 9007199254740991
                    actorId:
                      type: string
                      minLength: 1
                      maxLength: 96
                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                    actorInstanceId:
                      type: string
                      minLength: 1
                      maxLength: 96
                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                  required:
                    - event
                    - payload
                    - atUs
                    - actorId
                  additionalProperties: false
              toolOverrides:
                maxItems: 1000
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                      maxLength: 96
                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                    operation:
                      type: object
                      properties:
                        packageId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        operationId:
                          type: string
                          minLength: 1
                          maxLength: 160
                          pattern: >-
                            ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                      required:
                        - packageId
                        - operationId
                      additionalProperties: false
                    when:
                      type: object
                      properties:
                        arguments:
                          type: object
                          additionalProperties:
                            $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                        actorId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        actorInstanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                      additionalProperties: false
                    outcome:
                      oneOf:
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - return
                            value:
                              $ref: >-
                                #/components/schemas/ToolTestDefinitions___schema0
                          required:
                            - kind
                            - value
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - error
                            code:
                              type: string
                              pattern: ^[A-Z][A-Z0-9_]*$
                            message:
                              type: string
                              minLength: 1
                              maxLength: 1000
                            retryable:
                              type: boolean
                          required:
                            - kind
                            - code
                            - message
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - original
                          required:
                            - kind
                          additionalProperties: false
                    times:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 9007199254740991
                  required:
                    - id
                    - operation
                    - outcome
                  additionalProperties: false
            required:
              - schemaVersion
              - id
              - actors
              - state
              - faults
              - initialEvents
            additionalProperties: false
        drills:
          minItems: 1
          maxItems: 100
          type: array
          items:
            type: object
            properties:
              schemaVersion:
                type: number
                enum:
                  - 1
              id:
                type: string
                minLength: 1
                maxLength: 96
                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              title:
                type: string
                minLength: 1
                maxLength: 200
              tags:
                default: []
                type: array
                items:
                  type: string
                  minLength: 1
                  maxLength: 96
                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              targetId:
                type: string
                minLength: 1
                maxLength: 96
                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              scenarioId:
                type: string
                minLength: 1
                maxLength: 96
                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              inlineScenario:
                type: object
                properties:
                  title:
                    type: string
                    minLength: 1
                    maxLength: 200
                  virtualTimeUs:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                  actors:
                    default: []
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        description:
                          type: string
                          minLength: 1
                          maxLength: 500
                          pattern: \S
                          description: >-
                            Plain-text actor description for authoring and
                            inspection; not a prompt or permission.
                        attributes:
                          default: {}
                          type: object
                          additionalProperties:
                            $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                        grants:
                          default: []
                          type: array
                          items:
                            type: object
                            properties:
                              packageId:
                                type: string
                                minLength: 1
                                maxLength: 96
                                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                              instanceId:
                                type: string
                                minLength: 1
                                maxLength: 96
                                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                              operationId:
                                type: string
                                minLength: 1
                                maxLength: 160
                                pattern: >-
                                  ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                            required:
                              - packageId
                              - operationId
                            additionalProperties: false
                      required:
                        - id
                        - attributes
                        - grants
                      additionalProperties: false
                  state:
                    default: []
                    type: array
                    items:
                      oneOf:
                        - type: object
                          properties:
                            action:
                              type: string
                              enum:
                                - upsert
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            namespace:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            rowId:
                              type: string
                              minLength: 1
                              maxLength: 512
                            value:
                              type: object
                              additionalProperties:
                                $ref: >-
                                  #/components/schemas/ToolTestDefinitions___schema0
                          required:
                            - action
                            - packageId
                            - namespace
                            - rowId
                            - value
                          additionalProperties: false
                        - type: object
                          properties:
                            action:
                              type: string
                              enum:
                                - delete
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            namespace:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            rowId:
                              type: string
                              minLength: 1
                              maxLength: 512
                          required:
                            - action
                            - packageId
                            - namespace
                            - rowId
                          additionalProperties: false
                  faults:
                    default: []
                    type: array
                    items:
                      type: object
                      properties:
                        packageId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        faultId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                      required:
                        - packageId
                        - faultId
                      additionalProperties: false
                  initialEvents:
                    default: []
                    type: array
                    items:
                      type: object
                      properties:
                        event:
                          type: object
                          properties:
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            eventId:
                              type: string
                              minLength: 1
                              maxLength: 160
                              pattern: >-
                                ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                          required:
                            - packageId
                            - eventId
                          additionalProperties: false
                        payload:
                          type: object
                          additionalProperties:
                            $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                        atUs:
                          type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                        actorId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        actorInstanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                      required:
                        - event
                        - payload
                        - atUs
                        - actorId
                      additionalProperties: false
                  toolOverrides:
                    maxItems: 1000
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        operation:
                          type: object
                          properties:
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            operationId:
                              type: string
                              minLength: 1
                              maxLength: 160
                              pattern: >-
                                ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                          required:
                            - packageId
                            - operationId
                          additionalProperties: false
                        when:
                          type: object
                          properties:
                            arguments:
                              type: object
                              additionalProperties:
                                $ref: >-
                                  #/components/schemas/ToolTestDefinitions___schema0
                            actorId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            actorInstanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                          additionalProperties: false
                        outcome:
                          oneOf:
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - return
                                value:
                                  $ref: >-
                                    #/components/schemas/ToolTestDefinitions___schema0
                              required:
                                - kind
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - error
                                code:
                                  type: string
                                  pattern: ^[A-Z][A-Z0-9_]*$
                                message:
                                  type: string
                                  minLength: 1
                                  maxLength: 1000
                                retryable:
                                  type: boolean
                              required:
                                - kind
                                - code
                                - message
                              additionalProperties: false
                            - type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - original
                              required:
                                - kind
                              additionalProperties: false
                        times:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 9007199254740991
                      required:
                        - id
                        - operation
                        - outcome
                      additionalProperties: false
                required:
                  - virtualTimeUs
                  - actors
                  - state
                  - faults
                  - initialEvents
                additionalProperties: false
              toolOverrides:
                maxItems: 1000
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      minLength: 1
                      maxLength: 96
                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                    operation:
                      type: object
                      properties:
                        packageId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        operationId:
                          type: string
                          minLength: 1
                          maxLength: 160
                          pattern: >-
                            ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                      required:
                        - packageId
                        - operationId
                      additionalProperties: false
                    when:
                      type: object
                      properties:
                        arguments:
                          type: object
                          additionalProperties:
                            $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                        actorId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        actorInstanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                      additionalProperties: false
                    outcome:
                      oneOf:
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - return
                            value:
                              $ref: >-
                                #/components/schemas/ToolTestDefinitions___schema0
                          required:
                            - kind
                            - value
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - error
                            code:
                              type: string
                              pattern: ^[A-Z][A-Z0-9_]*$
                            message:
                              type: string
                              minLength: 1
                              maxLength: 1000
                            retryable:
                              type: boolean
                          required:
                            - kind
                            - code
                            - message
                          additionalProperties: false
                        - type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - original
                          required:
                            - kind
                          additionalProperties: false
                    times:
                      type: integer
                      minimum: 0
                      exclusiveMinimum: true
                      maximum: 9007199254740991
                  required:
                    - id
                    - operation
                    - outcome
                  additionalProperties: false
              actorId:
                type: string
                minLength: 1
                maxLength: 96
                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              actorInstanceId:
                type: string
                minLength: 1
                maxLength: 96
                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              task:
                type: object
                properties:
                  instruction:
                    type: string
                    minLength: 1
                    maxLength: 20000
                  input:
                    allOf:
                      - $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                required:
                  - instruction
                additionalProperties: false
              settle:
                type: object
                properties:
                  maxVirtualAdvanceUs:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                  maxToolCalls:
                    default: 1000
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 1000000
                  maxEvents:
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 1000000
                required:
                  - maxVirtualAdvanceUs
                  - maxToolCalls
                  - maxEvents
                additionalProperties: false
              timeline:
                type: object
                properties:
                  horizonUs:
                    default: 0
                    type: integer
                    minimum: -9007199254740991
                    maximum: 9007199254740991
                  maxToolCalls:
                    default: 1000
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 1000000
                  maxEvents:
                    default: 10000
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 1000000
                  stopOnInvariantFailure:
                    default: true
                    type: boolean
                  stopOnTargetFailure:
                    default: true
                    type: boolean
                  interactions:
                    default: []
                    maxItems: 10000
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        afterStartUs:
                          type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                        actorId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        actorInstanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        task:
                          type: object
                          properties:
                            instruction:
                              type: string
                              minLength: 1
                              maxLength: 20000
                            input:
                              allOf:
                                - $ref: >-
                                    #/components/schemas/ToolTestDefinitions___schema0
                          required:
                            - instruction
                          additionalProperties: false
                      required:
                        - id
                        - afterStartUs
                        - actorId
                        - task
                      additionalProperties: false
                  workloads:
                    default: []
                    maxItems: 1000
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        actorIds:
                          minItems: 1
                          maxItems: 10000
                          type: array
                          items:
                            type: string
                            minLength: 1
                            maxLength: 96
                            pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        actorInstanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        task:
                          type: object
                          properties:
                            instruction:
                              type: string
                              minLength: 1
                              maxLength: 20000
                            input:
                              allOf:
                                - $ref: >-
                                    #/components/schemas/ToolTestDefinitions___schema0
                          required:
                            - instruction
                          additionalProperties: false
                        startAfterUs:
                          default: 0
                          type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                        everyUs:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 9007199254740991
                        occurrences:
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 10000
                      required:
                        - id
                        - actorIds
                        - task
                        - startAfterUs
                        - everyUs
                        - occurrences
                      additionalProperties: false
                  invariants:
                    default: []
                    type: array
                    items:
                      oneOf:
                        - type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            gate:
                              default: true
                              type: boolean
                            kind:
                              type: string
                              enum:
                                - state.value
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            namespace:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            rowId:
                              type: string
                              minLength: 1
                              maxLength: 512
                            path:
                              minItems: 1
                              type: array
                              items:
                                anyOf:
                                  - type: string
                                    minLength: 1
                                  - type: integer
                                    minimum: 0
                                    maximum: 9007199254740991
                            comparison:
                              oneOf:
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - equals
                                    value:
                                      $ref: >-
                                        #/components/schemas/ToolTestDefinitions___schema0
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - not_equals
                                    value:
                                      $ref: >-
                                        #/components/schemas/ToolTestDefinitions___schema0
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - greater_than_or_equal
                                    value:
                                      type: number
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - less_than_or_equal
                                    value:
                                      type: number
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - one_of
                                    value:
                                      minItems: 1
                                      type: array
                                      items:
                                        $ref: >-
                                          #/components/schemas/ToolTestDefinitions___schema0
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                          required:
                            - id
                            - gate
                            - kind
                            - packageId
                            - namespace
                            - rowId
                            - path
                            - comparison
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            gate:
                              default: true
                              type: boolean
                            kind:
                              type: string
                              enum:
                                - state.count
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            namespace:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            where:
                              type: object
                              additionalProperties:
                                $ref: >-
                                  #/components/schemas/ToolTestDefinitions___schema0
                            comparison:
                              oneOf:
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - equals
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - not_equals
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - greater_than_or_equal
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - less_than_or_equal
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                          required:
                            - id
                            - gate
                            - kind
                            - packageId
                            - namespace
                            - comparison
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            gate:
                              default: true
                              type: boolean
                            kind:
                              type: string
                              enum:
                                - operation.count
                            operation:
                              type: object
                              properties:
                                packageId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                instanceId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                operationId:
                                  type: string
                                  minLength: 1
                                  maxLength: 160
                                  pattern: >-
                                    ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                              required:
                                - packageId
                                - operationId
                              additionalProperties: false
                            actorId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            actorInstanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            idempotency:
                              minItems: 1
                              type: array
                              items:
                                type: string
                                enum:
                                  - not_requested
                                  - recorded
                                  - replayed
                                  - not_recorded
                            outcomes:
                              minItems: 1
                              type: array
                              items:
                                type: string
                                enum:
                                  - ok
                                  - denied
                                  - tool_error
                                  - unsupported
                                  - invalid
                            comparison:
                              oneOf:
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - equals
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - not_equals
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - greater_than_or_equal
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - less_than_or_equal
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                          required:
                            - id
                            - gate
                            - kind
                            - operation
                            - comparison
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            gate:
                              default: true
                              type: boolean
                            kind:
                              type: string
                              enum:
                                - operation.order
                            sequence:
                              minItems: 2
                              type: array
                              items:
                                type: object
                                properties:
                                  anyOf:
                                    minItems: 1
                                    type: array
                                    items:
                                      type: object
                                      properties:
                                        packageId:
                                          type: string
                                          minLength: 1
                                          maxLength: 96
                                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                        instanceId:
                                          type: string
                                          minLength: 1
                                          maxLength: 96
                                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                        operationId:
                                          type: string
                                          minLength: 1
                                          maxLength: 160
                                          pattern: >-
                                            ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                                      required:
                                        - packageId
                                        - operationId
                                      additionalProperties: false
                                  actorId:
                                    type: string
                                    minLength: 1
                                    maxLength: 96
                                    pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                  actorInstanceId:
                                    type: string
                                    minLength: 1
                                    maxLength: 96
                                    pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                  idempotency:
                                    minItems: 1
                                    type: array
                                    items:
                                      type: string
                                      enum:
                                        - not_requested
                                        - recorded
                                        - replayed
                                        - not_recorded
                                  outcomes:
                                    default:
                                      - ok
                                    minItems: 1
                                    type: array
                                    items:
                                      type: string
                                      enum:
                                        - ok
                                        - denied
                                        - tool_error
                                        - unsupported
                                        - invalid
                                required:
                                  - anyOf
                                  - outcomes
                                additionalProperties: false
                          required:
                            - id
                            - gate
                            - kind
                            - sequence
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            gate:
                              default: true
                              type: boolean
                            kind:
                              type: string
                              enum:
                                - operation.arguments
                            operation:
                              type: object
                              properties:
                                packageId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                instanceId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                operationId:
                                  type: string
                                  minLength: 1
                                  maxLength: 160
                                  pattern: >-
                                    ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                              required:
                                - packageId
                                - operationId
                              additionalProperties: false
                            actorId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            actorInstanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            idempotency:
                              minItems: 1
                              type: array
                              items:
                                type: string
                                enum:
                                  - not_requested
                                  - recorded
                                  - replayed
                                  - not_recorded
                            outcomes:
                              default:
                                - ok
                              minItems: 1
                              type: array
                              items:
                                type: string
                                enum:
                                  - ok
                                  - denied
                                  - tool_error
                                  - unsupported
                                  - invalid
                            occurrence:
                              default: 1
                              type: integer
                              minimum: 0
                              exclusiveMinimum: true
                              maximum: 9007199254740991
                            contains:
                              type: object
                              additionalProperties:
                                $ref: >-
                                  #/components/schemas/ToolTestDefinitions___schema0
                          required:
                            - id
                            - gate
                            - kind
                            - operation
                            - outcomes
                            - occurrence
                            - contains
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            gate:
                              default: true
                              type: boolean
                            kind:
                              type: string
                              enum:
                                - operation.denied
                            operation:
                              type: object
                              properties:
                                packageId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                instanceId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                operationId:
                                  type: string
                                  minLength: 1
                                  maxLength: 160
                                  pattern: >-
                                    ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                              required:
                                - packageId
                                - operationId
                              additionalProperties: false
                            actorId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            actorInstanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            idempotency:
                              minItems: 1
                              type: array
                              items:
                                type: string
                                enum:
                                  - not_requested
                                  - recorded
                                  - replayed
                                  - not_recorded
                            outcomes:
                              minItems: 1
                              type: array
                              items:
                                type: string
                                enum:
                                  - denied
                                  - tool_error
                            errorCode:
                              type: string
                              pattern: ^[a-z][a-z0-9-]*\.[A-Z][A-Z0-9_]*$
                            attemptRequired:
                              default: true
                              type: boolean
                          required:
                            - id
                            - gate
                            - kind
                            - operation
                            - attemptRequired
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            gate:
                              default: true
                              type: boolean
                            kind:
                              type: string
                              enum:
                                - event.count
                            event:
                              type: object
                              properties:
                                packageId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                instanceId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                eventId:
                                  type: string
                                  minLength: 1
                                  maxLength: 160
                                  pattern: >-
                                    ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                              required:
                                - packageId
                                - eventId
                              additionalProperties: false
                            phase:
                              default: emitted
                              type: string
                              enum:
                                - emitted
                                - scheduled
                                - handled
                                - failed
                            comparison:
                              oneOf:
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - equals
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - not_equals
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - greater_than_or_equal
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - less_than_or_equal
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                          required:
                            - id
                            - gate
                            - kind
                            - event
                            - phase
                            - comparison
                          additionalProperties: false
                        - type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            gate:
                              default: true
                              type: boolean
                            kind:
                              type: string
                              enum:
                                - callback.count
                            callback:
                              type: object
                              properties:
                                packageId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                instanceId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                callbackId:
                                  type: string
                                  minLength: 1
                                  maxLength: 96
                                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                              required:
                                - packageId
                                - callbackId
                              additionalProperties: false
                            phase:
                              default: delivered
                              type: string
                              enum:
                                - queued
                                - attempt_started
                                - delivered
                                - retry_scheduled
                                - failed
                                - recovered
                            comparison:
                              oneOf:
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - equals
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - not_equals
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - greater_than_or_equal
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    operator:
                                      type: string
                                      enum:
                                        - less_than_or_equal
                                    value:
                                      type: integer
                                      minimum: 0
                                      maximum: 9007199254740991
                                  required:
                                    - operator
                                    - value
                                  additionalProperties: false
                          required:
                            - id
                            - gate
                            - kind
                            - callback
                            - phase
                            - comparison
                          additionalProperties: false
                required:
                  - horizonUs
                  - maxToolCalls
                  - maxEvents
                  - stopOnInvariantFailure
                  - stopOnTargetFailure
                  - interactions
                  - workloads
                  - invariants
                additionalProperties: false
              trials:
                default:
                  count: 1
                  classification: contract
                type: object
                properties:
                  count:
                    default: 1
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    maximum: 10000
                  classification:
                    default: contract
                    type: string
                    enum:
                      - contract
                      - safety
                      - quality
                required:
                  - count
                  - classification
                additionalProperties: false
              assertions:
                minItems: 1
                type: array
                items:
                  oneOf:
                    - type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        gate:
                          default: true
                          type: boolean
                        kind:
                          type: string
                          enum:
                            - state.value
                        packageId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        namespace:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        rowId:
                          type: string
                          minLength: 1
                          maxLength: 512
                        path:
                          minItems: 1
                          type: array
                          items:
                            anyOf:
                              - type: string
                                minLength: 1
                              - type: integer
                                minimum: 0
                                maximum: 9007199254740991
                        comparison:
                          oneOf:
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - equals
                                value:
                                  $ref: >-
                                    #/components/schemas/ToolTestDefinitions___schema0
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - not_equals
                                value:
                                  $ref: >-
                                    #/components/schemas/ToolTestDefinitions___schema0
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - greater_than_or_equal
                                value:
                                  type: number
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - less_than_or_equal
                                value:
                                  type: number
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - one_of
                                value:
                                  minItems: 1
                                  type: array
                                  items:
                                    $ref: >-
                                      #/components/schemas/ToolTestDefinitions___schema0
                              required:
                                - operator
                                - value
                              additionalProperties: false
                      required:
                        - id
                        - gate
                        - kind
                        - packageId
                        - namespace
                        - rowId
                        - path
                        - comparison
                      additionalProperties: false
                    - type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        gate:
                          default: true
                          type: boolean
                        kind:
                          type: string
                          enum:
                            - state.count
                        packageId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        instanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        namespace:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        where:
                          type: object
                          additionalProperties:
                            $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                        comparison:
                          oneOf:
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - equals
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - not_equals
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - greater_than_or_equal
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - less_than_or_equal
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                      required:
                        - id
                        - gate
                        - kind
                        - packageId
                        - namespace
                        - comparison
                      additionalProperties: false
                    - type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        gate:
                          default: true
                          type: boolean
                        kind:
                          type: string
                          enum:
                            - operation.count
                        operation:
                          type: object
                          properties:
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            operationId:
                              type: string
                              minLength: 1
                              maxLength: 160
                              pattern: >-
                                ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                          required:
                            - packageId
                            - operationId
                          additionalProperties: false
                        actorId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        actorInstanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        idempotency:
                          minItems: 1
                          type: array
                          items:
                            type: string
                            enum:
                              - not_requested
                              - recorded
                              - replayed
                              - not_recorded
                        outcomes:
                          minItems: 1
                          type: array
                          items:
                            type: string
                            enum:
                              - ok
                              - denied
                              - tool_error
                              - unsupported
                              - invalid
                        comparison:
                          oneOf:
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - equals
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - not_equals
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - greater_than_or_equal
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - less_than_or_equal
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                      required:
                        - id
                        - gate
                        - kind
                        - operation
                        - comparison
                      additionalProperties: false
                    - type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        gate:
                          default: true
                          type: boolean
                        kind:
                          type: string
                          enum:
                            - operation.order
                        sequence:
                          minItems: 2
                          type: array
                          items:
                            type: object
                            properties:
                              anyOf:
                                minItems: 1
                                type: array
                                items:
                                  type: object
                                  properties:
                                    packageId:
                                      type: string
                                      minLength: 1
                                      maxLength: 96
                                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                    instanceId:
                                      type: string
                                      minLength: 1
                                      maxLength: 96
                                      pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                                    operationId:
                                      type: string
                                      minLength: 1
                                      maxLength: 160
                                      pattern: >-
                                        ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                                  required:
                                    - packageId
                                    - operationId
                                  additionalProperties: false
                              actorId:
                                type: string
                                minLength: 1
                                maxLength: 96
                                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                              actorInstanceId:
                                type: string
                                minLength: 1
                                maxLength: 96
                                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                              idempotency:
                                minItems: 1
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - not_requested
                                    - recorded
                                    - replayed
                                    - not_recorded
                              outcomes:
                                default:
                                  - ok
                                minItems: 1
                                type: array
                                items:
                                  type: string
                                  enum:
                                    - ok
                                    - denied
                                    - tool_error
                                    - unsupported
                                    - invalid
                            required:
                              - anyOf
                              - outcomes
                            additionalProperties: false
                      required:
                        - id
                        - gate
                        - kind
                        - sequence
                      additionalProperties: false
                    - type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        gate:
                          default: true
                          type: boolean
                        kind:
                          type: string
                          enum:
                            - operation.arguments
                        operation:
                          type: object
                          properties:
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            operationId:
                              type: string
                              minLength: 1
                              maxLength: 160
                              pattern: >-
                                ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                          required:
                            - packageId
                            - operationId
                          additionalProperties: false
                        actorId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        actorInstanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        idempotency:
                          minItems: 1
                          type: array
                          items:
                            type: string
                            enum:
                              - not_requested
                              - recorded
                              - replayed
                              - not_recorded
                        outcomes:
                          default:
                            - ok
                          minItems: 1
                          type: array
                          items:
                            type: string
                            enum:
                              - ok
                              - denied
                              - tool_error
                              - unsupported
                              - invalid
                        occurrence:
                          default: 1
                          type: integer
                          minimum: 0
                          exclusiveMinimum: true
                          maximum: 9007199254740991
                        contains:
                          type: object
                          additionalProperties:
                            $ref: '#/components/schemas/ToolTestDefinitions___schema0'
                      required:
                        - id
                        - gate
                        - kind
                        - operation
                        - outcomes
                        - occurrence
                        - contains
                      additionalProperties: false
                    - type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        gate:
                          default: true
                          type: boolean
                        kind:
                          type: string
                          enum:
                            - operation.denied
                        operation:
                          type: object
                          properties:
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            operationId:
                              type: string
                              minLength: 1
                              maxLength: 160
                              pattern: >-
                                ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                          required:
                            - packageId
                            - operationId
                          additionalProperties: false
                        actorId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        actorInstanceId:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        idempotency:
                          minItems: 1
                          type: array
                          items:
                            type: string
                            enum:
                              - not_requested
                              - recorded
                              - replayed
                              - not_recorded
                        outcomes:
                          minItems: 1
                          type: array
                          items:
                            type: string
                            enum:
                              - denied
                              - tool_error
                        errorCode:
                          type: string
                          pattern: ^[a-z][a-z0-9-]*\.[A-Z][A-Z0-9_]*$
                        attemptRequired:
                          default: true
                          type: boolean
                      required:
                        - id
                        - gate
                        - kind
                        - operation
                        - attemptRequired
                      additionalProperties: false
                    - type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        gate:
                          default: true
                          type: boolean
                        kind:
                          type: string
                          enum:
                            - event.count
                        event:
                          type: object
                          properties:
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            eventId:
                              type: string
                              minLength: 1
                              maxLength: 160
                              pattern: >-
                                ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*(?:\.[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*)*$
                          required:
                            - packageId
                            - eventId
                          additionalProperties: false
                        phase:
                          default: emitted
                          type: string
                          enum:
                            - emitted
                            - scheduled
                            - handled
                            - failed
                        comparison:
                          oneOf:
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - equals
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - not_equals
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - greater_than_or_equal
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - less_than_or_equal
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                      required:
                        - id
                        - gate
                        - kind
                        - event
                        - phase
                        - comparison
                      additionalProperties: false
                    - type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                          maxLength: 96
                          pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                        gate:
                          default: true
                          type: boolean
                        kind:
                          type: string
                          enum:
                            - callback.count
                        callback:
                          type: object
                          properties:
                            packageId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            instanceId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                            callbackId:
                              type: string
                              minLength: 1
                              maxLength: 96
                              pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
                          required:
                            - packageId
                            - callbackId
                          additionalProperties: false
                        phase:
                          default: delivered
                          type: string
                          enum:
                            - queued
                            - attempt_started
                            - delivered
                            - retry_scheduled
                            - failed
                            - recovered
                        comparison:
                          oneOf:
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - equals
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - not_equals
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - greater_than_or_equal
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                            - type: object
                              properties:
                                operator:
                                  type: string
                                  enum:
                                    - less_than_or_equal
                                value:
                                  type: integer
                                  minimum: 0
                                  maximum: 9007199254740991
                              required:
                                - operator
                                - value
                              additionalProperties: false
                      required:
                        - id
                        - gate
                        - kind
                        - callback
                        - phase
                        - comparison
                      additionalProperties: false
            required:
              - schemaVersion
              - id
              - tags
              - targetId
              - trials
              - assertions
            additionalProperties: false
        suites:
          default: []
          maxItems: 100
          type: array
          items:
            type: object
            properties:
              schemaVersion:
                type: number
                enum:
                  - 1
              id:
                type: string
                minLength: 1
                maxLength: 96
                pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              title:
                type: string
                minLength: 1
                maxLength: 200
              drills:
                default: []
                type: array
                items:
                  type: string
                  minLength: 1
                  maxLength: 96
                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              tags:
                default: []
                type: array
                items:
                  type: string
                  minLength: 1
                  maxLength: 96
                  pattern: ^[a-z][a-z0-9]*(?:[-_][a-z0-9]+)*$
              trials:
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 10000
              concurrency:
                default: 1
                type: integer
                minimum: 0
                exclusiveMinimum: true
                maximum: 64
              retries:
                default: 0
                type: integer
                minimum: 0
                maximum: 10
            required:
              - schemaVersion
              - id
              - drills
              - tags
              - concurrency
              - retries
            additionalProperties: false
      required:
        - targets
        - scenarios
        - drills
        - suites
      additionalProperties: false
    ToolSetupPage___schema0:
      description: Any JSON-compatible value
    ToolTestDefinitions___schema0:
      description: Any JSON-compatible value
  securitySchemes:
    controlCredential:
      type: http
      scheme: bearer
      description: Opaque control credential

````