{
  "model": "gemini-3.8-flash",
  "question": "How do I roll back production?",
  "adk_create": {
    "command": "adk create --type=config --model gemini-3.8-flash --api_key your-gemini-api-key docs_config",
    "files": [
      ".env",
      ".gitignore",
      "root_agent.yaml"
    ],
    "root_agent.yaml": "# yaml-language-server: $schema=https://raw.githubusercontent.com/google/adk-python/refs/heads/main/src/google/adk/agents/config_schemas/AgentConfig.json\nname: root_agent\ndescription: A helpful assistant for user questions.\ninstruction: Answer user questions to the best of your knowledge\nmodel: gemini-3.8-flash\n"
  },
  "adk_run": [
    "[docs_assistant]: To roll back production to a specific release, run:",
    "`shipctl rollback --env production --to r41`",
    "Without `--to`, shipctl rolls back to the previous release. It points traffic at the release you specify without rebuilding anything. ",
    "Note that database migrations are not rolled back automatically; if the current release ran a migration, you must write a new migration that reverses it."
  ],
  "load": {
    "lines": [
      "docs_assistant  call read_page({'page': 'rollback'})",
      "docs_assistant  result read_page",
      "docs_assistant  'To roll back production, use `shipctl ro'"
    ],
    "answer": "To roll back production, use `shipctl rollback`:\n\n- To roll back to a specific release:\n  `shipctl rollback --env production --to r41`\n- Without `--to`, shipctl rolls back to the previous release.\n\nIt points traffic at the specified release without rebuilding. Note that database migrations are not rolled back; if the release ran a migration, you must write a new migration to reverse it.",
    "model_turns": [
      {
        "content": {
          "role": "model",
          "parts": [
            {
              "function_call": {
                "id": "call_371001",
                "args": {
                  "page": "rollback"
                },
                "name": "read_page"
              }
            }
          ]
        }
      },
      {
        "content": {
          "role": "model",
          "parts": [
            {
              "text": "To roll back production, use `shipctl rollback`:\n\n- To roll back to a specific release:\n  `shipctl rollback --env production --to r41`\n- Without `--to`, shipctl rolls back to the previous release.\n\nIt points traffic at the specified release without rebuilding. Note that database migrations are not rolled back; if the release ran a migration, you must write a new migration to reverse it."
            }
          ]
        }
      }
    ]
  },
  "load_failures": {
    "misspelled_field": "ValidationError: 2 validation errors for LlmAgentConfig\ninstruction\n  Field required [type=missing, input_value={'agent_class': 'LlmAgent...hinking_level': 'low'}}}, input_type=dict]\n    For further information visit https://errors.pydantic.dev/2.14/v/missing\ninstructions\n  Extra inputs are not permitted [type=extra_forbidden, input_value=\"You answer questions fro...swer under 100 words.\\n\", input_type=str]\n    For further information visit https://errors.pydantic.dev/2.14/v/extra_forbidden",
    "missing_tool": "AttributeError: module 'docs_config.tools' has no attribute 'read_pages'",
    "stdlib_tool": "ValueError: Blocked module reference: 'os.system'. Agent configurations cannot import from 'os'. The Python standard library is blocked in full because too much of it can execute arbitrary code. Reference your own agent package, 'google.adk', or a third-party package instead."
  },
  "builder": {
    "get": "HTTP 200",
    "get_matches_file": true,
    "edit": "true\nHTTP 200",
    "args_key": "{\"detail\":\"Blocked key 'args' found in 'docs_config/root_agent.yaml'. The 'args' field is not allowed in builder uploads because it can execute arbitrary code.\"}\nHTTP 400",
    "outside_code": "{\"detail\":\"Blocked code reference 'subprocess.run' in 'docs_config/root_agent.yaml'. The 'tools' field may only reference code under 'docs_config' or an ADK built-in.\"}\nHTTP 400",
    "saved_has_edit": true
  }
}
