{
  "model": "gemini-3.8-flash",
  "operations": {
    "/envs/{env}/releases": {
      "get": "listReleases"
    },
    "/releases/{release}": {
      "get": "getRelease"
    },
    "/envs/{env}/rollback": {
      "post": "rollbackEnvironment"
    }
  },
  "security_schemes": {
    "APIKeyHeader": {
      "type": "apiKey",
      "in": "header",
      "name": "X-Ship-Key"
    }
  },
  "run": {
    "tools": [
      "list_releases",
      "get_release"
    ],
    "declarations": [
      {
        "description": "List the releases of one environment, newest first. Filter by status, such as failed.",
        "name": "list_releases",
        "parameters_json_schema": {
          "properties": {
            "env": {
              "type": "string",
              "enum": [
                "staging",
                "production"
              ],
              "title": "Env",
              "description": ""
            },
            "status": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Status",
              "description": ""
            }
          },
          "required": [
            "env"
          ],
          "title": "listReleases_Arguments",
          "type": "object"
        }
      },
      {
        "description": "Show one release: its status, commit and failure reason.",
        "name": "get_release",
        "parameters_json_schema": {
          "properties": {
            "release": {
              "type": "string",
              "title": "Release",
              "description": ""
            }
          },
          "required": [
            "release"
          ],
          "title": "getRelease_Arguments",
          "type": "object"
        }
      }
    ],
    "steps": [
      {
        "question": "Which staging releases failed, and why?",
        "calls": [
          {
            "name": "list_releases",
            "args": {
              "status": "failed",
              "env": "staging"
            }
          }
        ],
        "results": [
          {
            "result": [
              {
                "release": "r43",
                "status": "failed",
                "commit": "0be77c3",
                "reason": "health check failed"
              },
              {
                "release": "r42",
                "status": "failed",
                "commit": "d41e9a7",
                "reason": "pre_deploy exited 1"
              }
            ]
          }
        ],
        "http": [
          {
            "method": "GET",
            "path": "/envs/staging/releases",
            "request_id": "e-57c158ea-bb2b-41c5-a8d6-ead39bba73fe",
            "key_sent": true
          }
        ],
        "model_turns": [
          {
            "parts": [
              {
                "function_call": {
                  "id": "call_552311",
                  "args": {
                    "status": "failed",
                    "env": "staging"
                  },
                  "name": "list_releases"
                }
              }
            ],
            "role": "model"
          },
          {
            "parts": [
              {
                "text": "The following staging releases failed:\n\n- **r43**: health check failed (commit `0be77c3`)\n- **r42**: pre_deploy exited 1 (commit `d41e9a7`)"
              }
            ],
            "role": "model"
          }
        ],
        "answer": "The following staging releases failed:\n\n- **r43**: health check failed (commit `0be77c3`)\n- **r42**: pre_deploy exited 1 (commit `d41e9a7`)",
        "error": null
      },
      {
        "question": "What is live in production right now?",
        "calls": [
          {
            "name": "list_releases",
            "args": {
              "env": "production"
            }
          }
        ],
        "results": [
          {
            "result": [
              {
                "release": "r40",
                "status": "live",
                "commit": "5e2a913",
                "reason": null
              },
              {
                "release": "r39",
                "status": "previous",
                "commit": "77d0c41",
                "reason": null
              }
            ]
          }
        ],
        "http": [
          {
            "method": "GET",
            "path": "/envs/production/releases",
            "request_id": "e-5700ed62-629d-44d9-b3f6-3d87474e6d18",
            "key_sent": true
          }
        ],
        "model_turns": [
          {
            "parts": [
              {
                "function_call": {
                  "id": "call_612412",
                  "args": {
                    "env": "production"
                  },
                  "name": "list_releases"
                }
              }
            ],
            "role": "model"
          },
          {
            "parts": [
              {
                "text": "Release **r40** (commit `5e2a913`) is currently live in production."
              }
            ],
            "role": "model"
          }
        ],
        "answer": "Release **r40** (commit `5e2a913`) is currently live in production.",
        "error": null
      },
      {
        "question": "Roll production back to r39.",
        "calls": [],
        "results": [],
        "http": [],
        "model_turns": [
          {
            "parts": [
              {
                "text": "I cannot modify environments directly. To roll back production to r39, run:\n\n```bash\nshipctl rollback --env production --to r39\n```"
              }
            ],
            "role": "model"
          }
        ],
        "answer": "I cannot modify environments directly. To roll back production to r39, run:\n\n```bash\nshipctl rollback --env production --to r39\n```",
        "error": null
      }
    ]
  },
  "failures": {
    "wrong_key": {
      "tools": [
        "list_releases",
        "get_release"
      ],
      "declarations": [
        {
          "description": "List the releases of one environment, newest first. Filter by status, such as failed.",
          "name": "list_releases",
          "parameters_json_schema": {
            "properties": {
              "env": {
                "type": "string",
                "enum": [
                  "staging",
                  "production"
                ],
                "title": "Env",
                "description": ""
              },
              "status": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ],
                "title": "Status",
                "description": ""
              }
            },
            "required": [
              "env"
            ],
            "title": "listReleases_Arguments",
            "type": "object"
          }
        },
        {
          "description": "Show one release: its status, commit and failure reason.",
          "name": "get_release",
          "parameters_json_schema": {
            "properties": {
              "release": {
                "type": "string",
                "title": "Release",
                "description": ""
              }
            },
            "required": [
              "release"
            ],
            "title": "getRelease_Arguments",
            "type": "object"
          }
        }
      ],
      "steps": [
        {
          "question": "Which staging releases failed, and why?",
          "calls": [
            {
              "name": "list_releases",
              "args": {
                "env": "staging",
                "status": "failed"
              }
            }
          ],
          "results": [
            {
              "error": "Tool list_releases execution failed. Analyze this execution error and your inputs. Retry with adjustments if applicable. But make sure don't retry more than 3 times. Execution Error: Status Code: 401, {\"detail\":\"missing or invalid X-Ship-Key\"}"
            }
          ],
          "http": [
            {
              "method": "GET",
              "path": "/envs/staging/releases",
              "request_id": "e-ab16d1f7-1768-49e7-beee-0ca69d20732b",
              "key_sent": true
            }
          ],
          "model_turns": [
            {
              "parts": [
                {
                  "function_call": {
                    "id": "call_97198",
                    "args": {
                      "env": "staging",
                      "status": "failed"
                    },
                    "name": "list_releases"
                  }
                }
              ],
              "role": "model"
            },
            {
              "parts": [
                {
                  "text": "I am unable to retrieve the staging releases because the release API request failed with an authentication error (401: missing or invalid `X-Ship-Key`). Please verify your API credentials/key configuration to view failed staging releases and their causes."
                }
              ],
              "role": "model"
            }
          ],
          "answer": "I am unable to retrieve the staging releases because the release API request failed with an authentication error (401: missing or invalid `X-Ship-Key`). Please verify your API credentials/key configuration to view failed staging releases and their causes.",
          "error": null
        }
      ]
    },
    "camel_case_filter": [],
    "no_servers": {
      "tools": [
        "list_releases",
        "get_release"
      ],
      "declarations": [
        {
          "description": "List the releases of one environment, newest first. Filter by status, such as failed.",
          "name": "list_releases",
          "parameters_json_schema": {
            "properties": {
              "env": {
                "type": "string",
                "enum": [
                  "staging",
                  "production"
                ],
                "title": "Env",
                "description": ""
              },
              "status": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ],
                "title": "Status",
                "description": ""
              }
            },
            "required": [
              "env"
            ],
            "title": "listReleases_Arguments",
            "type": "object"
          }
        },
        {
          "description": "Show one release: its status, commit and failure reason.",
          "name": "get_release",
          "parameters_json_schema": {
            "properties": {
              "release": {
                "type": "string",
                "title": "Release",
                "description": ""
              }
            },
            "required": [
              "release"
            ],
            "title": "getRelease_Arguments",
            "type": "object"
          }
        }
      ],
      "steps": [
        {
          "question": "Which staging releases failed, and why?",
          "calls": [],
          "results": [],
          "http": [],
          "model_turns": [
            {
              "parts": [
                {
                  "function_call": {
                    "id": "call_636143",
                    "args": {
                      "status": "failed",
                      "env": "staging"
                    },
                    "name": "list_releases"
                  }
                }
              ],
              "role": "model"
            }
          ],
          "answer": "",
          "error": "UnsupportedProtocol: Request URL is missing an 'http://' or 'https://' protocol."
        }
      ]
    }
  }
}
