# Rename a run

- **OpenAPI Version:** `3.2.0`
- **API Version:** `3.1.0`
- **Contact:** Syndai <https://syndai.ai>

## Contents

**Operations**

- [POST /api/v1/external/coding/runs/{coding\_run\_id}/rename](#scalar-operation-post-apiv1externalcodingrunscoding-run-idrename)

**Schemas**

- [ExternalCodingRunRenameRequest](#scalar-schema-externalcodingrunrenamerequest)
- [ExternalCodingRunStatusResponse](#scalar-schema-externalcodingrunstatusresponse)
- [ExternalRunActivityEventRead](#scalar-schema-externalrunactivityeventread)
- [CodingRunArtifactBundleRead](#scalar-schema-codingrunartifactbundleread)
- [CodingArtifactRefRead](#scalar-schema-codingartifactrefread)
- [CodingCriterionRead](#scalar-schema-codingcriterionread)
- [CodingCriterionProofRead](#scalar-schema-codingcriterionproofread)
- [ExternalEngineeringPlanRead](#scalar-schema-externalengineeringplanread)
- [ExternalPlanAnnotationRead](#scalar-schema-externalplanannotationread)
- [ExternalSpecAnchorRead](#scalar-schema-externalspecanchorread)
- [ChangeEvidence](#scalar-schema-changeevidence)
- [EvidenceCriterion](#scalar-schema-evidencecriterion)
- [EvidenceMedia](#scalar-schema-evidencemedia)
- [EvidenceFlow](#scalar-schema-evidenceflow)
- [EvidenceFlowStep](#scalar-schema-evidenceflowstep)
- [EvidencePage](#scalar-schema-evidencepage)
- [EvidenceUiFix](#scalar-schema-evidenceuifix)
- [ExternalCodingFinalResponseRead](#scalar-schema-externalcodingfinalresponseread)
- [ExternalRunGoalRead](#scalar-schema-externalrungoalread)
- [ExternalRunGoalLayerRead](#scalar-schema-externalrungoallayerread)
- [ExternalRunGoalStepRead](#scalar-schema-externalrungoalstepread)
- [ExternalLinkedRunRead](#scalar-schema-externallinkedrunread)
- [ExternalCodingRunLivenessRead](#scalar-schema-externalcodingrunlivenessread)
- [ExternalRunPaidByRead](#scalar-schema-externalrunpaidbyread)
- [ExternalCodingRunPauseRead](#scalar-schema-externalcodingrunpauseread)
- [ExternalPendingFactRead](#scalar-schema-externalpendingfactread)
- [ExternalCodingPendingHitlRequestRead](#scalar-schema-externalcodingpendinghitlrequestread)
- [ExternalCodingConnectionAskRead](#scalar-schema-externalcodingconnectionaskread)
- [ExternalCodingHitlInputRead](#scalar-schema-externalcodinghitlinputread)
- [ExternalCodingHitlFreeTextPolicyRead](#scalar-schema-externalcodinghitlfreetextpolicyread)
- [ExternalCodingHitlOptionRead](#scalar-schema-externalcodinghitloptionread)
- [WebsiteApprovalDetails](#scalar-schema-websiteapprovaldetails)
- [ExternalCodingProjectRead](#scalar-schema-externalcodingprojectread)
- [ExternalCodingRunQueuedRead](#scalar-schema-externalcodingrunqueuedread)
- [ExternalCodingReviewGateRead](#scalar-schema-externalcodingreviewgateread)
- [CodingReviewGateStatus](#scalar-schema-codingreviewgatestatus)
- [ExternalCodingRunRead](#scalar-schema-externalcodingrunread)
- [ExternalRunAttentionRead](#scalar-schema-externalrunattentionread)
- [ExternalSliceChainRead](#scalar-schema-externalslicechainread)
- [ExternalSliceRead](#scalar-schema-externalsliceread)
- [ExternalRunIngressRead](#scalar-schema-externalruningressread)
- [ExternalCodingLandRead](#scalar-schema-externalcodinglandread)
- [ExternalLandSecurityRead](#scalar-schema-externallandsecurityread)
- [ExternalLandAccessRead](#scalar-schema-externallandaccessread)
- [ExternalLandIntendedAccess](#scalar-schema-externallandintendedaccess)
- [ExternalLandSecurityFixed](#scalar-schema-externallandsecurityfixed)
- [ExternalLandSecurityHeld](#scalar-schema-externallandsecurityheld)
- [RunLessonRead](#scalar-schema-runlessonread)
- [MemoryGivenRead](#scalar-schema-memorygivenread)
- [ExternalRunPrRead](#scalar-schema-externalrunprread)
- [ExternalRunReadiness](#scalar-schema-externalrunreadiness)
- [ExternalSubscriptionShareRead](#scalar-schema-externalsubscriptionshareread)
- [ExternalSessionApprovalRead](#scalar-schema-externalsessionapprovalread)
- [ExternalSpecReviewRead](#scalar-schema-externalspecreviewread)
- [ExternalSpecAnnotationRead](#scalar-schema-externalspecannotationread)
- [ExternalSpecSnapshotRead](#scalar-schema-externalspecsnapshotread)
- [ExternalSpecCriterionSnapshotRead](#scalar-schema-externalspeccriterionsnapshotread)
- [ExternalRunSteerMessageRead](#scalar-schema-externalrunsteermessageread)
- [ExternalRunToolUsedRead](#scalar-schema-externalruntoolusedread)
- [ExternalCodingValidationRunRead](#scalar-schema-externalcodingvalidationrunread)
- [CodingValidationStatus](#scalar-schema-codingvalidationstatus)
- [ProblemDetail](#scalar-schema-problemdetail)
- [ExternalErrorCode](#scalar-schema-externalerrorcode)

<a id="scalar-context-global-servers"></a>

## Servers

- **URL:** `https://api.syndai.ai`

<a id="scalar-context-global-authentication"></a>

## Authentication

- **CustomerApiKey**: HTTP bearer (`API Key`)

  Customer API key sent as a bearer token

## Tags

### Runs

A run is one coding task Syndai carries from a prompt to a delivered change. Creating a run starts billable work; its `external_request_id` is the idempotency key, so a retry never starts a second run. Follow a run by streaming its events or polling `GET /runs/{id}`. Phases are open-ended: a run can pause to ask you something, so read `pending_hitl_requests` and answer through `/responses` rather than assuming a fixed order.

## Operations

<a id="scalar-operation-post-apiv1externalcodingrunscoding-run-idrename"></a>

### Rename a run

- **Method:** `POST`
- **Path:** `/api/v1/external/coding/runs/{coding_run_id}/rename`
- **Operation ID:** `renameRun`
- **Tags:** Runs

Change a run's display title and return its fresh status. The title is cosmetic: it never changes the run's `external_request_id` (its idempotency key) or its work. A 409 means the run is busy, so retry. Requires the `coding:runs:respond` scope.

**Servers:** [Inherited servers](#scalar-context-global-servers)

**Authentication:** [Global authentication](#scalar-context-global-authentication)

#### Path parameters

- **`coding_run_id` (required)**: `string`, format: `uuid`

#### Query parameters

- **`customer_id`**: `string | null`, format: `uuid`

#### Request body

**Required:** `true`

**Content type:** `application/json`

[ExternalCodingRunRenameRequest](#scalar-schema-externalcodingrunrenamerequest)

<a id="scalar-example-1"></a>

**Generated example:**

```json
{
  "title": ""
}
```

#### Responses

##### 200 Request fulfilled, document follows

**Content type:** `application/json`

[ExternalCodingRunStatusResponse](#scalar-schema-externalcodingrunstatusresponse)

**Example:**

```json
{
  "has_proposed_diff": false,
  "pause": null,
  "pending_hitl_requests": [],
  "project": {
    "created_at": "2026-10-27T09:00:00Z",
    "default_branch": "main",
    "id": "c2e5f8a1-3b4d-4e6f-8a9b-1c2d3e4f5a6b",
    "large_repo_detected": false,
    "repo_name": "storefront",
    "repo_owner": "acme",
    "repo_url": "https://github.com/acme/storefront",
    "updated_at": "2026-10-27T09:00:00Z"
  },
  "run": {
    "artifact_retention_profile": "standard",
    "autonomy_mode": "review",
    "base_branch": "main",
    "coding_project_id": "c2e5f8a1-3b4d-4e6f-8a9b-1c2d3e4f5a6b",
    "coding_repository_id": "8a1d4e2f-5b6c-4d7e-8f9a-0b1c2d3e4f50",
    "created_at": "2026-10-27T09:00:00Z",
    "current_phase": "execute",
    "egress_profile": "managed_default",
    "external_request_id": "ticket-4812",
    "id": "3f9c2b7a-6d1e-4c8b-9a2f-1b7e5d4c3a21",
    "pr_url": null,
    "title": "Add a dark mode toggle to the header",
    "updated_at": "2026-10-27T09:04:12Z",
    "validation_iteration": 0
  },
  "stop_requested": false
}
```

##### 400, 401, 403, 404

- `400` Bad request syntax or unsupported method
- `401` Invalid or missing customer API key
- `403` Insufficient scope or forbidden customer access
- `404` Resource not found

**Content type:** `application/problem+json`

[ProblemDetail](#scalar-schema-problemdetail)

RFC 7807 problem detail returned for public CaaS errors.

<a id="scalar-example-2"></a>

**Generated example:**

```json
{
  "code": "BUDGET_EXHAUSTED",
  "detail": null,
  "existing_run_id": null,
  "instance": null,
  "status": 1,
  "title": "",
  "type": "about:blank",
  "additionalProperty": "anything"
}
```

##### 429 Rate limit exceeded

**Headers:**

- **`Retry-After`**

  Seconds to wait before retrying the request

  `integer`

**Content type:** `application/problem+json`

[ProblemDetail](#scalar-schema-problemdetail)

RFC 7807 problem detail returned for public CaaS errors.

[Generated example](#scalar-example-2)

##### default Unexpected error

**Content type:** `application/problem+json`

[ProblemDetail](#scalar-schema-problemdetail)

<a id="scalar-example-3"></a>

**Generated example:**

```json
null
```

## Schemas

<a id="scalar-schema-externalcodingrunrenamerequest"></a>

### ExternalCodingRunRenameRequest

**Type:** `object`

- **`title` (required)**: `string`

<a id="scalar-example-4"></a>

**Generated example:**

```json
{
  "title": ""
}
```

<a id="scalar-schema-externalcodingrunstatusresponse"></a>

### ExternalCodingRunStatusResponse

**Type:** `object`

- **`project` (required)**: [ExternalCodingProjectRead](#scalar-schema-externalcodingprojectread)
- **`run` (required)**: [ExternalCodingRunRead](#scalar-schema-externalcodingrunread)
- **`activity`**: array of [ExternalRunActivityEventRead](#scalar-schema-externalrunactivityeventread)
- **`artifact_bundle`**: [CodingRunArtifactBundleRead](#scalar-schema-codingrunartifactbundleread) | `null`
- **`brief`**: `string | null`
- **`bug_scan_stats`**: `object | null`
- **`criteria`**: array of [CodingCriterionRead](#scalar-schema-codingcriterionread)
- **`criteria_agreement`**: `string`, default: `"pending"`
- **`delivered_diff_stats`**: `object | null`

  **Additional properties:**

  `integer`
- **`engineering_plan`**: [ExternalEngineeringPlanRead](#scalar-schema-externalengineeringplanread) | `null`
- **`evidence`**: [ChangeEvidence](#scalar-schema-changeevidence) | `null`
- **`final_response`**: [ExternalCodingFinalResponseRead](#scalar-schema-externalcodingfinalresponseread) | `null`
- **`goal`**: [ExternalRunGoalRead](#scalar-schema-externalrungoalread) | `null`
- **`has_proposed_diff`**: `boolean`, default: `false`
- **`linked_runs`**: array of [ExternalLinkedRunRead](#scalar-schema-externallinkedrunread) | `null`
- **`liveness`**: [ExternalCodingRunLivenessRead](#scalar-schema-externalcodingrunlivenessread) | `null`
- **`paid_by`**: [ExternalRunPaidByRead](#scalar-schema-externalrunpaidbyread) | `null`
- **`pause`**: [ExternalCodingRunPauseRead](#scalar-schema-externalcodingrunpauseread) | `null`
- **`pending_facts`**: array of [ExternalPendingFactRead](#scalar-schema-externalpendingfactread)
- **`pending_hitl_requests`**: array of [ExternalCodingPendingHitlRequestRead](#scalar-schema-externalcodingpendinghitlrequestread)
- **`queued`**: [ExternalCodingRunQueuedRead](#scalar-schema-externalcodingrunqueuedread) | `null`
- **`review_gates`**: array of [ExternalCodingReviewGateRead](#scalar-schema-externalcodingreviewgateread)
- **`session_approvals`**: array of [ExternalSessionApprovalRead](#scalar-schema-externalsessionapprovalread)
- **`spec_review`**: [ExternalSpecReviewRead](#scalar-schema-externalspecreviewread)
- **`spec_review_expires_at`**: `string`
- **`spec_review_wait_until`**: `string`
- **`steer_messages`**: array of [ExternalRunSteerMessageRead](#scalar-schema-externalrunsteermessageread)
- **`stop_requested`**: `boolean`, default: `false`
- **`tools_used`**: array of [ExternalRunToolUsedRead](#scalar-schema-externalruntoolusedread)
- **`validations`**: array of [ExternalCodingValidationRunRead](#scalar-schema-externalcodingvalidationrunread)

**Example:**

```json
{
  "has_proposed_diff": false,
  "pause": null,
  "pending_hitl_requests": [],
  "project": {
    "created_at": "2026-10-27T09:00:00Z",
    "default_branch": "main",
    "id": "c2e5f8a1-3b4d-4e6f-8a9b-1c2d3e4f5a6b",
    "large_repo_detected": false,
    "repo_name": "storefront",
    "repo_owner": "acme",
    "repo_url": "https://github.com/acme/storefront",
    "updated_at": "2026-10-27T09:00:00Z"
  },
  "run": {
    "artifact_retention_profile": "standard",
    "autonomy_mode": "review",
    "base_branch": "main",
    "coding_project_id": "c2e5f8a1-3b4d-4e6f-8a9b-1c2d3e4f5a6b",
    "coding_repository_id": "8a1d4e2f-5b6c-4d7e-8f9a-0b1c2d3e4f50",
    "created_at": "2026-10-27T09:00:00Z",
    "current_phase": "execute",
    "egress_profile": "managed_default",
    "external_request_id": "ticket-4812",
    "id": "3f9c2b7a-6d1e-4c8b-9a2f-1b7e5d4c3a21",
    "pr_url": null,
    "title": "Add a dark mode toggle to the header",
    "updated_at": "2026-10-27T09:04:12Z",
    "validation_iteration": 0
  },
  "stop_requested": false
}
```

<a id="scalar-schema-externalrunactivityeventread"></a>

### ExternalRunActivityEventRead

**Type:** `object`

- **`id` (required)**: `string`
- **`kind` (required)**: `string`
- **`ts` (required)**: `string`, format: `date-time`
- **`approx_ts`**: `boolean | null`
- **`attempt`**: `string | null`
- **`family`**: `string | null`
- **`hunk`**: `string | null`
- **`label`**: `string | null`
- **`lines_added`**: `integer | null`
- **`lines_removed`**: `integer | null`
- **`ms`**: `integer | null`
- **`ok`**: `boolean | null`
- **`op`**: `string | null`
- **`parent`**: `string | null`
- **`phase`**: `string | null`
- **`ref`**: `string | null`
- **`tail`**: `string | null`
- **`target`**: `string | null`
- **`text`**: `string | null`
- **`tokens`**: `integer | null`
- **`wait`**: `string | null`

<a id="scalar-example-5"></a>

**Generated example:**

```json
{
  "approx_ts": true,
  "attempt": "",
  "family": "",
  "hunk": "",
  "id": "",
  "kind": "",
  "label": "",
  "lines_added": 1,
  "lines_removed": 1,
  "ms": 1,
  "ok": true,
  "op": "",
  "parent": "",
  "phase": "",
  "ref": "",
  "tail": "",
  "target": "",
  "text": "",
  "tokens": 1,
  "ts": "",
  "wait": ""
}
```

<a id="scalar-schema-codingrunartifactbundleread"></a>

### CodingRunArtifactBundleRead

**Type:** `object`

- **`coding_run_id` (required)**: `string`, format: `uuid`
- **`provenance` (required)**: `object`
- **`sections` (required)**: `object`

  **Additional properties:**

  array of [CodingArtifactRefRead](#scalar-schema-codingartifactrefread)
- **`effective_resolution_sha256`**: `string | null`
- **`policy_contract_sha256`**: `string | null`

<a id="scalar-example-6"></a>

**Generated example:**

```json
{
  "coding_run_id": "",
  "effective_resolution_sha256": "",
  "policy_contract_sha256": "",
  "provenance": {
    "additionalProperty": "anything"
  },
  "sections": {
    "additionalProperty": [
      {
        "artifact_id": "",
        "display_name": "",
        "expires_at": "",
        "kind": "",
        "mime_type": "",
        "open_state": "",
        "retention_tag": "",
        "section": "",
        "sha256": "",
        "size_bytes": 1,
        "source_id": "",
        "source_type": ""
      }
    ]
  }
}
```

<a id="scalar-schema-codingartifactrefread"></a>

### CodingArtifactRefRead

**Type:** `object`

- **`artifact_id` (required)**: `string`, format: `uuid`
- **`display_name` (required)**: `string`
- **`kind` (required)**: `string`
- **`open_state` (required)**: `string`
- **`section` (required)**: `string`
- **`source_type` (required)**: `string`
- **`expires_at`**: `string | null`, format: `date-time`
- **`mime_type`**: `string | null`
- **`retention_tag`**: `string | null`
- **`sha256`**: `string | null`
- **`size_bytes`**: `integer | null`
- **`source_id`**: `string | null`, format: `uuid`

<a id="scalar-example-7"></a>

**Generated example:**

```json
{
  "artifact_id": "",
  "display_name": "",
  "expires_at": "",
  "kind": "",
  "mime_type": "",
  "open_state": "",
  "retention_tag": "",
  "section": "",
  "sha256": "",
  "size_bytes": 1,
  "source_id": "",
  "source_type": ""
}
```

<a id="scalar-schema-codingcriterionread"></a>

### CodingCriterionRead

**Type:** `object`

- **`bound_validator_count` (required)**: `integer`
- **`criterion_key` (required)**: `string`, format: `uuid`
- **`id` (required)**: `string`, format: `uuid`
- **`label` (required)**: `string`
- **`proven_validator_count` (required)**: `integer`
- **`status` (required)**: `string`
- **`text` (required)**: `string`
- **`text_hash` (required)**: `string`
- **`verdict` (required)**: `string`
- **`failed_validators`**: `array of string`
- **`not_run_reason`**: `string | null`
- **`proof`**: [CodingCriterionProofRead](#scalar-schema-codingcriterionproofread) | `null`
- **`proven_validators`**: `array of string`
- **`ratified_by`**: `string | null`, format: `uuid`
- **`tree_sha`**: `string | null`

<a id="scalar-example-8"></a>

**Generated example:**

```json
{
  "bound_validator_count": 1,
  "criterion_key": "",
  "failed_validators": [
    ""
  ],
  "id": "",
  "label": "",
  "not_run_reason": "",
  "proof": {
    "duration_ms": 1,
    "failure_classification": "",
    "flaky": false,
    "not_run_reason": "",
    "runner": "",
    "status": "",
    "test_origin": "",
    "tests": [
      ""
    ],
    "tests_collected": 1,
    "tests_failed": 1
  },
  "proven_validator_count": 1,
  "proven_validators": [
    ""
  ],
  "ratified_by": "",
  "status": "",
  "text": "",
  "text_hash": "",
  "tree_sha": "",
  "verdict": ""
}
```

<a id="scalar-schema-codingcriterionproofread"></a>

### CodingCriterionProofRead

**Type:** `object`

- **`runner` (required)**: `string`
- **`tests` (required)**: `array of string`
- **`tests_collected` (required)**: `integer`
- **`tests_failed` (required)**: `integer`
- **`duration_ms`**: `integer | null`
- **`failure_classification`**: `string | null`
- **`flaky`**: `boolean`, default: `false`
- **`not_run_reason`**: `string | null`
- **`status`**: `string | null`
- **`test_origin`**: `string | null`

<a id="scalar-example-9"></a>

**Generated example:**

```json
{
  "duration_ms": 1,
  "failure_classification": "",
  "flaky": false,
  "not_run_reason": "",
  "runner": "",
  "status": "",
  "test_origin": "",
  "tests": [
    ""
  ],
  "tests_collected": 1,
  "tests_failed": 1
}
```

<a id="scalar-schema-externalengineeringplanread"></a>

### ExternalEngineeringPlanRead

**Type:** `object`

- **`plan_sha256` (required)**: `string`
- **`revision` (required)**: `integer`
- **`text` (required)**: `string`
- **`annotations`**: array of [ExternalPlanAnnotationRead](#scalar-schema-externalplanannotationread)
- **`previous_plan_sha256`**: `string | null`
- **`previous_revision`**: `integer | null`
- **`submitted_at`**: `string | null`
- **`truncated`**: `boolean`, default: `false`

<a id="scalar-example-10"></a>

**Generated example:**

```json
{
  "annotations": [
    {
      "agent_response": {
        "additionalProperty": "anything"
      },
      "anchor": {
        "anchor_prefix": "",
        "anchor_suffix": "",
        "char_end": 1,
        "char_start": 1,
        "quote": "",
        "resolved_end": 1,
        "resolved_start": 1,
        "status": "exact"
      },
      "comment": "",
      "created_at": "",
      "id": "",
      "in_reply_to": "",
      "plan_revision": 1,
      "plan_sha256": "",
      "status": "submitted",
      "suggested_text": "",
      "type": "comment"
    }
  ],
  "plan_sha256": "",
  "previous_plan_sha256": "",
  "previous_revision": 1,
  "revision": 1,
  "submitted_at": "",
  "text": "",
  "truncated": false
}
```

<a id="scalar-schema-externalplanannotationread"></a>

### ExternalPlanAnnotationRead

**Type:** `object`

- **`comment` (required)**: `string`
- **`created_at` (required)**: `string`
- **`id` (required)**: `string`, format: `uuid`
- **`plan_revision` (required)**: `integer`
- **`plan_sha256` (required)**: `string`
- **`status` (required)**: `string`, possible values: `"submitted", "answered", "superseded"`
- **`type` (required)**: `string`, possible values: `"comment", "suggest_edit", "flag_remove", "global"`
- **`agent_response`**: `object | null`
- **`anchor`**: [ExternalSpecAnchorRead](#scalar-schema-externalspecanchorread) | `null`
- **`in_reply_to`**: `string | null`, format: `uuid`
- **`suggested_text`**: `string | null`

<a id="scalar-example-11"></a>

**Generated example:**

```json
{
  "agent_response": {
    "additionalProperty": "anything"
  },
  "anchor": {
    "anchor_prefix": "",
    "anchor_suffix": "",
    "char_end": 1,
    "char_start": 1,
    "quote": "",
    "resolved_end": 1,
    "resolved_start": 1,
    "status": "exact"
  },
  "comment": "",
  "created_at": "",
  "id": "",
  "in_reply_to": "",
  "plan_revision": 1,
  "plan_sha256": "",
  "status": "submitted",
  "suggested_text": "",
  "type": "comment"
}
```

<a id="scalar-schema-externalspecanchorread"></a>

### ExternalSpecAnchorRead

**Type:** `object`

- **`anchor_prefix`**: `string | null`
- **`anchor_suffix`**: `string | null`
- **`char_end`**: `integer | null`
- **`char_start`**: `integer | null`
- **`quote`**: `string | null`
- **`resolved_end`**: `integer | null`
- **`resolved_start`**: `integer | null`
- **`status`**

  **One of:**
  - `string`, possible values: `"exact", "fuzzy", "outdated", "target_removed"`

<a id="scalar-example-12"></a>

**Generated example:**

```json
{
  "anchor_prefix": "",
  "anchor_suffix": "",
  "char_end": 1,
  "char_start": 1,
  "quote": "",
  "resolved_end": 1,
  "resolved_start": 1,
  "status": "exact"
}
```

<a id="scalar-schema-changeevidence"></a>

### ChangeEvidence

**Type:** `object`

- **`criteria` (required)**: array of [EvidenceCriterion](#scalar-schema-evidencecriterion)
- **`pages` (required)**: array of [EvidencePage](#scalar-schema-evidencepage)
- **`missing_reason`**: `string | null`
- **`ui_fix`**: [EvidenceUiFix](#scalar-schema-evidenceuifix) | `null`

<a id="scalar-example-13"></a>

**Generated example:**

```json
{
  "criteria": [
    {
      "before_card": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "card": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "criterion_id": "",
      "flow": {
        "before": {
          "before": {
            "before": {
              "before": {},
              "clip": {},
              "duration_ms": 1,
              "failed_step": 1,
              "failure": "",
              "poster": {},
              "received": "",
              "status": "",
              "steps": []
            },
            "clip": {
              "alt": "",
              "height": 1,
              "id": "",
              "kind": "",
              "truncated": true,
              "url": "",
              "url_expires_at": "",
              "width": 1
            },
            "duration_ms": 1,
            "failed_step": 1,
            "failure": "",
            "poster": {
              "alt": "",
              "height": 1,
              "id": "",
              "kind": "",
              "truncated": true,
              "url": "",
              "url_expires_at": "",
              "width": 1
            },
            "received": "",
            "status": "",
            "steps": [
              {
                "index": 1,
                "status": "",
                "still": {},
                "title": ""
              }
            ]
          },
          "clip": {
            "alt": "",
            "height": 1,
            "id": "",
            "kind": "",
            "truncated": true,
            "url": "",
            "url_expires_at": "",
            "width": 1
          },
          "duration_ms": 1,
          "failed_step": 1,
          "failure": "",
          "poster": {
            "alt": "",
            "height": 1,
            "id": "",
            "kind": "",
            "truncated": true,
            "url": "",
            "url_expires_at": "",
            "width": 1
          },
          "received": "",
          "status": "",
          "steps": [
            {
              "index": 1,
              "status": "",
              "still": {
                "alt": "",
                "height": 1,
                "id": "",
                "kind": "",
                "truncated": true,
                "url": "",
                "url_expires_at": "",
                "width": 1
              },
              "title": ""
            }
          ]
        },
        "clip": {
          "alt": "",
          "height": 1,
          "id": "",
          "kind": "",
          "truncated": true,
          "url": "",
          "url_expires_at": "",
          "width": 1
        },
        "duration_ms": 1,
        "failed_step": 1,
        "failure": "",
        "poster": {
          "alt": "",
          "height": 1,
          "id": "",
          "kind": "",
          "truncated": true,
          "url": "",
          "url_expires_at": "",
          "width": 1
        },
        "received": "",
        "status": "",
        "steps": [
          {
            "index": 1,
            "status": "",
            "still": {
              "alt": "",
              "height": 1,
              "id": "",
              "kind": "",
              "truncated": true,
              "url": "",
              "url_expires_at": "",
              "width": 1
            },
            "title": ""
          }
        ]
      },
      "flow_missing": true,
      "label": "",
      "replay": "",
      "surface": "",
      "text": ""
    }
  ],
  "missing_reason": "",
  "pages": [
    {
      "before_desktop": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "before_phone": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "change": "",
      "desktop": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "phone": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "route": ""
    }
  ],
  "ui_fix": {
    "after": {
      "alt": "",
      "height": 1,
      "id": "",
      "kind": "",
      "truncated": true,
      "url": "",
      "url_expires_at": "",
      "width": 1
    },
    "before": {
      "alt": "",
      "height": 1,
      "id": "",
      "kind": "",
      "truncated": true,
      "url": "",
      "url_expires_at": "",
      "width": 1
    }
  }
}
```

<a id="scalar-schema-evidencecriterion"></a>

### EvidenceCriterion

**Type:** `object`

- **`criterion_id` (required)**: `string`, format: `uuid`
- **`flow_missing` (required)**: `boolean`
- **`label` (required)**: `string`
- **`text` (required)**: `string`
- **`before_card`**: [EvidenceMedia](#scalar-schema-evidencemedia) | `null`
- **`card`**: [EvidenceMedia](#scalar-schema-evidencemedia) | `null`
- **`flow`**: [EvidenceFlow](#scalar-schema-evidenceflow) | `null`
- **`replay`**: `string | null`
- **`surface`**: `string | null`

<a id="scalar-example-14"></a>

**Generated example:**

```json
{
  "before_card": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "card": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "criterion_id": "",
  "flow": {
    "before": {
      "before": {
        "before": {
          "before": {
            "before": {},
            "clip": {},
            "duration_ms": 1,
            "failed_step": 1,
            "failure": "",
            "poster": {},
            "received": "",
            "status": "",
            "steps": []
          },
          "clip": {
            "alt": "",
            "height": 1,
            "id": "",
            "kind": "",
            "truncated": true,
            "url": "",
            "url_expires_at": "",
            "width": 1
          },
          "duration_ms": 1,
          "failed_step": 1,
          "failure": "",
          "poster": {
            "alt": "",
            "height": 1,
            "id": "",
            "kind": "",
            "truncated": true,
            "url": "",
            "url_expires_at": "",
            "width": 1
          },
          "received": "",
          "status": "",
          "steps": [
            {
              "index": 1,
              "status": "",
              "still": {},
              "title": ""
            }
          ]
        },
        "clip": {
          "alt": "",
          "height": 1,
          "id": "",
          "kind": "",
          "truncated": true,
          "url": "",
          "url_expires_at": "",
          "width": 1
        },
        "duration_ms": 1,
        "failed_step": 1,
        "failure": "",
        "poster": {
          "alt": "",
          "height": 1,
          "id": "",
          "kind": "",
          "truncated": true,
          "url": "",
          "url_expires_at": "",
          "width": 1
        },
        "received": "",
        "status": "",
        "steps": [
          {
            "index": 1,
            "status": "",
            "still": {
              "alt": "",
              "height": 1,
              "id": "",
              "kind": "",
              "truncated": true,
              "url": "",
              "url_expires_at": "",
              "width": 1
            },
            "title": ""
          }
        ]
      },
      "clip": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "duration_ms": 1,
      "failed_step": 1,
      "failure": "",
      "poster": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "received": "",
      "status": "",
      "steps": [
        {
          "index": 1,
          "status": "",
          "still": {
            "alt": "",
            "height": 1,
            "id": "",
            "kind": "",
            "truncated": true,
            "url": "",
            "url_expires_at": "",
            "width": 1
          },
          "title": ""
        }
      ]
    },
    "clip": {
      "alt": "",
      "height": 1,
      "id": "",
      "kind": "",
      "truncated": true,
      "url": "",
      "url_expires_at": "",
      "width": 1
    },
    "duration_ms": 1,
    "failed_step": 1,
    "failure": "",
    "poster": {
      "alt": "",
      "height": 1,
      "id": "",
      "kind": "",
      "truncated": true,
      "url": "",
      "url_expires_at": "",
      "width": 1
    },
    "received": "",
    "status": "",
    "steps": [
      {
        "index": 1,
        "status": "",
        "still": {
          "alt": "",
          "height": 1,
          "id": "",
          "kind": "",
          "truncated": true,
          "url": "",
          "url_expires_at": "",
          "width": 1
        },
        "title": ""
      }
    ]
  },
  "flow_missing": true,
  "label": "",
  "replay": "",
  "surface": "",
  "text": ""
}
```

<a id="scalar-schema-evidencemedia"></a>

### EvidenceMedia

**Type:** `object`

- **`alt` (required)**: `string`
- **`id` (required)**: `string`, format: `uuid`
- **`kind` (required)**: `string`
- **`truncated` (required)**: `boolean`
- **`url` (required)**: `string`
- **`url_expires_at` (required)**: `string`, format: `date-time`
- **`height`**: `integer | null`
- **`width`**: `integer | null`

<a id="scalar-example-15"></a>

**Generated example:**

```json
{
  "alt": "",
  "height": 1,
  "id": "",
  "kind": "",
  "truncated": true,
  "url": "",
  "url_expires_at": "",
  "width": 1
}
```

<a id="scalar-schema-evidenceflow"></a>

### EvidenceFlow

**Type:** `object`

- **`status` (required)**: `string`
- **`steps` (required)**: array of [EvidenceFlowStep](#scalar-schema-evidenceflowstep)
- **`before`**: [EvidenceFlow](#scalar-schema-evidenceflow) | `null`
- **`clip`**: [EvidenceMedia](#scalar-schema-evidencemedia) | `null`
- **`duration_ms`**: `integer | null`
- **`failed_step`**: `integer | null`
- **`failure`**: `string | null`
- **`poster`**: [EvidenceMedia](#scalar-schema-evidencemedia) | `null`
- **`received`**: `string | null`

<a id="scalar-example-16"></a>

**Generated example:**

```json
{
  "before": {
    "before": {
      "before": {
        "before": {
          "before": {
            "before": {},
            "clip": {},
            "duration_ms": 1,
            "failed_step": 1,
            "failure": "",
            "poster": {},
            "received": "",
            "status": "",
            "steps": []
          },
          "clip": {
            "alt": "",
            "height": 1,
            "id": "",
            "kind": "",
            "truncated": true,
            "url": "",
            "url_expires_at": "",
            "width": 1
          },
          "duration_ms": 1,
          "failed_step": 1,
          "failure": "",
          "poster": {
            "alt": "",
            "height": 1,
            "id": "",
            "kind": "",
            "truncated": true,
            "url": "",
            "url_expires_at": "",
            "width": 1
          },
          "received": "",
          "status": "",
          "steps": [
            {
              "index": 1,
              "status": "",
              "still": {},
              "title": ""
            }
          ]
        },
        "clip": {
          "alt": "",
          "height": 1,
          "id": "",
          "kind": "",
          "truncated": true,
          "url": "",
          "url_expires_at": "",
          "width": 1
        },
        "duration_ms": 1,
        "failed_step": 1,
        "failure": "",
        "poster": {
          "alt": "",
          "height": 1,
          "id": "",
          "kind": "",
          "truncated": true,
          "url": "",
          "url_expires_at": "",
          "width": 1
        },
        "received": "",
        "status": "",
        "steps": [
          {
            "index": 1,
            "status": "",
            "still": {
              "alt": "",
              "height": 1,
              "id": "",
              "kind": "",
              "truncated": true,
              "url": "",
              "url_expires_at": "",
              "width": 1
            },
            "title": ""
          }
        ]
      },
      "clip": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "duration_ms": 1,
      "failed_step": 1,
      "failure": "",
      "poster": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "received": "",
      "status": "",
      "steps": [
        {
          "index": 1,
          "status": "",
          "still": {
            "alt": "",
            "height": 1,
            "id": "",
            "kind": "",
            "truncated": true,
            "url": "",
            "url_expires_at": "",
            "width": 1
          },
          "title": ""
        }
      ]
    },
    "clip": {
      "alt": "",
      "height": 1,
      "id": "",
      "kind": "",
      "truncated": true,
      "url": "",
      "url_expires_at": "",
      "width": 1
    },
    "duration_ms": 1,
    "failed_step": 1,
    "failure": "",
    "poster": {
      "alt": "",
      "height": 1,
      "id": "",
      "kind": "",
      "truncated": true,
      "url": "",
      "url_expires_at": "",
      "width": 1
    },
    "received": "",
    "status": "",
    "steps": [
      {
        "index": 1,
        "status": "",
        "still": {
          "alt": "",
          "height": 1,
          "id": "",
          "kind": "",
          "truncated": true,
          "url": "",
          "url_expires_at": "",
          "width": 1
        },
        "title": ""
      }
    ]
  },
  "clip": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "duration_ms": 1,
  "failed_step": 1,
  "failure": "",
  "poster": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "received": "",
  "status": "",
  "steps": [
    {
      "index": 1,
      "status": "",
      "still": {
        "alt": "",
        "height": 1,
        "id": "",
        "kind": "",
        "truncated": true,
        "url": "",
        "url_expires_at": "",
        "width": 1
      },
      "title": ""
    }
  ]
}
```

<a id="scalar-schema-evidenceflowstep"></a>

### EvidenceFlowStep

**Type:** `object`

- **`index` (required)**: `integer`
- **`status` (required)**: `string`
- **`title` (required)**: `string`
- **`still`**: [EvidenceMedia](#scalar-schema-evidencemedia) | `null`

<a id="scalar-example-17"></a>

**Generated example:**

```json
{
  "index": 1,
  "status": "",
  "still": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "title": ""
}
```

<a id="scalar-schema-evidencepage"></a>

### EvidencePage

**Type:** `object`

- **`route` (required)**: `string`
- **`before_desktop`**: [EvidenceMedia](#scalar-schema-evidencemedia) | `null`
- **`before_phone`**: [EvidenceMedia](#scalar-schema-evidencemedia) | `null`
- **`change`**: `string | null`
- **`desktop`**: [EvidenceMedia](#scalar-schema-evidencemedia) | `null`
- **`phone`**: [EvidenceMedia](#scalar-schema-evidencemedia) | `null`

<a id="scalar-example-18"></a>

**Generated example:**

```json
{
  "before_desktop": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "before_phone": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "change": "",
  "desktop": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "phone": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "route": ""
}
```

<a id="scalar-schema-evidenceuifix"></a>

### EvidenceUiFix

**Type:** `object`

- **`after` (required)**: [EvidenceMedia](#scalar-schema-evidencemedia)
- **`before` (required)**: [EvidenceMedia](#scalar-schema-evidencemedia)

<a id="scalar-example-19"></a>

**Generated example:**

```json
{
  "after": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  },
  "before": {
    "alt": "",
    "height": 1,
    "id": "",
    "kind": "",
    "truncated": true,
    "url": "",
    "url_expires_at": "",
    "width": 1
  }
}
```

<a id="scalar-schema-externalcodingfinalresponseread"></a>

### ExternalCodingFinalResponseRead

**Type:** `object`

- **`status` (required)**: `string`
- **`content`**: `string | null`
- **`error_code`**: `string | null`
- **`message_id`**: `string | null`, format: `uuid`
- **`published_at`**: `string | null`, format: `date-time`

<a id="scalar-example-20"></a>

**Generated example:**

```json
{
  "content": "",
  "error_code": "",
  "message_id": "",
  "published_at": "",
  "status": ""
}
```

<a id="scalar-schema-externalrungoalread"></a>

### ExternalRunGoalRead

**Type:** `object`

- **`steps` (required)**: array of [ExternalRunGoalStepRead](#scalar-schema-externalrungoalstepread)
- **`current_detail`**: `string | null`
- **`layers`**: array of [ExternalRunGoalLayerRead](#scalar-schema-externalrungoallayerread) | `null`
- **`repair_reason`**: `string | null`
- **`repair_round`**: `integer | null`

<a id="scalar-example-21"></a>

**Generated example:**

```json
{
  "current_detail": "",
  "layers": [
    {
      "files": [
        ""
      ],
      "sequence": 1,
      "status": "",
      "title": ""
    }
  ],
  "repair_reason": "",
  "repair_round": 1,
  "steps": [
    {
      "key": "",
      "label": "",
      "state": ""
    }
  ]
}
```

<a id="scalar-schema-externalrungoallayerread"></a>

### ExternalRunGoalLayerRead

**Type:** `object`

- **`sequence` (required)**: `integer`
- **`status` (required)**: `string`
- **`title` (required)**: `string`
- **`files`**: `array of string`

<a id="scalar-example-22"></a>

**Generated example:**

```json
{
  "files": [
    ""
  ],
  "sequence": 1,
  "status": "",
  "title": ""
}
```

<a id="scalar-schema-externalrungoalstepread"></a>

### ExternalRunGoalStepRead

**Type:** `object`

- **`key` (required)**: `string`
- **`label` (required)**: `string`
- **`state` (required)**: `string`

<a id="scalar-example-23"></a>

**Generated example:**

```json
{
  "key": "",
  "label": "",
  "state": ""
}
```

<a id="scalar-schema-externallinkedrunread"></a>

### ExternalLinkedRunRead

**Type:** `object`

- **`created_at` (required)**: `string`, format: `date-time`
- **`relation` (required)**: `string`
- **`run_id` (required)**: `string`, format: `uuid`
- **`slice_sequence`**: `integer | null`

<a id="scalar-example-24"></a>

**Generated example:**

```json
{
  "created_at": "",
  "relation": "",
  "run_id": "",
  "slice_sequence": 1
}
```

<a id="scalar-schema-externalcodingrunlivenessread"></a>

### ExternalCodingRunLivenessRead

**Type:** `object`

- **`state` (required)**: `string`, possible values: `"running", "waiting_on_approval", "waiting_on_input", "blocked", "stuck", "terminal", "waiting_on_review", "queued"`
- **`attempt`**: `integer | null`
- **`criteria_attention`**: `boolean`, default: `false`
- **`current_activity`**: `object | null`
- **`last_activity_at`**: `string | null`, format: `date-time`
- **`max_attempts`**: `integer | null`
- **`reason`**: `string | null`
- **`source_id`**: `string | null`
- **`source_type`**: `string | null`
- **`stuck_detail`**: `string | null`
- **`stuck_reason`**: `string | null`

<a id="scalar-example-25"></a>

**Generated example:**

```json
{
  "attempt": 1,
  "criteria_attention": false,
  "current_activity": {
    "additionalProperty": "anything"
  },
  "last_activity_at": "",
  "max_attempts": 1,
  "reason": "",
  "source_id": "",
  "source_type": "",
  "state": "running",
  "stuck_detail": "",
  "stuck_reason": ""
}
```

<a id="scalar-schema-externalrunpaidbyread"></a>

### ExternalRunPaidByRead

**Type:** `object`

- **`sources` (required)**: `array of string`
- **`subscription_provider`**: `string | null`

<a id="scalar-example-26"></a>

**Generated example:**

```json
{
  "sources": [
    ""
  ],
  "subscription_provider": ""
}
```

<a id="scalar-schema-externalcodingrunpauseread"></a>

### ExternalCodingRunPauseRead

**Type:** `object`

- **`kind` (required)**: `string`

  Why the run is paused. Current values: "usage\_exhausted" (provider usage window exhausted; auto-resumes at resume\_at when known), "credential\_disconnected" (a connected credential needs reconnecting), and "infra\_fault" (a fault on our side; see cause). Additional kinds may be added over time; clients must tolerate unknown values and degrade to a generic paused state.
- **`cause`**: `string | null`
- **`resume_at`**: `string | null`, format: `date-time`
- **`resume_kind`**: `string | null`

<a id="scalar-example-27"></a>

**Generated example:**

```json
{
  "cause": "",
  "kind": "",
  "resume_at": "",
  "resume_kind": ""
}
```

<a id="scalar-schema-externalpendingfactread"></a>

### ExternalPendingFactRead

**Type:** `object`

- **`fact` (required)**: `string`

<a id="scalar-example-28"></a>

**Generated example:**

```json
{
  "fact": ""
}
```

<a id="scalar-schema-externalcodingpendinghitlrequestread"></a>

### ExternalCodingPendingHitlRequestRead

**Type:** `object`

- **`created_at` (required)**: `string`, format: `date-time`
- **`hitl_request_id` (required)**: `string`, format: `uuid`
- **`inputs` (required)**: array of [ExternalCodingHitlInputRead](#scalar-schema-externalcodinghitlinputread)
- **`request_kind` (required)**: `string`
- **`schema_version` (required)**: `integer`
- **`summary` (required)**: `string`
- **`connection`**: [ExternalCodingConnectionAskRead](#scalar-schema-externalcodingconnectionaskread) | `null`
- **`defaults_at`**: `string | null`, format: `date-time`
- **`expires_at`**: `string | null`, format: `date-time`
- **`website_details`**: [WebsiteApprovalDetails](#scalar-schema-websiteapprovaldetails) | `null`

<a id="scalar-example-29"></a>

**Generated example:**

```json
{
  "connection": {
    "kind": "",
    "link": "",
    "names": [
      ""
    ]
  },
  "created_at": "",
  "defaults_at": "",
  "expires_at": "",
  "hitl_request_id": "",
  "inputs": [
    {
      "context": "",
      "default_assumption": "",
      "default_option_ids": [
        ""
      ],
      "free_text": {
        "enabled": true,
        "max_length": 1,
        "placeholder": "",
        "required_policy": "",
        "ui_mode": ""
      },
      "input_id": "",
      "kind": "",
      "options": [
        {
          "id": "",
          "label": ""
        }
      ],
      "prompt": "",
      "required": true
    }
  ],
  "request_kind": "",
  "schema_version": 1,
  "summary": "",
  "website_details": {
    "account_label": "",
    "action_class": "",
    "action_summary": "",
    "adapter_fingerprint": "",
    "adapter_spec_id": "",
    "domain": "",
    "estimated_cost_usd": 1,
    "expected_effect": "",
    "expires_at": "",
    "max_authorized_delta": {
      "additionalProperty": "anything"
    },
    "money_or_credit_impact": {
      "additionalProperty": "anything"
    },
    "reversibility": "",
    "risk_class": "",
    "robots_txt_violation": false,
    "session_identity_label": "",
    "session_window_expires_at": "",
    "tos_flagged_reason": ""
  }
}
```

<a id="scalar-schema-externalcodingconnectionaskread"></a>

### ExternalCodingConnectionAskRead

**Type:** `object`

- **`kind` (required)**: `string`
- **`link` (required)**: `string`
- **`names` (required)**: `array of string`

<a id="scalar-example-30"></a>

**Generated example:**

```json
{
  "kind": "",
  "link": "",
  "names": [
    ""
  ]
}
```

<a id="scalar-schema-externalcodinghitlinputread"></a>

### ExternalCodingHitlInputRead

**Type:** `object`

- **`input_id` (required)**: `string`
- **`kind` (required)**: `string`
- **`prompt` (required)**: `string`
- **`required` (required)**: `boolean`
- **`context`**: `string | null`
- **`default_assumption`**: `string | null`
- **`default_option_ids`**: `array of string`
- **`free_text`**: [ExternalCodingHitlFreeTextPolicyRead](#scalar-schema-externalcodinghitlfreetextpolicyread) | `null`
- **`options`**: array of [ExternalCodingHitlOptionRead](#scalar-schema-externalcodinghitloptionread)

<a id="scalar-example-31"></a>

**Generated example:**

```json
{
  "context": "",
  "default_assumption": "",
  "default_option_ids": [
    ""
  ],
  "free_text": {
    "enabled": true,
    "max_length": 1,
    "placeholder": "",
    "required_policy": "",
    "ui_mode": ""
  },
  "input_id": "",
  "kind": "",
  "options": [
    {
      "id": "",
      "label": ""
    }
  ],
  "prompt": "",
  "required": true
}
```

<a id="scalar-schema-externalcodinghitlfreetextpolicyread"></a>

### ExternalCodingHitlFreeTextPolicyRead

**Type:** `object`

- **`enabled` (required)**: `boolean`
- **`max_length`**: `integer | null`
- **`placeholder`**: `string | null`
- **`required_policy`**: `string | null`
- **`ui_mode`**: `string | null`

<a id="scalar-example-32"></a>

**Generated example:**

```json
{
  "enabled": true,
  "max_length": 1,
  "placeholder": "",
  "required_policy": "",
  "ui_mode": ""
}
```

<a id="scalar-schema-externalcodinghitloptionread"></a>

### ExternalCodingHitlOptionRead

**Type:** `object`

- **`id` (required)**: `string`
- **`label` (required)**: `string`

<a id="scalar-example-33"></a>

**Generated example:**

```json
{
  "id": "",
  "label": ""
}
```

<a id="scalar-schema-websiteapprovaldetails"></a>

### WebsiteApprovalDetails

**Type:** `object`

- **`action_summary` (required)**: `string`
- **`adapter_fingerprint` (required)**: `string`
- **`adapter_spec_id` (required)**: `string`
- **`domain` (required)**: `string`
- **`expected_effect` (required)**: `string`
- **`expires_at` (required)**: `string`
- **`reversibility` (required)**: `string`
- **`risk_class` (required)**: `string`
- **`account_label`**: `string | null`
- **`action_class`**: `string | null`
- **`estimated_cost_usd`**: `number | null`
- **`max_authorized_delta`**: `object`
- **`money_or_credit_impact`**: `object`
- **`robots_txt_violation`**: `boolean`, default: `false`
- **`session_identity_label`**: `string | null`
- **`session_window_expires_at`**: `string | null`
- **`tos_flagged_reason`**: `string | null`

<a id="scalar-example-34"></a>

**Generated example:**

```json
{
  "account_label": "",
  "action_class": "",
  "action_summary": "",
  "adapter_fingerprint": "",
  "adapter_spec_id": "",
  "domain": "",
  "estimated_cost_usd": 1,
  "expected_effect": "",
  "expires_at": "",
  "max_authorized_delta": {
    "additionalProperty": "anything"
  },
  "money_or_credit_impact": {
    "additionalProperty": "anything"
  },
  "reversibility": "",
  "risk_class": "",
  "robots_txt_violation": false,
  "session_identity_label": "",
  "session_window_expires_at": "",
  "tos_flagged_reason": ""
}
```

<a id="scalar-schema-externalcodingprojectread"></a>

### ExternalCodingProjectRead

**Type:** `object`

- **`created_at` (required)**: `string`, format: `date-time`
- **`default_branch` (required)**: `string`
- **`id` (required)**: `string`, format: `uuid`
- **`large_repo_detected` (required)**: `boolean`
- **`repo_name` (required)**: `string`
- **`repo_owner` (required)**: `string`
- **`repo_url` (required)**: `string`
- **`updated_at` (required)**: `string`, format: `date-time`
- **`last_head_sha`**: `string | null`
- **`last_synced_at`**: `string | null`, format: `date-time`
- **`last_tree_sha`**: `string | null`
- **`repo_manifest_generated_at`**: `string | null`, format: `date-time`
- **`repo_size_kb`**: `integer | null`
- **`repo_tree_entry_count`**: `integer | null`

<a id="scalar-example-35"></a>

**Generated example:**

```json
{
  "created_at": "",
  "default_branch": "",
  "id": "",
  "large_repo_detected": true,
  "last_head_sha": "",
  "last_synced_at": "",
  "last_tree_sha": "",
  "repo_manifest_generated_at": "",
  "repo_name": "",
  "repo_owner": "",
  "repo_size_kb": 1,
  "repo_tree_entry_count": 1,
  "repo_url": "",
  "updated_at": ""
}
```

<a id="scalar-schema-externalcodingrunqueuedread"></a>

### ExternalCodingRunQueuedRead

**Type:** `object`

- **`position` (required)**: `integer`
- **`next_retry_at`**: `string | null`, format: `date-time`

<a id="scalar-example-36"></a>

**Generated example:**

```json
{
  "next_retry_at": "",
  "position": 1
}
```

<a id="scalar-schema-externalcodingreviewgateread"></a>

### ExternalCodingReviewGateRead

**Type:** `object`

- **`artifact_refs` (required)**: `array of object`
- **`blocking` (required)**: `boolean`
- **`created_at` (required)**: `string`, format: `date-time`
- **`findings` (required)**: `array of object`
- **`gate_name` (required)**: `string`
- **`id` (required)**: `string`, format: `uuid`
- **`iteration` (required)**: `integer`
- **`status` (required)**: `string`, possible values: `"pending", "running", "passed", "failed", "waived", "blocked", "cancelled"`

  Lifecycle state for a structured coding review/playbook gate.
- **`updated_at` (required)**: `string`, format: `date-time`
- **`reviewed_diff_sha256`**: `string | null`
- **`reviewed_head_sha`**: `string | null`

<a id="scalar-example-37"></a>

**Generated example:**

```json
{
  "artifact_refs": [
    {
      "additionalProperty": "anything"
    }
  ],
  "blocking": true,
  "created_at": "",
  "findings": [
    {
      "additionalProperty": "anything"
    }
  ],
  "gate_name": "",
  "id": "",
  "iteration": 1,
  "reviewed_diff_sha256": "",
  "reviewed_head_sha": "",
  "status": "pending",
  "updated_at": ""
}
```

<a id="scalar-schema-codingreviewgatestatus"></a>

### CodingReviewGateStatus

**Type:** `string`, possible values: `"pending", "running", "passed", "failed", "waived", "blocked", "cancelled"`

Lifecycle state for a structured coding review/playbook gate.

<a id="scalar-schema-externalcodingrunread"></a>

### ExternalCodingRunRead

**Type:** `object`

- **`artifact_retention_profile` (required)**: `string`
- **`coding_project_id` (required)**: `string`, format: `uuid`
- **`created_at` (required)**: `string`, format: `date-time`
- **`current_phase` (required)**: `string`
- **`egress_profile` (required)**: `string`
- **`external_request_id` (required)**: `string`
- **`id` (required)**: `string`, format: `uuid`
- **`updated_at` (required)**: `string`, format: `date-time`
- **`validation_iteration` (required)**: `integer`
- **`api_value_usd`**: `number | null`
- **`attention`**: [ExternalRunAttentionRead](#scalar-schema-externalrunattentionread) | `null`
- **`auto_run_kind`**: `string | null`
- **`autonomy_mode`**: `string`, default: `"review"`
- **`base_branch`**: `string | null`
- **`cap_usd`**: `number | null`
- **`chain`**: [ExternalSliceChainRead](#scalar-schema-externalslicechainread) | `null`
- **`charged_usd`**: `number | null`
- **`coding_repository_id`**: `string | null`, format: `uuid`
- **`current_activity_kind`**: `string | null`
- **`current_activity_since`**: `string | null`
- **`current_activity_target`**: `string | null`
- **`delivery_status`**: `string | null`
- **`economy`**: `boolean`, default: `false`
- **`effective_resolution_sha256`**: `string | null`
- **`environment_id`**: `string | null`, format: `uuid`
- **`failure_origin`**: `string | null`
- **`harness_kind`**: `string | null`

  The harness chosen in the run's policy\_config, if any; null when no explicit choice was made. Open set — clients must tolerate unknown values.
- **`ingress`**: [ExternalRunIngressRead](#scalar-schema-externalruningressread) | `null`
- **`land`**: [ExternalCodingLandRead](#scalar-schema-externalcodinglandread) | `null`
- **`last_stage`**: `string | null`
- **`last_stage_at`**: `string | null`, format: `date-time`
- **`lesson`**: [RunLessonRead](#scalar-schema-runlessonread) | `null`
- **`memory_given`**: [MemoryGivenRead](#scalar-schema-memorygivenread) | `null`
- **`origin`**: `string | null`
- **`parent_coding_run_id`**: `string | null`, format: `uuid`
- **`policy_contract_sha256`**: `string | null`
- **`policy_resolved_at`**: `string | null`, format: `date-time`
- **`pr_number`**: `integer | null`
- **`pr_status`**: `string | null`
- **`pr_url`**: `string | null`
- **`preview_urls`**: `object`
- **`prompt`**: `string | null`
- **`pull_requests`**: array of [ExternalRunPrRead](#scalar-schema-externalrunprread) | `null`
- **`readiness`**: [ExternalRunReadiness](#scalar-schema-externalrunreadiness) | `null`
- **`redrive_count`**: `integer`, default: `0`
- **`refund_under_review`**: `boolean`, default: `false`
- **`refunded_usd`**: `number | null`
- **`result_kind`**: `string | null`
- **`schedule_id`**: `string | null`, format: `uuid`
- **`schedule_kind`**: `string | null`
- **`service_coverage`**: `array of object`
- **`site_build`**: `string | null`
- **`spec_review_mode`**: `string`, default: `"auto"`
- **`stack_layer`**: `integer | null`
- **`stack_total`**: `integer | null`
- **`stopped`**: `boolean`, default: `false`
- **`subscription_share`**: [ExternalSubscriptionShareRead](#scalar-schema-externalsubscriptionshareread) | `null`
- **`terminal_summary`**: `object | null`
- **`thread_id`**: `string | null`, format: `uuid`
- **`title`**: `string | null`
- **`validated_head_sha`**: `string | null`
- **`work_usd`**: `number | null`

<a id="scalar-example-38"></a>

**Generated example:**

```json
{
  "api_value_usd": 1,
  "artifact_retention_profile": "",
  "attention": {
    "attention_at": "",
    "attention_class": 1,
    "note": "",
    "pause_kind": "",
    "resume_at": "",
    "state": "",
    "state_entered_at": "",
    "unread": false
  },
  "auto_run_kind": "",
  "autonomy_mode": "review",
  "base_branch": "",
  "cap_usd": 1,
  "chain": {
    "root_run_id": "",
    "sequence": 1,
    "slices": [
      {
        "feature_key": "",
        "run_id": "",
        "sequence": 1,
        "state": "",
        "title": ""
      }
    ],
    "total": 1
  },
  "charged_usd": 1,
  "coding_project_id": "",
  "coding_repository_id": "",
  "created_at": "",
  "current_activity_kind": "",
  "current_activity_since": "",
  "current_activity_target": "",
  "current_phase": "",
  "delivery_status": "",
  "economy": false,
  "effective_resolution_sha256": "",
  "egress_profile": "",
  "environment_id": "",
  "external_request_id": "",
  "failure_origin": "",
  "harness_kind": "",
  "id": "",
  "ingress": {
    "category": "",
    "excerpt": "",
    "inherited": false,
    "source": "",
    "url": ""
  },
  "land": {
    "can_merge_anyway": false,
    "commit_url": "",
    "deploy_status": "",
    "head_sha": "",
    "landed_sha": "",
    "live_url": "",
    "owner_step": "",
    "reason": "",
    "revert_of_run_id": "",
    "reverted_by_run_id": "",
    "security": {
      "access": {
        "intended": [
          {
            "quote": "",
            "sentence": ""
          }
        ],
        "members_see": [
          ""
        ],
        "unchecked": [
          ""
        ],
        "visitors_add": [
          ""
        ],
        "visitors_see": [
          ""
        ]
      },
      "fixed": [
        {
          "proved": true,
          "sentence": ""
        }
      ],
      "held": [
        {
          "file": "",
          "proved": true,
          "sentence": "",
          "severity": ""
        }
      ],
      "state": ""
    },
    "state": "",
    "strategy": "",
    "verified": true
  },
  "last_stage": "",
  "last_stage_at": "",
  "lesson": {
    "text": ""
  },
  "memory_given": {
    "answers": 1,
    "brief": true,
    "notes": 1
  },
  "origin": "",
  "parent_coding_run_id": "",
  "policy_contract_sha256": "",
  "policy_resolved_at": "",
  "pr_number": 1,
  "pr_status": "",
  "pr_url": "",
  "preview_urls": {
    "additionalProperty": "anything"
  },
  "prompt": "",
  "pull_requests": [
    {
      "base_branch": "",
      "branch": "",
      "draft": true,
      "feature_key": "",
      "pr_number": 1,
      "pr_status": "",
      "pr_url": "",
      "sequence": 1
    }
  ],
  "readiness": {
    "clarifying_questions": [
      ""
    ],
    "readiness": ""
  },
  "redrive_count": 0,
  "refund_under_review": false,
  "refunded_usd": 1,
  "result_kind": "",
  "schedule_id": "",
  "schedule_kind": "",
  "service_coverage": [
    {
      "additionalProperty": "anything"
    }
  ],
  "site_build": "",
  "spec_review_mode": "auto",
  "stack_layer": 1,
  "stack_total": 1,
  "stopped": false,
  "subscription_share": {
    "account_label": "",
    "final": true,
    "overage": true,
    "pct": 1,
    "provider": "",
    "window": ""
  },
  "terminal_summary": {
    "additionalProperty": "anything"
  },
  "thread_id": "",
  "title": "",
  "updated_at": "",
  "validated_head_sha": "",
  "validation_iteration": 1,
  "work_usd": 1
}
```

<a id="scalar-schema-externalrunattentionread"></a>

### ExternalRunAttentionRead

**Type:** `object`

- **`attention_class` (required)**: `integer`
- **`state` (required)**: `string`
- **`attention_at`**: `string | null`, format: `date-time`
- **`note`**: `string | null`
- **`pause_kind`**: `string | null`
- **`resume_at`**: `string | null`, format: `date-time`
- **`state_entered_at`**: `string | null`, format: `date-time`
- **`unread`**: `boolean`, default: `false`

<a id="scalar-example-39"></a>

**Generated example:**

```json
{
  "attention_at": "",
  "attention_class": 1,
  "note": "",
  "pause_kind": "",
  "resume_at": "",
  "state": "",
  "state_entered_at": "",
  "unread": false
}
```

<a id="scalar-schema-externalslicechainread"></a>

### ExternalSliceChainRead

**Type:** `object`

- **`root_run_id` (required)**: `string`
- **`sequence` (required)**: `integer`
- **`total` (required)**: `integer`
- **`slices`**: array of [ExternalSliceRead](#scalar-schema-externalsliceread)

<a id="scalar-example-40"></a>

**Generated example:**

```json
{
  "root_run_id": "",
  "sequence": 1,
  "slices": [
    {
      "feature_key": "",
      "run_id": "",
      "sequence": 1,
      "state": "",
      "title": ""
    }
  ],
  "total": 1
}
```

<a id="scalar-schema-externalsliceread"></a>

### ExternalSliceRead

**Type:** `object`

- **`feature_key` (required)**: `string`
- **`sequence` (required)**: `integer`
- **`state` (required)**: `string`
- **`title` (required)**: `string`
- **`run_id`**: `string | null`

<a id="scalar-example-41"></a>

**Generated example:**

```json
{
  "feature_key": "",
  "run_id": "",
  "sequence": 1,
  "state": "",
  "title": ""
}
```

<a id="scalar-schema-externalruningressread"></a>

### ExternalRunIngressRead

**Type:** `object`

- **`category` (required)**: `string`
- **`source` (required)**: `string`
- **`excerpt`**: `string | null`
- **`inherited`**: `boolean`, default: `false`
- **`url`**: `string | null`

<a id="scalar-example-42"></a>

**Generated example:**

```json
{
  "category": "",
  "excerpt": "",
  "inherited": false,
  "source": "",
  "url": ""
}
```

<a id="scalar-schema-externalcodinglandread"></a>

### ExternalCodingLandRead

**Type:** `object`

- **`state` (required)**: `string`
- **`strategy` (required)**: `string`
- **`can_merge_anyway`**: `boolean`, default: `false`
- **`commit_url`**: `string | null`
- **`deploy_status`**: `string | null`
- **`head_sha`**: `string | null`
- **`landed_sha`**: `string | null`
- **`live_url`**: `string | null`
- **`owner_step`**: `string | null`
- **`reason`**: `string | null`
- **`revert_of_run_id`**: `string | null`, format: `uuid`
- **`reverted_by_run_id`**: `string | null`, format: `uuid`
- **`security`**: [ExternalLandSecurityRead](#scalar-schema-externallandsecurityread) | `null`
- **`verified`**: `boolean | null`

<a id="scalar-example-43"></a>

**Generated example:**

```json
{
  "can_merge_anyway": false,
  "commit_url": "",
  "deploy_status": "",
  "head_sha": "",
  "landed_sha": "",
  "live_url": "",
  "owner_step": "",
  "reason": "",
  "revert_of_run_id": "",
  "reverted_by_run_id": "",
  "security": {
    "access": {
      "intended": [
        {
          "quote": "",
          "sentence": ""
        }
      ],
      "members_see": [
        ""
      ],
      "unchecked": [
        ""
      ],
      "visitors_add": [
        ""
      ],
      "visitors_see": [
        ""
      ]
    },
    "fixed": [
      {
        "proved": true,
        "sentence": ""
      }
    ],
    "held": [
      {
        "file": "",
        "proved": true,
        "sentence": "",
        "severity": ""
      }
    ],
    "state": ""
  },
  "state": "",
  "strategy": "",
  "verified": true
}
```

<a id="scalar-schema-externallandsecurityread"></a>

### ExternalLandSecurityRead

**Type:** `object`

- **`state` (required)**: `string`
- **`access`**: [ExternalLandAccessRead](#scalar-schema-externallandaccessread) | `null`
- **`fixed`**: array of [ExternalLandSecurityFixed](#scalar-schema-externallandsecurityfixed)
- **`held`**: array of [ExternalLandSecurityHeld](#scalar-schema-externallandsecurityheld)

<a id="scalar-example-44"></a>

**Generated example:**

```json
{
  "access": {
    "intended": [
      {
        "quote": "",
        "sentence": ""
      }
    ],
    "members_see": [
      ""
    ],
    "unchecked": [
      ""
    ],
    "visitors_add": [
      ""
    ],
    "visitors_see": [
      ""
    ]
  },
  "fixed": [
    {
      "proved": true,
      "sentence": ""
    }
  ],
  "held": [
    {
      "file": "",
      "proved": true,
      "sentence": "",
      "severity": ""
    }
  ],
  "state": ""
}
```

<a id="scalar-schema-externallandaccessread"></a>

### ExternalLandAccessRead

**Type:** `object`

- **`intended`**: array of [ExternalLandIntendedAccess](#scalar-schema-externallandintendedaccess)
- **`members_see`**: `array of string`
- **`unchecked`**: `array of string`
- **`visitors_add`**: `array of string`
- **`visitors_see`**: `array of string`

<a id="scalar-example-45"></a>

**Generated example:**

```json
{
  "intended": [
    {
      "quote": "",
      "sentence": ""
    }
  ],
  "members_see": [
    ""
  ],
  "unchecked": [
    ""
  ],
  "visitors_add": [
    ""
  ],
  "visitors_see": [
    ""
  ]
}
```

<a id="scalar-schema-externallandintendedaccess"></a>

### ExternalLandIntendedAccess

**Type:** `object`

- **`quote` (required)**: `string`
- **`sentence` (required)**: `string`

<a id="scalar-example-46"></a>

**Generated example:**

```json
{
  "quote": "",
  "sentence": ""
}
```

<a id="scalar-schema-externallandsecurityfixed"></a>

### ExternalLandSecurityFixed

**Type:** `object`

- **`proved` (required)**: `boolean`
- **`sentence` (required)**: `string`

<a id="scalar-example-47"></a>

**Generated example:**

```json
{
  "proved": true,
  "sentence": ""
}
```

<a id="scalar-schema-externallandsecurityheld"></a>

### ExternalLandSecurityHeld

**Type:** `object`

- **`proved` (required)**: `boolean`
- **`sentence` (required)**: `string`
- **`severity` (required)**: `string`
- **`file`**: `string | null`

<a id="scalar-example-48"></a>

**Generated example:**

```json
{
  "file": "",
  "proved": true,
  "sentence": "",
  "severity": ""
}
```

<a id="scalar-schema-runlessonread"></a>

### RunLessonRead

**Type:** `object`

- **`text` (required)**: `string`

<a id="scalar-example-49"></a>

**Generated example:**

```json
{
  "text": ""
}
```

<a id="scalar-schema-memorygivenread"></a>

### MemoryGivenRead

**Type:** `object`

- **`brief` (required)**: `boolean`
- **`notes` (required)**: `integer`
- **`answers`**: `integer | null`

<a id="scalar-example-50"></a>

**Generated example:**

```json
{
  "answers": 1,
  "brief": true,
  "notes": 1
}
```

<a id="scalar-schema-externalrunprread"></a>

### ExternalRunPrRead

**Type:** `object`

- **`base_branch` (required)**: `string`
- **`branch` (required)**: `string`
- **`draft` (required)**: `boolean`
- **`sequence` (required)**: `integer`
- **`feature_key`**: `string | null`
- **`pr_number`**: `integer | null`
- **`pr_status`**: `string | null`
- **`pr_url`**: `string | null`

<a id="scalar-example-51"></a>

**Generated example:**

```json
{
  "base_branch": "",
  "branch": "",
  "draft": true,
  "feature_key": "",
  "pr_number": 1,
  "pr_status": "",
  "pr_url": "",
  "sequence": 1
}
```

<a id="scalar-schema-externalrunreadiness"></a>

### ExternalRunReadiness

**Type:** `object`

- **`clarifying_questions` (required)**: `array of string`
- **`readiness` (required)**: `string`

<a id="scalar-example-52"></a>

**Generated example:**

```json
{
  "clarifying_questions": [
    ""
  ],
  "readiness": ""
}
```

<a id="scalar-schema-externalsubscriptionshareread"></a>

### ExternalSubscriptionShareRead

**Type:** `object`

- **`final` (required)**: `boolean`
- **`overage` (required)**: `boolean`
- **`pct` (required)**: `number`
- **`window` (required)**: `string`
- **`account_label`**: `string | null`
- **`provider`**: `string | null`

<a id="scalar-example-53"></a>

**Generated example:**

```json
{
  "account_label": "",
  "final": true,
  "overage": true,
  "pct": 1,
  "provider": "",
  "window": ""
}
```

<a id="scalar-schema-externalsessionapprovalread"></a>

### ExternalSessionApprovalRead

**Type:** `object`

- **`action_class` (required)**: `string`
- **`approved_at` (required)**: `string`, format: `date-time`
- **`domain` (required)**: `string`
- **`expires_at` (required)**: `string`, format: `date-time`

<a id="scalar-example-54"></a>

**Generated example:**

```json
{
  "action_class": "",
  "approved_at": "",
  "domain": "",
  "expires_at": ""
}
```

<a id="scalar-schema-externalspecreviewread"></a>

### ExternalSpecReviewRead

**Type:** `object`

- **`round` (required)**: `integer`
- **`acceptance_authoring_model`**: `string`
- **`annotations`**: array of [ExternalSpecAnnotationRead](#scalar-schema-externalspecannotationread)
- **`current_snapshot`**: [ExternalSpecSnapshotRead](#scalar-schema-externalspecsnapshotread) | `null`
- **`previous_snapshot`**: [ExternalSpecSnapshotRead](#scalar-schema-externalspecsnapshotread) | `null`
- **`revise_failed`**: `boolean`, default: `false`
- **`revising`**: `boolean`, default: `false`

<a id="scalar-example-55"></a>

**Generated example:**

```json
{
  "acceptance_authoring_model": "",
  "annotations": [
    {
      "addressed": false,
      "addressed_in_round": 1,
      "agent_response": {
        "additionalProperty": "anything"
      },
      "anchor": {
        "anchor_prefix": "",
        "anchor_suffix": "",
        "char_end": 1,
        "char_start": 1,
        "quote": "",
        "resolved_end": 1,
        "resolved_start": 1,
        "status": "exact"
      },
      "comment": "",
      "criterion_key": "",
      "id": "",
      "in_reply_to": "",
      "status": "draft",
      "suggested_text": "",
      "target": "brief",
      "type": "comment",
      "updated_at": ""
    }
  ],
  "current_snapshot": {
    "acceptance_criteria": [
      {
        "criterion_key": "",
        "key": "",
        "locked": true,
        "text": ""
      }
    ],
    "goal": "",
    "round": 1
  },
  "previous_snapshot": {
    "acceptance_criteria": [
      {
        "criterion_key": "",
        "key": "",
        "locked": true,
        "text": ""
      }
    ],
    "goal": "",
    "round": 1
  },
  "revise_failed": false,
  "revising": false,
  "round": 1
}
```

<a id="scalar-schema-externalspecannotationread"></a>

### ExternalSpecAnnotationRead

**Type:** `object`

- **`comment` (required)**: `string`
- **`target` (required)**: `string`, possible values: `"brief", "goal", "criterion"`
- **`addressed`**: `boolean`, default: `false`
- **`addressed_in_round`**: `integer | null`
- **`agent_response`**: `object | null`
- **`anchor`**: [ExternalSpecAnchorRead](#scalar-schema-externalspecanchorread) | `null`
- **`criterion_key`**: `string | null`, format: `uuid`
- **`id`**

  **One of:**
  - `string`, format: `uuid`
- **`in_reply_to`**: `string | null`, format: `uuid`
- **`status`**

  **One of:**
  - `string`, possible values: `"draft", "submitted", "addressed", "dismissed", "resolved"`
- **`suggested_text`**: `string | null`
- **`type`**

  **One of:**
  - `string`, possible values: `"comment", "suggest_edit", "flag_remove", "global"`
- **`updated_at`**: `string`

<a id="scalar-example-56"></a>

**Generated example:**

```json
{
  "addressed": false,
  "addressed_in_round": 1,
  "agent_response": {
    "additionalProperty": "anything"
  },
  "anchor": {
    "anchor_prefix": "",
    "anchor_suffix": "",
    "char_end": 1,
    "char_start": 1,
    "quote": "",
    "resolved_end": 1,
    "resolved_start": 1,
    "status": "exact"
  },
  "comment": "",
  "criterion_key": "",
  "id": "",
  "in_reply_to": "",
  "status": "draft",
  "suggested_text": "",
  "target": "brief",
  "type": "comment",
  "updated_at": ""
}
```

<a id="scalar-schema-externalspecsnapshotread"></a>

### ExternalSpecSnapshotRead

**Type:** `object`

- **`round` (required)**: `integer`
- **`acceptance_criteria`**: array of [ExternalSpecCriterionSnapshotRead](#scalar-schema-externalspeccriterionsnapshotread)
- **`goal`**: `string | null`

<a id="scalar-example-57"></a>

**Generated example:**

```json
{
  "acceptance_criteria": [
    {
      "criterion_key": "",
      "key": "",
      "locked": true,
      "text": ""
    }
  ],
  "goal": "",
  "round": 1
}
```

<a id="scalar-schema-externalspeccriterionsnapshotread"></a>

### ExternalSpecCriterionSnapshotRead

**Type:** `object`

- **`criterion_key` (required)**: `string`, format: `uuid`
- **`key` (required)**: `string`
- **`text` (required)**: `string`
- **`locked`**: `boolean`

<a id="scalar-example-58"></a>

**Generated example:**

```json
{
  "criterion_key": "",
  "key": "",
  "locked": true,
  "text": ""
}
```

<a id="scalar-schema-externalrunsteermessageread"></a>

### ExternalRunSteerMessageRead

**Type:** `object`

- **`body` (required)**: `string`
- **`created_at` (required)**: `string`, format: `date-time`
- **`id` (required)**: `string`, format: `uuid`
- **`applied_at`**: `string | null`, format: `date-time`
- **`orphaned_at`**: `string | null`, format: `date-time`

<a id="scalar-example-59"></a>

**Generated example:**

```json
{
  "applied_at": "",
  "body": "",
  "created_at": "",
  "id": "",
  "orphaned_at": ""
}
```

<a id="scalar-schema-externalruntoolusedread"></a>

### ExternalRunToolUsedRead

**Type:** `object`

- **`kind` (required)**: `string`
- **`name` (required)**: `string`
- **`state` (required)**: `string`
- **`tool_id` (required)**: `string`, format: `uuid`
- **`calls`**: `integer`, default: `0`
- **`errors`**: `integer`, default: `0`

<a id="scalar-example-60"></a>

**Generated example:**

```json
{
  "calls": 0,
  "errors": 0,
  "kind": "",
  "name": "",
  "state": "",
  "tool_id": ""
}
```

<a id="scalar-schema-externalcodingvalidationrunread"></a>

### ExternalCodingValidationRunRead

**Type:** `object`

- **`artifacts` (required)**: array of [CodingArtifactRefRead](#scalar-schema-codingartifactrefread)
- **`blocking` (required)**: `boolean`
- **`category` (required)**: `string`
- **`created_at` (required)**: `string`, format: `date-time`
- **`errors` (required)**: `array of object`
- **`findings` (required)**: `array of object`
- **`id` (required)**: `string`, format: `uuid`
- **`iteration` (required)**: `integer`
- **`status` (required)**: `string`, possible values: `"pending", "running", "passed", "failed", "skipped", "blocked", "cancelled"`

  Lifecycle state for a validator or review execution.
- **`updated_at` (required)**: `string`, format: `date-time`
- **`validator_name` (required)**: `string`
- **`duration_ms`**: `integer | null`
- **`failed_count`**: `integer | null`
- **`is_baseline_delta`**: `boolean`, default: `false`
- **`passed_count`**: `integer | null`
- **`skipped_count`**: `integer | null`
- **`tree_sha`**: `string | null`

<a id="scalar-example-61"></a>

**Generated example:**

```json
{
  "artifacts": [
    {
      "artifact_id": "",
      "display_name": "",
      "expires_at": "",
      "kind": "",
      "mime_type": "",
      "open_state": "",
      "retention_tag": "",
      "section": "",
      "sha256": "",
      "size_bytes": 1,
      "source_id": "",
      "source_type": ""
    }
  ],
  "blocking": true,
  "category": "",
  "created_at": "",
  "duration_ms": 1,
  "errors": [
    {
      "additionalProperty": "anything"
    }
  ],
  "failed_count": 1,
  "findings": [
    {
      "additionalProperty": "anything"
    }
  ],
  "id": "",
  "is_baseline_delta": false,
  "iteration": 1,
  "passed_count": 1,
  "skipped_count": 1,
  "status": "pending",
  "tree_sha": "",
  "updated_at": "",
  "validator_name": ""
}
```

<a id="scalar-schema-codingvalidationstatus"></a>

### CodingValidationStatus

**Type:** `string`, possible values: `"pending", "running", "passed", "failed", "skipped", "blocked", "cancelled"`

Lifecycle state for a validator or review execution.

<a id="scalar-schema-problemdetail"></a>

### ProblemDetail

**Type:** `object`

RFC 7807 problem detail returned for public CaaS errors.

- **`code` (required)**: `string`, possible values: `"BUDGET_EXHAUSTED", "QUOTA_EXCEEDED", "RUN_CONCURRENCY_LIMIT", "CUSTOMER_DISABLED", "REPO_NOT_BOUND", "IDEMPOTENCY_REPLAY", "CONFLICT", "MISSION_BUSY_RETRY", "HITL_REQUEST_CONFLICT", "HITL_REQUEST_SETTLED", "RUN_TERMINATED_BEFORE_RESPONSE", "INVALID_POLICY", "INVALID_SCOPE", "RATE_LIMITED", "INSTALLATION_INCOMPLETE", "SUBSCRIPTION_USAGE_UNAVAILABLE", "INVALID_TOKEN", "ROLE_REQUIRED", "PLAN_UPGRADE_REQUIRED", "EMAIL_MISMATCH", "EXPIRED_TOKEN", "NOT_FOUND", "OVERSCOPE_ACK_REQUIRED", "VERIFY_FAILED", "PUBLISH_IN_FLIGHT", "PUBLISH_UNSUPPORTED_REPO", "PUBLICATION_NOT_LIVE", "NO_APP_DATA", "FEATURE_REQUESTS_NEEDS_MEMBERS", "EMPTY_UPDATE", "BAD_CURSOR", "HUMAN_APPROVAL_REQUIRED", "PROTECTED_PATHS_MANAGED_ONLY", "RUN_IN_FLIGHT", "TEXT_EDIT_REFUSED", "CLI_UPGRADE_REQUIRED", "PRODUCTION_STEP_UP_REQUIRED", "PRICES_UPDATING", "GITHUB_UNAVAILABLE", "PUBLISH_NOT_SET_UP", "VERSION_NOT_DEPLOYED", "INTERNAL_ERROR"`

  Stable error codes surfaced to public CaaS clients.
- **`status` (required)**: `integer`
- **`title` (required)**: `string`
- **`detail`**: `string | null`, default: `null`
- **`existing_run_id`**: `string | null`, default: `null`
- **`instance`**: `string | null`, default: `null`
- **`type`**: `string`, default: `"about:blank"`

<a id="scalar-example-62"></a>

**Generated example:**

```json
{
  "code": "BUDGET_EXHAUSTED",
  "detail": null,
  "existing_run_id": null,
  "instance": null,
  "status": 1,
  "title": "",
  "type": "about:blank",
  "additionalProperty": "anything"
}
```

<a id="scalar-schema-externalerrorcode"></a>

### ExternalErrorCode

**Type:** `string`, possible values: `"BUDGET_EXHAUSTED", "QUOTA_EXCEEDED", "RUN_CONCURRENCY_LIMIT", "CUSTOMER_DISABLED", "REPO_NOT_BOUND", "IDEMPOTENCY_REPLAY", "CONFLICT", "MISSION_BUSY_RETRY", "HITL_REQUEST_CONFLICT", "HITL_REQUEST_SETTLED", "RUN_TERMINATED_BEFORE_RESPONSE", "INVALID_POLICY", "INVALID_SCOPE", "RATE_LIMITED", "INSTALLATION_INCOMPLETE", "SUBSCRIPTION_USAGE_UNAVAILABLE", "INVALID_TOKEN", "ROLE_REQUIRED", "PLAN_UPGRADE_REQUIRED", "EMAIL_MISMATCH", "EXPIRED_TOKEN", "NOT_FOUND", "OVERSCOPE_ACK_REQUIRED", "VERIFY_FAILED", "PUBLISH_IN_FLIGHT", "PUBLISH_UNSUPPORTED_REPO", "PUBLICATION_NOT_LIVE", "NO_APP_DATA", "FEATURE_REQUESTS_NEEDS_MEMBERS", "EMPTY_UPDATE", "BAD_CURSOR", "HUMAN_APPROVAL_REQUIRED", "PROTECTED_PATHS_MANAGED_ONLY", "RUN_IN_FLIGHT", "TEXT_EDIT_REFUSED", "CLI_UPGRADE_REQUIRED", "PRODUCTION_STEP_UP_REQUIRED", "PRICES_UPDATING", "GITHUB_UNAVAILABLE", "PUBLISH_NOT_SET_UP", "VERSION_NOT_DEPLOYED", "INTERNAL_ERROR"`

Stable error codes surfaced to public CaaS clients.
