{
  "openapi": "3.1.0",
  "info": {
    "title": "Programmable Custom Launch",
    "version": "4.6.2"
  },
  "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61",
  "servers": [
    {
      "url": "https://api.programmable.market"
    }
  ],
  "paths": {
    "/v4/chains/{chainId}/custom-launch-capabilities": {
      "get": {
        "operationId": "getCustomLaunchCapabilitiesV1",
        "summary": "Read live operation availability",
        "tags": [
          "Custom Launch Plan V1"
        ],
        "security": [],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "4663"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Current resource or exact replay",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchCapabilitiesV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "401": {
            "description": "Credential unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "422": {
            "description": "All independently established findings",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "Retryable pending operation; no unsafe judgment",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/{chainId}/custom-launch-credentials/me": {
      "get": {
        "operationId": "getCustomLaunchCredentialV1",
        "summary": "Read current key scopes, chain and bound controller without secrets",
        "tags": [
          "Custom Launch Plan V1"
        ],
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "4663"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Current resource or exact replay",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchCredentialV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "401": {
            "description": "Credential unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "422": {
            "description": "All independently established findings",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "Retryable pending operation; no unsafe judgment",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/{chainId}/custom-launch-plans:preflight": {
      "post": {
        "operationId": "preflightCustomLaunchPlanV1",
        "summary": "Collect all independent request and mechanical findings",
        "tags": [
          "Custom Launch Plan V1"
        ],
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "4663"
              ]
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Current resource or exact replay",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPreflightV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "401": {
            "description": "Credential unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "422": {
            "description": "All independently established findings",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "Retryable pending operation; no unsafe judgment",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/{chainId}/custom-launch-plans": {
      "get": {
        "operationId": "listCustomLaunchPlansV1",
        "summary": "List owned plans",
        "tags": [
          "Custom Launch Plan V1"
        ],
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "4663"
              ]
            }
          },
          {
            "in": "query",
            "name": "limit",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 25,
              "default": 25
            }
          },
          {
            "in": "query",
            "name": "cursor",
            "schema": {
              "type": "string",
              "maxLength": 2048
            },
            "description": "Opaque cursor returned by the previous page; preserve exact bytes."
          },
          {
            "in": "header",
            "name": "Programmable-Launch-Response-Version",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "1.0",
                "1.1",
                "1.2"
              ],
              "default": "1.0"
            },
            "description": "1.2 supports versioned Atomic wallet authorization, walletUrl and optional historical-plan continuation advice; Atomic resources require 1.2. Versions 1.0 and 1.1 preserve closed V1 authorization. Does not change stored or signed bytes."
          }
        ],
        "responses": {
          "200": {
            "description": "Current resource or exact replay",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanListV1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanListV1_1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanListV1_2"
                    }
                  ]
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "401": {
            "description": "Credential unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "422": {
            "description": "All independently established findings",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "Retryable pending operation; no unsafe judgment",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      },
      "post": {
        "operationId": "createCustomLaunchPlanV1",
        "summary": "Create or replay one immutable plan",
        "tags": [
          "Custom Launch Plan V1"
        ],
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "4663"
              ]
            }
          },
          {
            "in": "header",
            "name": "Programmable-Launch-Response-Version",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "1.0",
                "1.1",
                "1.2"
              ],
              "default": "1.0"
            },
            "description": "1.2 supports versioned Atomic wallet authorization, walletUrl and optional historical-plan continuation advice; Atomic resources require 1.2. Versions 1.0 and 1.1 preserve closed V1 authorization. Does not change stored or signed bytes."
          },
          {
            "in": "header",
            "name": "Idempotency-Key",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[A-Za-z0-9._:-]{16,128}$"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Current resource or exact replay",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_2"
                    }
                  ]
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "202": {
            "description": "Accepted; observe stored resumeUrl",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_2"
                    }
                  ]
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "401": {
            "description": "Credential unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "409": {
            "description": "Original idempotency bytes or predecessor differ",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "422": {
            "description": "All independently established findings",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "Retryable pending operation; no unsafe judgment",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/{chainId}/custom-launch-plans/{planId}": {
      "get": {
        "operationId": "readCustomLaunchPlanV1",
        "summary": "Read owned {planId} and ordered wallet steps",
        "tags": [
          "Custom Launch Plan V1"
        ],
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "4663"
              ]
            }
          },
          {
            "in": "path",
            "name": "planId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "Programmable-Launch-Response-Version",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "1.0",
                "1.1",
                "1.2"
              ],
              "default": "1.0"
            },
            "description": "1.2 supports versioned Atomic wallet authorization, walletUrl and optional historical-plan continuation advice; Atomic resources require 1.2. Versions 1.0 and 1.1 preserve closed V1 authorization. Does not change stored or signed bytes."
          }
        ],
        "responses": {
          "200": {
            "description": "Current resource or exact replay",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_2"
                    }
                  ]
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "401": {
            "description": "Credential unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "422": {
            "description": "All independently established findings",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "Retryable pending operation; no unsafe judgment",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/{chainId}/custom-launch-plans/{planId}/steps/{stepId}/proofs": {
      "post": {
        "operationId": "submitCustomLaunchPlanProofV1",
        "summary": "Submit a transaction discovery hint for {planId} {stepId}",
        "tags": [
          "Custom Launch Plan V1"
        ],
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "4663"
              ]
            }
          },
          {
            "in": "path",
            "name": "planId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "stepId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "Programmable-Launch-Response-Version",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "1.0",
                "1.1",
                "1.2"
              ],
              "default": "1.0"
            },
            "description": "1.2 supports versioned Atomic wallet authorization, walletUrl and optional historical-plan continuation advice; Atomic resources require 1.2. Versions 1.0 and 1.1 preserve closed V1 authorization. Does not change stored or signed bytes."
          },
          {
            "in": "header",
            "name": "Idempotency-Key",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[A-Za-z0-9._:-]{16,128}$"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "schemaVersion",
                  "transactionHash"
                ],
                "properties": {
                  "schemaVersion": {
                    "const": "programmable.custom-launch-plan-step-proof.v1"
                  },
                  "transactionHash": {
                    "type": "string",
                    "pattern": "^0x[0-9a-f]{64}$"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Current resource or exact replay",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_2"
                    }
                  ]
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "202": {
            "description": "Accepted; observe stored resumeUrl",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_2"
                    }
                  ]
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "401": {
            "description": "Credential unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "409": {
            "description": "Original idempotency bytes or predecessor differ",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "422": {
            "description": "All independently established findings",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "Retryable pending operation; no unsafe judgment",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/{chainId}/custom-launch-plans/{planId}:replan": {
      "post": {
        "operationId": "replanCustomLaunchPlanV1",
        "summary": "Create an immutable successor of {planId} preserving the final prefix",
        "tags": [
          "Custom Launch Plan V1"
        ],
        "security": [
          {
            "bearerAuth": []
          }
        ],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "4663"
              ]
            }
          },
          {
            "in": "path",
            "name": "planId",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "header",
            "name": "Programmable-Launch-Response-Version",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "1.0",
                "1.1",
                "1.2"
              ],
              "default": "1.0"
            },
            "description": "1.2 supports versioned Atomic wallet authorization, walletUrl and optional historical-plan continuation advice; Atomic resources require 1.2. Versions 1.0 and 1.1 preserve closed V1 authorization. Does not change stored or signed bytes."
          },
          {
            "in": "header",
            "name": "Idempotency-Key",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[A-Za-z0-9._:-]{16,128}$"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Current resource or exact replay",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_2"
                    }
                  ]
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "202": {
            "description": "Accepted; observe stored resumeUrl",
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_1"
                    },
                    {
                      "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_2"
                    }
                  ]
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "401": {
            "description": "Credential unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "409": {
            "description": "Original idempotency bytes or predecessor differ",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "422": {
            "description": "All independently established findings",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "Retryable pending operation; no unsafe judgment",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomLaunchPlanErrorsV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/manifest.json": {
      "get": {
        "operationId": "getCustomLaunchArtifact_manifest_json",
        "summary": "Read digest-bound manifest.json",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/schema.json": {
      "get": {
        "operationId": "getCustomLaunchArtifact_schema_json",
        "summary": "Read digest-bound schema.json",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/schema+json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/openapi.json": {
      "get": {
        "operationId": "getCustomLaunchArtifact_openapi_json",
        "summary": "Read digest-bound openapi.json",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/errors.json": {
      "get": {
        "operationId": "getCustomLaunchArtifact_errors_json",
        "summary": "Read digest-bound errors.json",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/capabilities.json": {
      "get": {
        "operationId": "getCustomLaunchArtifact_capabilities_json",
        "summary": "Read digest-bound capabilities.json",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/discovery.json": {
      "get": {
        "operationId": "getCustomLaunchArtifact_discovery_json",
        "summary": "Read digest-bound discovery.json",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/guide.md": {
      "get": {
        "operationId": "getCustomLaunchArtifact_guide_md",
        "summary": "Read digest-bound guide.md",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/agent-setup.md": {
      "get": {
        "operationId": "getCustomLaunchArtifact_agent_setup_md",
        "summary": "Read digest-bound agent-setup.md",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/markdown": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/agent-setup.json": {
      "get": {
        "operationId": "getCustomLaunchArtifact_agent_setup_json",
        "summary": "Read digest-bound agent-setup.json",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/reference.json": {
      "get": {
        "operationId": "getCustomLaunchArtifact_reference_json",
        "summary": "Read digest-bound reference.json",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/request-packer.mjs": {
      "get": {
        "operationId": "getCustomLaunchArtifact_request_packer_mjs",
        "summary": "Read digest-bound request-packer.mjs",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "text/javascript": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/4663/custom-launch-contract/artifact-index.json": {
      "get": {
        "operationId": "getCustomLaunchArtifact_artifact_index_json",
        "summary": "Read digest-bound artifact-index.json",
        "security": [],
        "responses": {
          "200": {
            "description": "Pinned immutable artifact; static availability is independent from launch operation state",
            "headers": {
              "x-programmable-manifest-digest": {
                "schema": {
                  "const": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
                }
              },
              "etag": {
                "schema": {
                  "type": "string"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "304": {
            "description": "Exact ETag unchanged"
          }
        },
        "x-programmable-manifest-digest": "sha256:3cd25308629f932d6a75e4a7694e6bcb67e4471fd2c1782d3b11ba5a7e3f8b61"
      }
    },
    "/v4/chains/{chainId}/finalized-launch-projections": {
      "get": {
        "operationId": "listFinalizedLaunchProjectionsV1",
        "summary": "Read a stable page across launch source versions",
        "security": [],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "enum": [
                "4663"
              ]
            }
          },
          {
            "in": "query",
            "name": "limit",
            "schema": {
              "type": "integer",
              "minimum": 1,
              "maximum": 25,
              "default": 25
            }
          },
          {
            "in": "query",
            "name": "cursor",
            "schema": {
              "type": "string",
              "maxLength": 2048
            },
            "description": "Opaque cursor returned by the previous page; preserve exact bytes."
          }
        ],
        "responses": {
          "200": {
            "description": "Finalized public projection; source and distribution axes remain independent",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LaunchProjectionPageV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "400": {
            "description": "LAUNCH_PROJECTION_QUERY_INVALID",
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "404": {
            "description": "LAUNCH_PROJECTION_NOT_FOUND",
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "LAUNCH_PROJECTION_FEED_UNAVAILABLE; retry after 15 seconds",
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        }
      }
    },
    "/v4/chains/{chainId}/finalized-launch-projections/{launchIdOrAddress}": {
      "get": {
        "operationId": "readFinalizedLaunchProjectionV1",
        "summary": "Read one finalized projection by API UUID, lowercase bytes32 launch ID or canonical EVM address",
        "security": [],
        "parameters": [
          {
            "in": "path",
            "name": "chainId",
            "required": true,
            "schema": {
              "enum": [
                "4663"
              ]
            }
          },
          {
            "in": "path",
            "name": "launchIdOrAddress",
            "required": true,
            "schema": {
              "type": "string",
              "maxLength": 66
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Finalized public projection; source and distribution axes remain independent",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LaunchProjectionV1"
                }
              }
            },
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "400": {
            "description": "LAUNCH_PROJECTION_QUERY_INVALID",
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "404": {
            "description": "LAUNCH_PROJECTION_NOT_FOUND",
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          },
          "503": {
            "description": "LAUNCH_PROJECTION_FEED_UNAVAILABLE; retry after 15 seconds",
            "headers": {
              "Programmable-Launch-Response-Version": {
                "schema": {
                  "type": "string",
                  "enum": [
                    "1.0",
                    "1.1",
                    "1.2"
                  ]
                },
                "description": "Negotiated metadata response contract; an absent request header selects 1.0."
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer"
      }
    },
    "schemas": {
      "CustomLaunchPlanV1": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "title": "Programmable Custom Launch Plan V1",
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan.v1"
          },
          "manifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "admissionPolicy": {
            "const": "programmable.custom-launch-policy.provenance.v1"
          },
          "chainId": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]*)$",
            "maxLength": 20,
            "x-uintBits": 64
          },
          "controller": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/controller"
          },
          "executor": {
            "enum": [
              "atomic_graph_v2",
              "controller_multi_step_v1",
              "observe_and_stamp_v1",
              "atomic_execute_and_stamp_v2"
            ]
          },
          "verificationBundle": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/verificationBundle"
          },
          "components": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/component"
            },
            "minItems": 1,
            "maxItems": 16
          },
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/action"
            },
            "minItems": 1,
            "maxItems": 64
          },
          "markets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/market"
            },
            "minItems": 0,
            "maxItems": 16
          },
          "hookBindings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/hookBinding"
            },
            "minItems": 0,
            "maxItems": 16
          },
          "dependencies": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/dependency"
            },
            "minItems": 0,
            "maxItems": 64
          },
          "expectedEffects": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/effect"
            },
            "minItems": 0,
            "maxItems": 256
          },
          "budgets": {
            "type": "object",
            "properties": {
              "maxTotalValue": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              },
              "maxTotalGas": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              },
              "validAfter": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              },
              "deadline": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              }
            },
            "required": [
              "maxTotalValue",
              "maxTotalGas",
              "validAfter",
              "deadline"
            ],
            "additionalProperties": false
          },
          "feeObligations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/feeObligation"
            },
            "minItems": 0,
            "maxItems": 64
          },
          "claimDescriptors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/claimDescriptor"
            },
            "minItems": 0,
            "maxItems": 64
          },
          "distributionPreferences": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "provider": {
                  "enum": [
                    "hooklist",
                    "uniswap_api",
                    "uniswap_labs"
                  ]
                },
                "optedIn": {
                  "type": "boolean"
                }
              },
              "required": [
                "provider",
                "optedIn"
              ],
              "additionalProperties": false
            },
            "minItems": 0,
            "maxItems": 3
          },
          "publication": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/publication"
          }
        },
        "required": [
          "schemaVersion",
          "manifestDigest",
          "chainId",
          "controller",
          "executor",
          "verificationBundle",
          "components",
          "actions",
          "markets",
          "hookBindings",
          "dependencies",
          "expectedEffects",
          "budgets",
          "feeObligations",
          "claimDescriptors",
          "distributionPreferences"
        ],
        "additionalProperties": false,
        "$defs": {
          "addressRef": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "x-canonical": "address"
                  }
                },
                "required": [
                  "address"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "componentId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  }
                },
                "required": [
                  "componentId"
                ],
                "additionalProperties": false
              }
            ]
          },
          "controller": {
            "type": "object",
            "properties": {
              "address": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "kind": {
                "enum": [
                  "eoa",
                  "delegated_eoa_v1",
                  "erc1271",
                  "smart_account"
                ]
              },
              "runtimeCodeHash": {
                "type": "string",
                "pattern": "^0x[0-9a-f]{64}$"
              },
              "authoritySnapshot": {
                "type": "object",
                "additionalProperties": true
              }
            },
            "required": [
              "address",
              "kind"
            ],
            "additionalProperties": false
          },
          "component": {
            "type": "object",
            "properties": {
              "componentId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "artifactId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "expectedAddress": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "runtimeCodeHash": {
                "type": "string",
                "pattern": "^0x[0-9a-f]{64}$"
              },
              "tags": {
                "type": "array",
                "items": {
                  "type": "string",
                  "maxLength": 256
                },
                "minItems": 0,
                "maxItems": 64
              }
            },
            "required": [
              "componentId",
              "artifactId",
              "expectedAddress",
              "runtimeCodeHash"
            ],
            "additionalProperties": false
          },
          "call": {
            "type": "object",
            "properties": {
              "target": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
              },
              "data": {
                "type": "string",
                "pattern": "^0x(?:[0-9a-f]{2})*$",
                "maxLength": 262146
              },
              "value": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              },
              "gasLimit": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              }
            },
            "required": [
              "target",
              "data",
              "value",
              "gasLimit"
            ],
            "additionalProperties": false
          },
          "eoaCreation": {
            "type": "object",
            "properties": {
              "target": {
                "type": "null"
              },
              "data": {
                "type": "string",
                "pattern": "^0x(?:[0-9a-f]{2})*$",
                "maxLength": 98306,
                "minLength": 4
              },
              "value": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              },
              "gasLimit": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              }
            },
            "required": [
              "target",
              "data",
              "value",
              "gasLimit"
            ],
            "additionalProperties": false
          },
          "authority": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "kind": {
                    "const": "controller"
                  }
                },
                "required": [
                  "kind"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "kind": {
                    "const": "platform"
                  },
                  "binding": {
                    "const": "launch_stamp"
                  },
                  "operation": {
                    "const": "stampPlanV1"
                  }
                },
                "required": [
                  "kind",
                  "binding",
                  "operation"
                ],
                "additionalProperties": false
              }
            ]
          },
          "action": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "actionId": {
                    "type": "string",
                    "pattern": "^(?!platform:)[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "dependsOn": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 64
                  },
                  "authority": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/authority"
                  },
                  "preconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "postconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "kind": {
                    "const": "deployCreate2"
                  },
                  "componentId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "factory": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
                  },
                  "salt": {
                    "type": "string",
                    "pattern": "^0x[0-9a-f]{64}$"
                  },
                  "initCode": {
                    "type": "string",
                    "pattern": "^0x(?:[0-9a-f]{2})*$",
                    "maxLength": 98306,
                    "minLength": 4
                  },
                  "execution": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/call"
                  }
                },
                "required": [
                  "actionId",
                  "dependsOn",
                  "authority",
                  "preconditions",
                  "postconditions",
                  "kind",
                  "componentId",
                  "factory",
                  "salt",
                  "initCode",
                  "execution"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "actionId": {
                    "type": "string",
                    "pattern": "^(?!platform:)[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "dependsOn": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 64
                  },
                  "authority": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/authority"
                  },
                  "preconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "postconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "kind": {
                    "const": "deployCreate"
                  },
                  "componentId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "parent": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
                  },
                  "nonce": {
                    "type": "string",
                    "pattern": "^(?:0|[1-9][0-9]*)$",
                    "maxLength": 20,
                    "x-uintBits": 64
                  },
                  "execution": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/call"
                  }
                },
                "required": [
                  "actionId",
                  "dependsOn",
                  "authority",
                  "preconditions",
                  "postconditions",
                  "kind",
                  "componentId",
                  "parent",
                  "nonce",
                  "execution"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "actionId": {
                    "type": "string",
                    "pattern": "^(?!platform:)[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "dependsOn": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 64
                  },
                  "authority": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/authority"
                  },
                  "preconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "postconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "kind": {
                    "const": "deployEoaCreate"
                  },
                  "componentId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "nonce": {
                    "type": "string",
                    "pattern": "^(?:0|[1-9][0-9]*)$",
                    "maxLength": 20,
                    "x-uintBits": 64
                  },
                  "execution": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/eoaCreation"
                  }
                },
                "required": [
                  "actionId",
                  "dependsOn",
                  "authority",
                  "preconditions",
                  "postconditions",
                  "kind",
                  "componentId",
                  "nonce",
                  "execution"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "actionId": {
                    "type": "string",
                    "pattern": "^(?!platform:)[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "dependsOn": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 64
                  },
                  "authority": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/authority"
                  },
                  "preconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "postconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "kind": {
                    "const": "useExisting"
                  },
                  "componentId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  }
                },
                "required": [
                  "actionId",
                  "dependsOn",
                  "authority",
                  "preconditions",
                  "postconditions",
                  "kind",
                  "componentId"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "actionId": {
                    "type": "string",
                    "pattern": "^(?!platform:)[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "dependsOn": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 64
                  },
                  "authority": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/authority"
                  },
                  "preconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "postconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "kind": {
                    "const": "call"
                  },
                  "execution": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/call"
                  }
                },
                "required": [
                  "actionId",
                  "dependsOn",
                  "authority",
                  "preconditions",
                  "postconditions",
                  "kind",
                  "execution"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "actionId": {
                    "type": "string",
                    "pattern": "^(?!platform:)[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "dependsOn": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 64
                  },
                  "authority": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/authority"
                  },
                  "preconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "postconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "kind": {
                    "const": "initializePool"
                  },
                  "marketId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "sqrtPriceX96": {
                    "type": "string",
                    "pattern": "^(?:0|[1-9][0-9]*)$",
                    "maxLength": 78,
                    "x-uintBits": 160
                  },
                  "execution": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/call"
                  }
                },
                "required": [
                  "actionId",
                  "dependsOn",
                  "authority",
                  "preconditions",
                  "postconditions",
                  "kind",
                  "marketId",
                  "sqrtPriceX96",
                  "execution"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "actionId": {
                    "type": "string",
                    "pattern": "^(?!platform:)[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "dependsOn": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 64
                  },
                  "authority": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/authority"
                  },
                  "preconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "postconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "kind": {
                    "const": "provideLiquidity"
                  },
                  "marketId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "execution": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/call"
                  }
                },
                "required": [
                  "actionId",
                  "dependsOn",
                  "authority",
                  "preconditions",
                  "postconditions",
                  "kind",
                  "marketId",
                  "execution"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "actionId": {
                    "type": "string",
                    "pattern": "^(?!platform:)[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "dependsOn": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 64
                  },
                  "authority": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/authority"
                  },
                  "preconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "postconditions": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                    },
                    "minItems": 0,
                    "maxItems": 256
                  },
                  "kind": {
                    "const": "verifyEffect"
                  },
                  "effectId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  }
                },
                "required": [
                  "actionId",
                  "dependsOn",
                  "authority",
                  "preconditions",
                  "postconditions",
                  "kind",
                  "effectId"
                ],
                "additionalProperties": false
              }
            ]
          },
          "market": {
            "type": "object",
            "properties": {
              "marketId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "kind": {
                "const": "uniswap_v4"
              },
              "poolManager": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "currency0": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
              },
              "currency1": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
              },
              "fee": {
                "type": "integer",
                "minimum": 0,
                "maximum": 8388608
              },
              "tickSpacing": {
                "type": "integer",
                "minimum": 1,
                "maximum": 32767
              },
              "hooks": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
              }
            },
            "required": [
              "marketId",
              "kind",
              "poolManager",
              "currency0",
              "currency1",
              "fee",
              "tickSpacing",
              "hooks"
            ],
            "additionalProperties": false
          },
          "hookBinding": {
            "type": "object",
            "properties": {
              "componentId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "poolManager": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "permissions": {
                "type": "integer",
                "minimum": 0,
                "maximum": 16383
              },
              "callbackAbi": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": true
                },
                "minItems": 0,
                "maxItems": 256
              },
              "hookDataSchema": {
                "type": "object",
                "additionalProperties": true
              }
            },
            "required": [
              "componentId",
              "poolManager",
              "permissions",
              "callbackAbi"
            ],
            "additionalProperties": false
          },
          "dependency": {
            "type": "object",
            "properties": {
              "dependencyId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "chainId": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              },
              "address": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "runtimeCodeHash": {
                "type": "string",
                "pattern": "^0x[0-9a-f]{64}$"
              },
              "authoritySnapshot": {
                "type": "object",
                "additionalProperties": true
              }
            },
            "required": [
              "dependencyId",
              "chainId",
              "address",
              "runtimeCodeHash"
            ],
            "additionalProperties": false
          },
          "effect": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "effectId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "criticality": {
                    "enum": [
                      "critical",
                      "optional",
                      "observed"
                    ]
                  },
                  "kind": {
                    "const": "runtime"
                  },
                  "target": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
                  },
                  "runtimeCodeHash": {
                    "type": "string",
                    "pattern": "^0x[0-9a-f]{64}$"
                  }
                },
                "required": [
                  "effectId",
                  "criticality",
                  "kind",
                  "target",
                  "runtimeCodeHash"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "criticality": {
                    "enum": [
                      "critical",
                      "optional",
                      "observed"
                    ]
                  },
                  "kind": {
                    "const": "callResult"
                  },
                  "target": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
                  },
                  "data": {
                    "type": "string",
                    "pattern": "^0x(?:[0-9a-f]{2})*$",
                    "maxLength": 262146
                  },
                  "expected": {
                    "type": "string",
                    "pattern": "^0x(?:[0-9a-f]{2})*$",
                    "maxLength": 262146
                  }
                },
                "required": [
                  "effectId",
                  "criticality",
                  "kind",
                  "target",
                  "data",
                  "expected"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "criticality": {
                    "enum": [
                      "critical",
                      "optional",
                      "observed"
                    ]
                  },
                  "kind": {
                    "const": "storage"
                  },
                  "target": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
                  },
                  "slot": {
                    "type": "string",
                    "pattern": "^0x[0-9a-f]{64}$"
                  },
                  "expected": {
                    "type": "string",
                    "pattern": "^0x[0-9a-f]{64}$"
                  }
                },
                "required": [
                  "effectId",
                  "criticality",
                  "kind",
                  "target",
                  "slot",
                  "expected"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "criticality": {
                    "enum": [
                      "critical",
                      "optional",
                      "observed"
                    ]
                  },
                  "kind": {
                    "const": "balance"
                  },
                  "target": {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
                  },
                  "asset": {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "x-canonical": "address"
                  },
                  "minimum": {
                    "type": "string",
                    "pattern": "^(?:0|[1-9][0-9]*)$",
                    "maxLength": 78,
                    "x-uintBits": 256
                  },
                  "maximum": {
                    "type": "string",
                    "pattern": "^(?:0|[1-9][0-9]*)$",
                    "maxLength": 78,
                    "x-uintBits": 256
                  }
                },
                "required": [
                  "effectId",
                  "criticality",
                  "kind",
                  "target",
                  "asset",
                  "minimum",
                  "maximum"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "effectId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "criticality": {
                    "enum": [
                      "critical",
                      "optional",
                      "observed"
                    ]
                  },
                  "kind": {
                    "const": "child"
                  },
                  "componentId": {
                    "type": "string",
                    "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                  },
                  "runtimeCodeHash": {
                    "type": "string",
                    "pattern": "^0x[0-9a-f]{64}$"
                  },
                  "derivation": {
                    "oneOf": [
                      {
                        "type": "object",
                        "properties": {
                          "kind": {
                            "const": "create"
                          },
                          "parent": {
                            "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
                          },
                          "nonce": {
                            "type": "string",
                            "pattern": "^(?:0|[1-9][0-9]*)$",
                            "maxLength": 20,
                            "x-uintBits": 64
                          }
                        },
                        "required": [
                          "kind",
                          "parent",
                          "nonce"
                        ],
                        "additionalProperties": false
                      },
                      {
                        "type": "object",
                        "properties": {
                          "kind": {
                            "const": "create2"
                          },
                          "parent": {
                            "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/addressRef"
                          },
                          "salt": {
                            "type": "string",
                            "pattern": "^0x[0-9a-f]{64}$"
                          },
                          "initCodeHash": {
                            "type": "string",
                            "pattern": "^0x[0-9a-f]{64}$"
                          }
                        },
                        "required": [
                          "kind",
                          "parent",
                          "salt",
                          "initCodeHash"
                        ],
                        "additionalProperties": false
                      }
                    ]
                  }
                },
                "required": [
                  "effectId",
                  "criticality",
                  "kind",
                  "componentId",
                  "runtimeCodeHash",
                  "derivation"
                ],
                "additionalProperties": false
              }
            ]
          },
          "witness": {
            "type": "object",
            "properties": {
              "kind": {
                "enum": [
                  "request",
                  "source",
                  "compiler",
                  "runtime",
                  "runtime_trace",
                  "chain_read",
                  "policy",
                  "provider"
                ]
              },
              "ref": {
                "type": "string",
                "maxLength": 2048
              },
              "details": {
                "type": "object",
                "additionalProperties": true
              }
            },
            "required": [
              "kind",
              "ref",
              "details"
            ],
            "additionalProperties": false
          },
          "feeObligation": {
            "type": "object",
            "properties": {
              "obligationId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "mode": {
                "enum": [
                  "pool_enforced",
                  "programmable_routed",
                  "not_applicable"
                ]
              },
              "policyVersion": {
                "const": "programmable.custom-launch-fee.v1"
              },
              "rateBps": {
                "enum": [
                  20,
                  0
                ]
              },
              "scope": {
                "enum": [
                  "proven_pool_paths",
                  "programmable_built_or_routed_qualifying_swaps",
                  "no_qualifying_swap_flow"
                ]
              },
              "recipient": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "x-canonical": "address"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "marketIds": {
                "type": "array",
                "items": {
                  "type": "string",
                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                },
                "minItems": 0,
                "maxItems": 16
              },
              "enforcementWitness": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/witness"
              }
            },
            "required": [
              "obligationId",
              "mode",
              "policyVersion",
              "rateBps",
              "scope",
              "recipient",
              "marketIds"
            ],
            "additionalProperties": false
          },
          "claimDescriptor": {
            "type": "object",
            "properties": {
              "claimId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "chainId": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              },
              "asset": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "accrualContract": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "read": {
                "type": "object",
                "properties": {
                  "data": {
                    "type": "string",
                    "pattern": "^0x(?:[0-9a-f]{2})*$",
                    "maxLength": 262146
                  },
                  "resultType": {
                    "const": "uint256"
                  }
                },
                "required": [
                  "data",
                  "resultType"
                ],
                "additionalProperties": false
              },
              "claim": {
                "type": "object",
                "properties": {
                  "data": {
                    "type": "string",
                    "pattern": "^0x(?:[0-9a-f]{2})*$",
                    "maxLength": 262146
                  },
                  "value": {
                    "const": "0"
                  }
                },
                "required": [
                  "data",
                  "value"
                ],
                "additionalProperties": false
              },
              "requiredController": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "beneficiary": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "immutableRecipient": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "x-canonical": "address"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "runtimeCodeHash": {
                "type": "string",
                "pattern": "^0x[0-9a-f]{64}$"
              },
              "proof": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/witness"
              }
            },
            "required": [
              "claimId",
              "chainId",
              "asset",
              "accrualContract",
              "read",
              "claim",
              "requiredController",
              "beneficiary",
              "immutableRecipient",
              "runtimeCodeHash",
              "proof"
            ],
            "additionalProperties": false
          },
          "publication": {
            "type": "object",
            "properties": {
              "visibility": {
                "enum": [
                  "listed",
                  "unlisted"
                ]
              },
              "name": {
                "type": "string",
                "maxLength": 256
              },
              "symbol": {
                "type": "string",
                "maxLength": 64
              },
              "description": {
                "type": "string",
                "maxLength": 16384
              },
              "imageUrl": {
                "type": "string",
                "maxLength": 2048
              },
              "primaryComponentId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "primaryMarketId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "links": {
                "type": "array",
                "items": {
                  "type": "string",
                  "maxLength": 2048
                },
                "minItems": 0,
                "maxItems": 16
              }
            },
            "required": [
              "visibility"
            ],
            "additionalProperties": false
          },
          "verificationBundle": {
            "type": "object",
            "properties": {
              "schemaVersion": {
                "const": "programmable.exact-source-verification-bundle.v2"
              },
              "compilationUnits": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/compilationUnit"
                },
                "minItems": 1,
                "maxItems": 16
              },
              "components": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/artifact"
                },
                "minItems": 1,
                "maxItems": 16
              }
            },
            "required": [
              "schemaVersion",
              "compilationUnits",
              "components"
            ],
            "additionalProperties": false
          },
          "compilationUnit": {
            "type": "object",
            "properties": {
              "compilationUnitId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "compilerVersion": {
                "type": "string",
                "pattern": "^0\\.[0-9]+\\.[0-9]+\\+commit\\.[0-9a-f]{8}$"
              },
              "standardJsonInputBase64": {
                "type": "string",
                "maxLength": 6990508,
                "minLength": 4,
                "x-canonical": "base64"
              },
              "standardJsonInputSha256": {
                "type": "string",
                "pattern": "^sha256:[0-9a-f]{64}$"
              }
            },
            "required": [
              "compilationUnitId",
              "compilerVersion",
              "standardJsonInputBase64",
              "standardJsonInputSha256"
            ],
            "additionalProperties": false
          },
          "artifact": {
            "type": "object",
            "properties": {
              "targetId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "compilationUnitId": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "sourcePath": {
                "type": "string",
                "maxLength": 4096
              },
              "contractName": {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              "constructorArguments": {
                "type": "string",
                "pattern": "^0x(?:[0-9a-f]{2})*$",
                "maxLength": 262146
              },
              "runtimeMaterialization": {
                "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/runtimeMaterialization"
              }
            },
            "required": [
              "targetId",
              "compilationUnitId",
              "sourcePath",
              "contractName",
              "constructorArguments",
              "runtimeMaterialization"
            ],
            "additionalProperties": false
          },
          "runtimeMaterialization": {
            "type": "object",
            "properties": {
              "immutableReferences": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "immutableId": {
                      "type": "string",
                      "pattern": "^(?:0|[1-9][0-9]*)$",
                      "maxLength": 78,
                      "x-uintBits": 256
                    },
                    "ranges": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "start": {
                            "type": "integer",
                            "minimum": 0,
                            "maximum": 24576
                          },
                          "length": {
                            "const": 32
                          }
                        },
                        "required": [
                          "start",
                          "length"
                        ],
                        "additionalProperties": false
                      },
                      "minItems": 0,
                      "maxItems": 1024
                    }
                  },
                  "required": [
                    "immutableId",
                    "ranges"
                  ],
                  "additionalProperties": false
                },
                "minItems": 0,
                "maxItems": 1024
              },
              "runtimeImmutables": {
                "type": "array",
                "items": {
                  "oneOf": [
                    {
                      "type": "object",
                      "properties": {
                        "immutableId": {
                          "type": "string",
                          "pattern": "^(?:0|[1-9][0-9]*)$",
                          "maxLength": 78,
                          "x-uintBits": 256
                        },
                        "abiType": {
                          "const": "address"
                        },
                        "target": {
                          "type": "string",
                          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                        }
                      },
                      "required": [
                        "immutableId",
                        "abiType",
                        "target"
                      ],
                      "additionalProperties": false
                    },
                    {
                      "type": "object",
                      "properties": {
                        "immutableId": {
                          "type": "string",
                          "pattern": "^(?:0|[1-9][0-9]*)$",
                          "maxLength": 78,
                          "x-uintBits": 256
                        },
                        "abiType": {
                          "type": "string",
                          "maxLength": 256
                        },
                        "literal": {
                          "oneOf": [
                            {
                              "type": "string"
                            },
                            {
                              "type": "boolean"
                            }
                          ]
                        }
                      },
                      "required": [
                        "immutableId",
                        "abiType",
                        "literal"
                      ],
                      "additionalProperties": false
                    }
                  ]
                },
                "minItems": 0,
                "maxItems": 1024
              },
              "deployedRuntimeCodeBase64": {
                "type": "string",
                "maxLength": 32768,
                "minLength": 4,
                "x-canonical": "base64"
              },
              "deployedRuntimeCodeHash": {
                "type": "string",
                "pattern": "^0x[0-9a-f]{64}$"
              }
            },
            "required": [
              "immutableReferences",
              "runtimeImmutables",
              "deployedRuntimeCodeBase64",
              "deployedRuntimeCodeHash"
            ],
            "additionalProperties": false
          }
        }
      },
      "CustomLaunchManualReviewV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-manual-review.v1"
          },
          "reviewId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "subjectHash": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "chainId": {
            "enum": [
              "1",
              "4663"
            ]
          },
          "controller": {
            "type": "string",
            "pattern": "^0x[0-9a-fA-F]{40}$",
            "x-canonical": "address"
          },
          "state": {
            "enum": [
              "pending",
              "approved",
              "rejected",
              "expired"
            ]
          },
          "revision": {
            "type": "integer",
            "minimum": 1
          },
          "submittedAt": {
            "type": "string",
            "format": "date-time"
          },
          "approvedAt": {
            "oneOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ]
          },
          "expiresAt": {
            "oneOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ]
          },
          "reason": {
            "oneOf": [
              {
                "type": "string",
                "maxLength": 2000
              },
              {
                "type": "null"
              }
            ]
          },
          "requiresRepack": {
            "type": "boolean"
          },
          "reviewDueAt": {
            "type": "string",
            "format": "date-time"
          },
          "reviewOverdue": {
            "type": "boolean"
          },
          "launchRequestedAt": {
            "oneOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ]
          },
          "launchDeadline": {
            "oneOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "schemaVersion",
          "reviewId",
          "subjectHash",
          "chainId",
          "controller",
          "state",
          "revision",
          "submittedAt",
          "approvedAt",
          "expiresAt",
          "reason"
        ],
        "additionalProperties": false
      },
      "CustomLaunchFindingV1": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "maxLength": 256
          },
          "stage": {
            "type": "string",
            "maxLength": 256
          },
          "blockingAxis": {
            "oneOf": [
              {
                "enum": [
                  "launchEligibility",
                  "assurance",
                  "distribution",
                  "lifecycle"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "invariant": {
            "type": "string",
            "maxLength": 2048
          },
          "jsonPointer": {
            "type": "string",
            "maxLength": 4096
          },
          "actual": {},
          "constraint": {
            "type": "object",
            "additionalProperties": true
          },
          "witness": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/witness"
          },
          "repair": {
            "type": "object",
            "properties": {
              "action": {
                "enum": [
                  "replace_value",
                  "repack",
                  "change_contract",
                  "inspect",
                  "retry",
                  "none"
                ]
              },
              "value": {},
              "patch": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            },
            "required": [
              "action"
            ],
            "additionalProperties": false
          },
          "retry": {
            "type": "object",
            "properties": {
              "mode": {
                "enum": [
                  "same_request",
                  "repack_new_idempotency",
                  "poll",
                  "change_contract",
                  "operator_retry"
                ]
              },
              "sameBytesAllowed": {
                "type": "boolean"
              }
            },
            "required": [
              "mode",
              "sameBytesAllowed"
            ],
            "additionalProperties": false
          },
          "resumeUrl": {
            "type": "string",
            "maxLength": 2048
          },
          "documentationUrl": {
            "type": "string",
            "maxLength": 2048
          }
        },
        "required": [
          "code",
          "stage",
          "blockingAxis",
          "invariant",
          "jsonPointer",
          "actual",
          "constraint",
          "witness",
          "repair",
          "retry",
          "resumeUrl",
          "documentationUrl"
        ],
        "additionalProperties": false
      },
      "CustomLaunchClaimV1": {
        "type": "object",
        "properties": {
          "claimType": {
            "type": "string",
            "maxLength": 256
          },
          "subject": {
            "type": "string",
            "maxLength": 2048
          },
          "observedValue": {},
          "status": {
            "enum": [
              "verified",
              "unresolved",
              "disclosed"
            ]
          },
          "witness": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/witness"
          },
          "assessor": {
            "type": "string",
            "maxLength": 256
          },
          "assessorVersion": {
            "type": "string",
            "maxLength": 256
          },
          "validAt": {
            "type": "string",
            "format": "date-time"
          },
          "blockNumber": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "claimType",
          "subject",
          "observedValue",
          "status",
          "witness",
          "assessor",
          "assessorVersion",
          "validAt",
          "blockNumber"
        ],
        "additionalProperties": false
      },
      "CustomLaunchDistributionV1": {
        "type": "object",
        "properties": {
          "programmableRouting": {
            "enum": [
              "untested",
              "compatible",
              "adapter_required",
              "incompatible"
            ]
          },
          "uniswapApi": {
            "enum": [
              "not_requested",
              "pending",
              "available",
              "unavailable"
            ]
          },
          "uniswapLabsRouting": {
            "enum": [
              "unknown",
              "automatic",
              "review_required",
              "allowed",
              "unavailable"
            ]
          },
          "hooklist": {
            "enum": [
              "not_requested",
              "queued",
              "submitted",
              "merged",
              "rejected"
            ]
          }
        },
        "required": [
          "programmableRouting",
          "uniswapApi",
          "uniswapLabsRouting",
          "hooklist"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPreflightV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-preflight.v1"
          },
          "requestId": {
            "type": "string",
            "maxLength": 256
          },
          "planHash": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "manifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "launchEligibility": {
            "type": "object",
            "properties": {
              "status": {
                "enum": [
                  "ready",
                  "action_required",
                  "analysis_pending"
                ]
              },
              "hardBlockers": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomLaunchFindingV1"
                }
              }
            },
            "required": [
              "status",
              "hardBlockers"
            ],
            "additionalProperties": false
          },
          "findings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchFindingV1"
            }
          },
          "assurance": {
            "type": "object",
            "properties": {
              "level": {
                "enum": [
                  "provenance_only",
                  "provenance_verified",
                  "properties_verified"
                ]
              },
              "claims": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CustomLaunchClaimV1"
                }
              }
            },
            "required": [
              "level",
              "claims"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "schemaVersion",
          "requestId",
          "planHash",
          "manifestDigest",
          "launchEligibility",
          "findings",
          "assurance"
        ],
        "additionalProperties": false
      },
      "CustomLaunchAdmissionV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-admission.v1"
          },
          "planHash": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "rawRequestSha256": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "manifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "principalId": {
            "type": "string",
            "maxLength": 256
          },
          "controller": {
            "type": "string",
            "pattern": "^0x[0-9a-fA-F]{40}$",
            "x-canonical": "address"
          },
          "chainId": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]*)$",
            "maxLength": 20,
            "x-uintBits": 64
          },
          "evidenceDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "issuerVersion": {
            "type": "string",
            "maxLength": 256
          },
          "issuerKeyId": {
            "type": "string",
            "maxLength": 256
          },
          "issuedAt": {
            "type": "string",
            "format": "date-time"
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "assuranceClaims": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchClaimV1"
            }
          },
          "receiptHash": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "signature": {
            "type": "string",
            "maxLength": 4096
          }
        },
        "required": [
          "schemaVersion",
          "planHash",
          "rawRequestSha256",
          "manifestDigest",
          "principalId",
          "controller",
          "chainId",
          "evidenceDigest",
          "issuerVersion",
          "issuerKeyId",
          "issuedAt",
          "expiresAt",
          "assuranceClaims",
          "receiptHash",
          "signature"
        ],
        "additionalProperties": false
      },
      "CustomLaunchWalletStepV1": {
        "type": "object",
        "properties": {
          "stepId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "actionIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
            },
            "minItems": 0,
            "maxItems": 64
          },
          "status": {
            "enum": [
              "pending",
              "wallet_action_ready",
              "broadcast",
              "mined",
              "final",
              "failed"
            ]
          },
          "controller": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/controller"
          },
          "transaction": {
            "type": "object",
            "properties": {
              "chainId": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              },
              "from": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "to": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "x-canonical": "address"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "data": {
                "type": "string",
                "pattern": "^0x(?:[0-9a-f]{2})*$",
                "maxLength": 262146
              },
              "value": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              },
              "gasLimit": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              },
              "nonce": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              },
              "deadline": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              }
            },
            "required": [
              "chainId",
              "from",
              "to",
              "data",
              "value",
              "gasLimit",
              "nonce",
              "deadline"
            ],
            "additionalProperties": false
          },
          "transactionDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "preconditions": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
            },
            "minItems": 0,
            "maxItems": 256
          },
          "postconditions": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
            },
            "minItems": 0,
            "maxItems": 256
          },
          "transactionHash": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^0x[0-9a-f]{64}$"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "stepId",
          "actionIds",
          "status",
          "controller",
          "transaction",
          "transactionDigest",
          "preconditions",
          "postconditions",
          "transactionHash"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPlanReplanBindingV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-replan.v1"
          },
          "previousPlanId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "previousPlanHash": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "previousRawRequestSha256": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "previousManifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "chainId": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]*)$",
            "maxLength": 20,
            "x-uintBits": 64
          },
          "controller": {
            "type": "string",
            "pattern": "^0x[0-9a-fA-F]{40}$",
            "x-canonical": "address"
          },
          "finalizedPrefix": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "stepId": {
                  "type": "string",
                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
                },
                "transactionDigest": {
                  "type": "string",
                  "pattern": "^sha256:[0-9a-f]{64}$"
                },
                "transactionHash": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "evidenceHash": {
                  "type": "string",
                  "pattern": "^sha256:[0-9a-f]{64}$"
                },
                "inclusion": {
                  "type": "object",
                  "properties": {
                    "chainId": {
                      "type": "string",
                      "pattern": "^(?:0|[1-9][0-9]*)$",
                      "maxLength": 20,
                      "x-uintBits": 64
                    },
                    "transactionHash": {
                      "type": "string",
                      "pattern": "^0x[0-9a-f]{64}$"
                    },
                    "blockNumber": {
                      "type": "string",
                      "pattern": "^(?:0|[1-9][0-9]*)$",
                      "maxLength": 20,
                      "x-uintBits": 64
                    },
                    "blockHash": {
                      "type": "string",
                      "pattern": "^0x[0-9a-f]{64}$"
                    },
                    "blockTimestamp": {
                      "type": "string",
                      "pattern": "^(?:0|[1-9][0-9]*)$",
                      "maxLength": 20,
                      "x-uintBits": 64
                    },
                    "transactionIndex": {
                      "type": "string",
                      "pattern": "^(?:0|[1-9][0-9]*)$",
                      "maxLength": 20,
                      "x-uintBits": 64
                    }
                  },
                  "required": [
                    "chainId",
                    "transactionHash",
                    "blockNumber",
                    "blockHash",
                    "blockTimestamp",
                    "transactionIndex"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "stepId",
                "transactionDigest",
                "transactionHash",
                "evidenceHash",
                "inclusion"
              ],
              "additionalProperties": false
            },
            "minItems": 0,
            "maxItems": 64
          },
          "bindingHash": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          }
        },
        "required": [
          "schemaVersion",
          "previousPlanId",
          "previousPlanHash",
          "previousRawRequestSha256",
          "previousManifestDigest",
          "chainId",
          "controller",
          "finalizedPrefix",
          "bindingHash"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPlanResourceV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-resource.v1"
          },
          "planId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "requestId": {
            "type": "string",
            "maxLength": 256
          },
          "principalId": {
            "type": "string",
            "maxLength": 256
          },
          "planHash": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "rawRequestSha256": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "manifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "plan": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1"
          },
          "status": {
            "enum": [
              "accepted",
              "preflight_complete",
              "launch_ready",
              "action_required",
              "analysis_pending",
              "reserved",
              "wallet_action_ready",
              "broadcast",
              "mined",
              "final",
              "source_verified",
              "indexed",
              "publicly_visible",
              "expired"
            ]
          },
          "preflight": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/CustomLaunchPreflightV1"
              },
              {
                "type": "null"
              }
            ]
          },
          "admission": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/CustomLaunchAdmissionV1"
              },
              {
                "type": "null"
              }
            ]
          },
          "steps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchWalletStepV1"
            },
            "minItems": 0,
            "maxItems": 65
          },
          "walletAuthorization": {
            "type": "object",
            "properties": {
              "stampPreparation": {
                "type": "object",
                "additionalProperties": true
              },
              "controllerPrefix": {
                "type": "object",
                "additionalProperties": true
              }
            },
            "required": [
              "stampPreparation",
              "controllerPrefix"
            ],
            "additionalProperties": false
          },
          "admissionEvidence": {
            "type": "object",
            "additionalProperties": true
          },
          "replan": {
            "$ref": "#/components/schemas/CustomLaunchPlanReplanBindingV1"
          },
          "manualReview": {
            "$ref": "#/components/schemas/CustomLaunchManualReviewV1"
          },
          "distribution": {
            "$ref": "#/components/schemas/CustomLaunchDistributionV1"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "resumeUrl": {
            "type": "string",
            "maxLength": 2048
          }
        },
        "required": [
          "schemaVersion",
          "planId",
          "requestId",
          "principalId",
          "planHash",
          "rawRequestSha256",
          "manifestDigest",
          "plan",
          "status",
          "preflight",
          "admission",
          "steps",
          "distribution",
          "createdAt",
          "updatedAt",
          "resumeUrl"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPlanListV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-list.v1"
          },
          "chainId": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]*)$",
            "maxLength": 20,
            "x-uintBits": 64
          },
          "plans": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanResourceV1"
            },
            "minItems": 0,
            "maxItems": 25
          },
          "nextCursor": {
            "oneOf": [
              {
                "type": "string",
                "maxLength": 2048
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "schemaVersion",
          "chainId",
          "plans",
          "nextCursor"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPlanErrorsV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-errors.v1"
          },
          "requestId": {
            "oneOf": [
              {
                "type": "string",
                "maxLength": 256
              },
              {
                "type": "null"
              }
            ]
          },
          "policyVersion": {
            "const": "programmable.custom-launch-policy.v1"
          },
          "manifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "findings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchFindingV1"
            }
          }
        },
        "required": [
          "schemaVersion",
          "requestId",
          "policyVersion",
          "manifestDigest",
          "findings"
        ],
        "additionalProperties": false
      },
      "CustomLaunchCapabilitiesV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-capabilities.v1"
          },
          "chainId": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]*)$",
            "maxLength": 20,
            "x-uintBits": 64
          },
          "manifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "launchContract": {
            "type": "string",
            "maxLength": 2048
          },
          "limits": {
            "type": "object",
            "additionalProperties": true
          },
          "actions": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 256
            },
            "minItems": 0,
            "maxItems": 8
          },
          "executors": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 256
            },
            "minItems": 0,
            "maxItems": 4
          },
          "feeModes": {
            "type": "object",
            "additionalProperties": true
          },
          "currentTradeFeePolicy": {
            "type": "object",
            "additionalProperties": true
          },
          "feeModesScope": {
            "type": "string",
            "maxLength": 256
          },
          "availability": {
            "type": "object",
            "properties": {
              "state": {
                "enum": [
                  "disabled",
                  "canary",
                  "active",
                  "degraded"
                ]
              },
              "manifestDigest": {
                "type": "string",
                "pattern": "^sha256:[0-9a-f]{64}$"
              },
              "operations": {
                "type": "object",
                "additionalProperties": {
                  "type": "object",
                  "properties": {
                    "state": {
                      "enum": [
                        "disabled",
                        "canary",
                        "active",
                        "degraded"
                      ]
                    },
                    "reasons": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "maxLength": 256
                      }
                    }
                  },
                  "required": [
                    "state",
                    "reasons"
                  ],
                  "additionalProperties": false
                }
              },
              "bindings": {
                "type": "object",
                "additionalProperties": true
              }
            },
            "required": [
              "state",
              "manifestDigest",
              "operations",
              "bindings"
            ],
            "additionalProperties": false
          },
          "compatibility": {
            "type": "object",
            "additionalProperties": true
          }
        },
        "required": [
          "schemaVersion",
          "chainId",
          "manifestDigest",
          "launchContract",
          "limits",
          "actions",
          "executors",
          "feeModes",
          "availability",
          "compatibility"
        ],
        "additionalProperties": false
      },
      "CustomLaunchCredentialV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-credential.v1"
          },
          "chainId": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]*)$",
            "maxLength": 20,
            "x-uintBits": 64
          },
          "controller": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              {
                "type": "null"
              }
            ]
          },
          "credentialId": {
            "type": "string",
            "maxLength": 256
          },
          "credentialKind": {
            "enum": [
              "wallet-api-key",
              "partner-root",
              "partner-subkey"
            ]
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 256
            }
          },
          "limits": {
            "type": "object",
            "additionalProperties": true
          },
          "manifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "requestSchemaVersion": {
            "const": "programmable.custom-launch-plan.v1"
          }
        },
        "required": [
          "schemaVersion",
          "chainId",
          "controller",
          "credentialId",
          "credentialKind",
          "scopes",
          "limits",
          "manifestDigest",
          "requestSchemaVersion"
        ],
        "additionalProperties": false
      },
      "LaunchProjectionV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.launch-projection.v1"
          },
          "sourceVersion": {
            "enum": [
              "router_v1",
              "multi_role_v2",
              "custom_launch_plan_v1"
            ]
          },
          "launchId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "chainId": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]*)$",
            "maxLength": 20,
            "x-uintBits": 64
          },
          "controller": {
            "type": "string",
            "pattern": "^0x[0-9a-fA-F]{40}$",
            "x-canonical": "address"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "finalizedAt": {
            "oneOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ]
          },
          "manifestDigest": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^sha256:[0-9a-f]{64}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "planHash": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^sha256:[0-9a-f]{64}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "components": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/component"
            },
            "minItems": 0,
            "maxItems": 16
          },
          "markets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/market"
            },
            "minItems": 0,
            "maxItems": 16
          },
          "primaryComponentId": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "primaryMarketId": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
              },
              {
                "type": "null"
              }
            ]
          },
          "publication": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/publication"
              },
              {
                "type": "null"
              }
            ]
          },
          "assuranceClaims": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchClaimV1"
            }
          },
          "claimDescriptors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/claimDescriptor"
            },
            "minItems": 0,
            "maxItems": 64
          },
          "distribution": {
            "$ref": "#/components/schemas/CustomLaunchDistributionV1"
          },
          "sourceVerification": {
            "enum": [
              "pending",
              "verified",
              "partial",
              "failed"
            ]
          },
          "finality": {
            "type": "object",
            "properties": {
              "status": {
                "enum": [
                  "pending",
                  "final"
                ]
              },
              "transactionHashes": {
                "type": "array",
                "items": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{64}$"
                },
                "minItems": 0,
                "maxItems": 65
              },
              "blockNumber": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^(?:0|[1-9][0-9]*)$",
                    "maxLength": 20,
                    "x-uintBits": 64
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "blockHash": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^0x[0-9a-f]{64}$"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "witness": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/witness"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "status",
              "transactionHashes",
              "blockNumber",
              "blockHash",
              "witness"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "schemaVersion",
          "sourceVersion",
          "launchId",
          "chainId",
          "controller",
          "createdAt",
          "finalizedAt",
          "manifestDigest",
          "planHash",
          "components",
          "markets",
          "primaryComponentId",
          "primaryMarketId",
          "publication",
          "assuranceClaims",
          "claimDescriptors",
          "distribution",
          "sourceVerification",
          "finality"
        ],
        "additionalProperties": false
      },
      "LaunchProjectionPageV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.launch-projection-page.v1"
          },
          "launches": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LaunchProjectionV1"
            },
            "minItems": 0,
            "maxItems": 25
          },
          "nextCursor": {
            "oneOf": [
              {
                "type": "string",
                "maxLength": 2048
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "schemaVersion",
          "launches",
          "nextCursor"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPlanResourceV1_1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-resource.v1"
          },
          "planId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "requestId": {
            "type": "string",
            "maxLength": 256
          },
          "principalId": {
            "type": "string",
            "maxLength": 256
          },
          "planHash": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "rawRequestSha256": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "manifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "plan": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1"
          },
          "status": {
            "enum": [
              "accepted",
              "preflight_complete",
              "launch_ready",
              "action_required",
              "analysis_pending",
              "reserved",
              "wallet_action_ready",
              "broadcast",
              "mined",
              "final",
              "source_verified",
              "indexed",
              "publicly_visible",
              "expired"
            ]
          },
          "preflight": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/CustomLaunchPreflightV1"
              },
              {
                "type": "null"
              }
            ]
          },
          "admission": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/CustomLaunchAdmissionV1"
              },
              {
                "type": "null"
              }
            ]
          },
          "steps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchWalletStepV1"
            },
            "minItems": 0,
            "maxItems": 65
          },
          "walletAuthorization": {
            "type": "object",
            "properties": {
              "stampPreparation": {
                "type": "object",
                "additionalProperties": true
              },
              "controllerPrefix": {
                "type": "object",
                "additionalProperties": true
              }
            },
            "required": [
              "stampPreparation",
              "controllerPrefix"
            ],
            "additionalProperties": false
          },
          "admissionEvidence": {
            "type": "object",
            "additionalProperties": true
          },
          "replan": {
            "$ref": "#/components/schemas/CustomLaunchPlanReplanBindingV1"
          },
          "manualReview": {
            "$ref": "#/components/schemas/CustomLaunchManualReviewV1"
          },
          "distribution": {
            "$ref": "#/components/schemas/CustomLaunchDistributionV1"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "resumeUrl": {
            "type": "string",
            "maxLength": 2048
          },
          "walletUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 2048,
            "description": "Fixed Programmable website handoff; conveys no authorization. Present only for response version 1.1."
          }
        },
        "required": [
          "schemaVersion",
          "planId",
          "requestId",
          "principalId",
          "planHash",
          "rawRequestSha256",
          "manifestDigest",
          "plan",
          "status",
          "preflight",
          "admission",
          "steps",
          "distribution",
          "createdAt",
          "updatedAt",
          "resumeUrl"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPlanListV1_1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-list.v1"
          },
          "chainId": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]*)$",
            "maxLength": 20,
            "x-uintBits": 64
          },
          "plans": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_1"
            },
            "minItems": 0,
            "maxItems": 25
          },
          "nextCursor": {
            "oneOf": [
              {
                "type": "string",
                "maxLength": 2048
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "schemaVersion",
          "chainId",
          "plans",
          "nextCursor"
        ],
        "additionalProperties": false
      },
      "CustomLaunchWalletPlanListV1_1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-list.v1"
          },
          "plans": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_1"
            },
            "minItems": 0,
            "maxItems": 25
          },
          "nextCursor": {
            "oneOf": [
              {
                "type": "string",
                "maxLength": 2048
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "schemaVersion",
          "plans",
          "nextCursor"
        ],
        "additionalProperties": false
      },
      "CustomLaunchWalletPlanProofReceiptV1_1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-step-proof.v1"
          },
          "planId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "stepId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "transactionHash": {
            "type": "string",
            "pattern": "^0x[0-9a-f]{64}$"
          },
          "accepted": {
            "const": true
          },
          "authoritative": {
            "const": false
          },
          "acceptedAt": {
            "type": "string",
            "format": "date-time"
          },
          "resumeUrl": {
            "type": "string",
            "maxLength": 2048
          },
          "walletUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 2048
          }
        },
        "required": [
          "schemaVersion",
          "planId",
          "stepId",
          "transactionHash",
          "accepted",
          "authoritative",
          "acceptedAt",
          "resumeUrl"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPlanContinuationV1": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-continuation.v1"
          },
          "status": {
            "const": "replan_required"
          },
          "originalManifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "currentManifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "replanUrl": {
            "type": "string",
            "maxLength": 2048,
            "pattern": "^/v4/chains/4663/custom-launch-plans/[A-Za-z0-9][A-Za-z0-9._:-]{0,127}:replan$"
          }
        },
        "required": [
          "schemaVersion",
          "status",
          "originalManifestDigest",
          "currentManifestDigest",
          "replanUrl"
        ],
        "additionalProperties": false
      },
      "CustomLaunchWalletStepV1_2": {
        "type": "object",
        "properties": {
          "stepId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "actionIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
            },
            "minItems": 0,
            "maxItems": 65
          },
          "status": {
            "enum": [
              "pending",
              "wallet_action_ready",
              "broadcast",
              "mined",
              "final",
              "failed"
            ]
          },
          "controller": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1/$defs/controller"
          },
          "transaction": {
            "type": "object",
            "properties": {
              "chainId": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              },
              "from": {
                "type": "string",
                "pattern": "^0x[0-9a-fA-F]{40}$",
                "x-canonical": "address"
              },
              "to": {
                "oneOf": [
                  {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "x-canonical": "address"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "data": {
                "type": "string",
                "pattern": "^0x(?:[0-9a-f]{2})*$",
                "maxLength": 2200002
              },
              "value": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              },
              "gasLimit": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 78,
                "x-uintBits": 256
              },
              "nonce": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              },
              "deadline": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]*)$",
                "maxLength": 20,
                "x-uintBits": 64
              }
            },
            "required": [
              "chainId",
              "from",
              "to",
              "data",
              "value",
              "gasLimit",
              "nonce",
              "deadline"
            ],
            "additionalProperties": false
          },
          "transactionDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "preconditions": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
            },
            "minItems": 0,
            "maxItems": 256
          },
          "postconditions": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
            },
            "minItems": 0,
            "maxItems": 256
          },
          "transactionHash": {
            "oneOf": [
              {
                "type": "string",
                "pattern": "^0x[0-9a-f]{64}$"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "stepId",
          "actionIds",
          "status",
          "controller",
          "transaction",
          "transactionDigest",
          "preconditions",
          "postconditions",
          "transactionHash"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPlanResourceV1_2": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-resource.v1"
          },
          "planId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "requestId": {
            "type": "string",
            "maxLength": 256
          },
          "principalId": {
            "type": "string",
            "maxLength": 256
          },
          "planHash": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "rawRequestSha256": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "manifestDigest": {
            "type": "string",
            "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "plan": {
            "$ref": "#/components/schemas/CustomLaunchPlanV1"
          },
          "status": {
            "enum": [
              "accepted",
              "preflight_complete",
              "launch_ready",
              "action_required",
              "analysis_pending",
              "reserved",
              "wallet_action_ready",
              "broadcast",
              "mined",
              "final",
              "source_verified",
              "indexed",
              "publicly_visible",
              "expired"
            ]
          },
          "preflight": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/CustomLaunchPreflightV1"
              },
              {
                "type": "null"
              }
            ]
          },
          "admission": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/CustomLaunchAdmissionV1"
              },
              {
                "type": "null"
              }
            ]
          },
          "steps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchWalletStepV1_2"
            },
            "minItems": 0,
            "maxItems": 65
          },
          "walletAuthorization": {
            "oneOf": [
              {
                "type": "object",
                "properties": {
                  "stampPreparation": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "controllerPrefix": {
                    "type": "object",
                    "additionalProperties": true
                  }
                },
                "required": [
                  "stampPreparation",
                  "controllerPrefix"
                ],
                "additionalProperties": false
              },
              {
                "type": "object",
                "properties": {
                  "atomicPreparation": {
                    "type": "object",
                    "additionalProperties": true
                  },
                  "executionOrder": {
                    "type": "object",
                    "additionalProperties": true
                  }
                },
                "required": [
                  "atomicPreparation",
                  "executionOrder"
                ],
                "additionalProperties": false
              }
            ]
          },
          "admissionEvidence": {
            "type": "object",
            "additionalProperties": true
          },
          "replan": {
            "$ref": "#/components/schemas/CustomLaunchPlanReplanBindingV1"
          },
          "manualReview": {
            "$ref": "#/components/schemas/CustomLaunchManualReviewV1"
          },
          "distribution": {
            "$ref": "#/components/schemas/CustomLaunchDistributionV1"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "resumeUrl": {
            "type": "string",
            "maxLength": 2048
          },
          "walletUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 2048,
            "description": "Fixed Programmable website handoff; conveys no authorization."
          },
          "continuation": {
            "$ref": "#/components/schemas/CustomLaunchPlanContinuationV1",
            "description": "Derived advice for a historical plan without a current signed next step. Does not change or authorize any original bytes; unresolved wallet sends take precedence."
          }
        },
        "required": [
          "schemaVersion",
          "planId",
          "requestId",
          "principalId",
          "planHash",
          "rawRequestSha256",
          "manifestDigest",
          "plan",
          "status",
          "preflight",
          "admission",
          "steps",
          "distribution",
          "createdAt",
          "updatedAt",
          "resumeUrl"
        ],
        "additionalProperties": false
      },
      "CustomLaunchPlanListV1_2": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-list.v1"
          },
          "chainId": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]*)$",
            "maxLength": 20,
            "x-uintBits": 64
          },
          "plans": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_2"
            },
            "minItems": 0,
            "maxItems": 25
          },
          "nextCursor": {
            "oneOf": [
              {
                "type": "string",
                "maxLength": 2048
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "schemaVersion",
          "chainId",
          "plans",
          "nextCursor"
        ],
        "additionalProperties": false
      },
      "CustomLaunchWalletPlanListV1_2": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-list.v1"
          },
          "plans": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomLaunchPlanResourceV1_2"
            },
            "minItems": 0,
            "maxItems": 25
          },
          "nextCursor": {
            "oneOf": [
              {
                "type": "string",
                "maxLength": 2048
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "schemaVersion",
          "plans",
          "nextCursor"
        ],
        "additionalProperties": false
      },
      "CustomLaunchWalletPlanProofReceiptV1_2": {
        "type": "object",
        "properties": {
          "schemaVersion": {
            "const": "programmable.custom-launch-plan-step-proof.v1"
          },
          "planId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "stepId": {
            "type": "string",
            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@/+\\-]{0,255}$"
          },
          "transactionHash": {
            "type": "string",
            "pattern": "^0x[0-9a-f]{64}$"
          },
          "accepted": {
            "const": true
          },
          "authoritative": {
            "const": false
          },
          "acceptedAt": {
            "type": "string",
            "format": "date-time"
          },
          "resumeUrl": {
            "type": "string",
            "maxLength": 2048
          },
          "walletUrl": {
            "type": "string",
            "format": "uri",
            "maxLength": 2048
          }
        },
        "required": [
          "schemaVersion",
          "planId",
          "stepId",
          "transactionHash",
          "accepted",
          "authoritative",
          "acceptedAt",
          "resumeUrl"
        ],
        "additionalProperties": false
      }
    }
  }
}
