{
  "file": "F05-run-pause-interrupt.md",
  "bullet": "Interrupt a running conversation (`F05.interrupt-running`).",
  "ids": [
    "F05.interrupt-running"
  ],
  "line": 460,
  "script": "control-agent-server conversation send \"$R\" --text 'hi' --no-run\ncontrol-agent-server ws start \"/sockets/events/$R\" --name f05-r-interrupt --duration 300\ncontrol-agent-server api POST \"<redacted:session-cookie>/$R/run\" --expect 200 --check success eq true\ncontrol-agent-server conversation wait \"$R\" --until running --timeout 60\ncontrol-agent-server sink read --name qa-f05-resume --expect-min 1\ncontrol-agent-server api POST \"<redacted:session-cookie>/$R/interrupt\" --expect 200 --check success eq true --expect-max-ms 4000 --timeout 60 --save F05.interrupt-running/interrupt\ncontrol-agent-server api GET \"<redacted:session-cookie>/$R\" --check execution_status eq paused --save F05.interrupt-running/get\ncontrol-agent-server api GET \"<redacted:session-cookie>/$R/events/count\" --query kind=$INTERRUPT_KIND --check . eq 1\ncontrol-agent-server api GET \"<redacted:session-cookie>/$R/events/count\" --query kind=$PAUSE_KIND --check . eq 0\ncontrol-agent-server ws stop f05-r-interrupt --expect-kind InterruptEvent --save F05.interrupt-running/frames\ncontrol-agent-server ws read f05-r-interrupt --contains '\"key\": \"execution_status\", \"value\": \"paused\"'\n",
  "exit_code": 0,
  "elapsed_ms": 25806,
  "failed_line": null,
  "failed_command": null,
  "stdout": "{\n  \"ok\": true,\n  \"status\": 200,\n  \"body\": {\n    \"success\": true\n  }\n}\n{\n  \"ok\": true,\n  \"capture\": \"f05-r-interrupt\",\n  \"out\": \"/workspace/verification-artifacts/runs/20261013-025211-dd9d-map-f05/captures/f05-r-interrupt.jsonl\",\n  \"hint\": \"`control-agent-server ws stop f05-r-interrupt` (or `ws read f05-r-interrupt`) after triggering the action\"\n}\n{\n  \"ok\": true,\n  \"status\": 200,\n  \"request\": {\n    \"method\": \"POST\",\n    \"path\": \"<redacted:session-cookie>/7e0e6821-b290-4b06-a596-440370cee4a0/run\",\n    \"query\": [],\n    \"auth\": \"header\",\n    \"body\": null,\n    \"files\": []\n  },\n  \"response\": {\n    \"status\": 200,\n    \"headers\": {\n      \"content-length\": \"16\",\n      \"content-type\": \"application/json\"\n    },\n    \"body\": {\n      \"success\": true\n    },\n    \"truncated\": false\n  },\n  \"elapsed_ms\": 283,\n  \"checks\": [\n    {\n      \"check\": \"success eq true\",\n      \"ok\": true,\n      \"actual\": \"true\"\n    }\n  ]\n}\n{\n  \"id\": \"7e0e6821-b290-4b06-a596-440370cee4a0\",\n  \"ok\": true,\n  \"status\": \"running\",\n  \"transitions\": [\n    \"running\"\n  ],\n  \"waited_ms\": 212\n}\n{\n  \"ok\": true,\n  \"requests\": 1,\n  \"paths\": {\n    \"/v1/chat/completions\": 1\n  },\n  \"last\": [\n    \"{\\\"at\\\": \\\"2026-10-13T02:56:00Z\\\", \\\"method\\\": \\\"POST\\\", \\\"path\\\": \\\"/v1/chat/completions\\\", \\\"call\\\": 0, \\\"step\\\": {\\\"hang\\\": 300.0}, \\\"body\\\": {\\\"messages\\\": [{\\\"content\\\": [{\\\"type\\\": \\\"text\\\", \\\"text\\\": \\\"<SOUL>\\\\nYou are OpenHands agent, a helpful AI assistant that can interact with a computer to solve tasks.\\\\n</SOUL>\\\\n\\\\n<ROLE>\\\\n* Your primary role is to assist users by executing commands, modifying code, and solving techni\\u2026\"\n  ]\n}\n{\n  \"ok\": true,\n  \"status\": 200,\n  \"request\": {\n    \"method\": \"POST\",\n    \"path\": \"<redacted:session-cookie>/7e0e6821-b290-4b06-a596-440370cee4a0/interrupt\",\n    \"query\": [],\n    \"auth\": \"header\",\n    \"body\": null,\n    \"files\": []\n  },\n  \"response\": {\n    \"status\": 200,\n    \"headers\": {\n      \"content-length\": \"16\",\n      \"content-type\": \"application/json\"\n    },\n    \"body\": {\n      \"success\": true\n    },\n    \"truncated\": false\n  },\n  \"elapsed_ms\": 391,\n  \"checks\": [\n    {\n      \"check\": \"success eq true\",\n      \"ok\": true,\n      \"actual\": \"true\"\n    }\n  ],\n  \"saved\": \"/workspace/verification-artifacts/runs/20261013-025211-dd9d-map-f05/evidence/F05.interrupt-running/interrupt.json\"\n}\n{\n  \"ok\": true,\n  \"status\": 200,\n  \"request\": {\n    \"method\": \"GET\",\n    \"path\": \"<redacted:session-cookie>/7e0e6821-b290-4b06-a596-440370cee4a0\",\n    \"query\": [],\n    \"auth\": \"header\",\n    \"body\": null,\n    \"files\": []\n  },\n  \"response\": {\n    \"status\": 200,\n    \"headers\": {\n      \"content-length\": \"3452\",\n      \"content-type\": \"application/json\"\n    },\n    \"body\": {\n      \"id\": \"7e0e6821-b290-4b06-a596-440370cee4a0\",\n      \"workspace\": {\n        \"working_dir\": \"/workspace/verification-artifacts/runs/20261013-025211-dd9d-map-f05/fixtures/workspaces/025249-875190\",\n        \"kind\": \"LocalWorkspace\"\n      },\n      \"persistence_dir\": \"/workspace/verification-artifacts/runs/20261013-025211-dd9d-map-f05/server/workspace/conversations/7e0e6821b2904b06a596440370cee4a0\",\n      \"max_iterations\": 500,\n      \"stuck_detection\": true,\n      \"execution_status\": \"paused\",\n      \"confirmation_policy\": {\n        \"kind\": \"NeverConfirm\"\n      },\n      \"security_analyzer\": null,\n      \"activated_knowledge_skills\": [],\n      \"invoked_skills\": [],\n      \"blocked_actions\": {},\n      \"blocked_messages\": {},\n      \"last_user_message_id\": \"5f140c7e-ff39-4105-9488-64c168e335ff\",\n      \"leaf_event_id\": \"68f296d1-6a2f-48b4-971d-7af98cfb9e8c\",\n      \"stats\": {\n        \"usage_to_metrics\": {\n          \"default\": {\n            \"model_name\": \"openai/qa-stub\",\n            \"accumulated_cost\": 0.0,\n            \"max_budget_per_task\": null,\n            \"accumulated_token_usage\": {\n              \"model\": \"openai/qa-stub\",\n              \"prompt_tokens\": 0,\n              \"completion_tokens\": 0,\n              \"cache_read_tokens\": 0,\n              \"cache_write_tokens\": 0,\n              \"reasoning_tokens\": 0,\n              \"context_window\": 0,\n              \"per_turn_token\": 0,\n              \"response_id\": \"\"\n            },\n            \"costs\": [],\n            \"response_latencies\": [],\n            \"token_usages\": []\n          }\n        }\n      },\n      \"secret_registry\": {\n        \"secret_sources\": {}\n      },\n      \"agent_state\": {},\n      \"hook_config\": null,\n      \"title\": null,\n      \"metrics\": null,\n      \"created_at\": \"2026-10-13T02:52:50.047658Z\",\n      \"updated_at\": \"2026-10-13T02:56:05.249810Z\",\n      \"forked_from_conversation_id\": null,\n      \"forked_from_event_id\": null,\n      \"parent_conversation_id\": null,\n      \"sub_conversation_ids\": [],\n      \"tags\": {},\n      \"current_model_id\": null,\n      \"available_models\": [],\n      \"supports_runtime_model_switch\": false,\n      \"launched_agent_profile\": null,\n      \"agent\": {\n        \"llm\": {\n          \"model\": \"openai/qa-stub\",\n          \"api_key\": null,\n          \"provider_connection_id\": null,\n          \"auth_type\": \"api_key\",\n          \"subscription_vendor\": null,\n          \"base_url\": \"http://127.0.0.1:47453/v1\",\n          \"api_version\": null,\n          \"aws_access_key_id\": null,\n          \"aws_secret_access_key\": null,\n          \"aws_session_token\": null,\n          \"aws_region_name\": null,\n          \"aws_profile_name\": null,\n          \"aws_role_name\": null,\n          \"aws_session_name\": null,\n          \"aws_bedrock_runtime_endpoint\": null,\n          \"openrouter_site_url\": \"https://docs.all-hands.dev/\",\n          \"openrouter_app_name\": \"OpenHands\",\n          \"num_retries\": 0,\n          \"retry_multiplier\": 8.0,\n          \"retry_min_wait\": 8,\n          \"retry_max_wait\": 64,\n          \"timeout\": 300,\n          \"stream_idle_timeout\": 300.0,\n          \"max_message_chars\": 30000,\n          \"temperature\": null,\n          \"top_p\": null,\n          \"top_k\": null,\n          \"max_input_tokens\": null,\n          \"max_output_tokens\": null,\n          \"model_canonical_name\": null,\n          \"api_mode\": \"auto\",\n          \"capability_overrides\": {},\n          \"extra_headers\": null,\n          \"input_cost_per_token\": null,\n          \"output_cost_per_token\": null,\n          \"ollama_base_url\": null,\n          \"stream\": false,\n          \"drop_params\": true,\n          \"disable_vision\": null,\n          \"disable_stop_word\": false,\n          \"caching_prompt\": true,\n          \"log_completions\": false,\n          \"log_completions_folder\": \"logs/completions\",\n          \"custom_tokenizer\": null,\n          \"native_tool_calling\": true,\n          \"force_string_serializer\": null,\n          \"inline_image_urls\": null,\n          \"reasoning_effort\": \"high\",\n          \"reasoning_summary\": null,\n          \"enable_encrypted_reasoning\": true,\n          \"prompt_cache_retention\": \"24h\",\n          \"extended_thinking_budget\": 200000,\n          \"seed\": null,\n          \"usage_id\": \"default\",\n          \"litellm_extra_body\": {},\n          \"is_subscription\": false\n        },\n        \"tools\": [],\n        \"mcp_config\": {},\n        \"filter_tools_regex\": null,\n        \"include_default_tools\": [\n          \"FinishTool\",\n          \"ThinkTool\"\n        ],\n        \"agent_context\": null,\n        \"system_prompt\": null,\n        \"system_prompt_filename\": \"system_prompt.j2\",\n        \"security_policy_filename\": \"security_policy.j2\",\n        \"system_prompt_kwargs\": {\n          \"llm_security_analyzer\": true\n        },\n        \"condenser\": null,\n        \"critic\": null,\n        \"tool_concurrency_limit\": 1,\n        \"persona\": null,\n        \"kind\": \"Agent\"\n      },\n      \"client_tools\": [],\n      \"tool_module_qualnames\": {},\n      \"runtime_info\": {\n        \"runtime_status\": \"available\",\n        \"can_resume\": true,\n        \"runtime_error\": null\n      }\n    },\n    \"truncated\": false\n  },\n  \"elapsed_ms\": 390,\n  \"checks\": [\n    {\n      \"check\": \"execution_status eq paused\",\n      \"ok\": true,\n      \"actual\": \"paused\"\n    }\n  ],\n  \"saved\": \"/workspace/verification-artifacts/runs/20261013-025211-dd9d-map-f05/evidence/F05.interrupt-running/get.json\"\n}\n{\n  \"ok\": true,\n  \"status\": 200,\n  \"request\": {\n    \"method\": \"GET\",\n    \"path\": \"<redacted:session-cookie>/7e0e6821-b290-4b06-a596-440370cee4a0/events/count\",\n    \"query\": [\n      [\n        \"kind\",\n        \"openhands.sdk.event.user_action.InterruptEvent\"\n      ]\n    ],\n    \"auth\": \"header\",\n    \"body\": null,\n    \"files\": []\n  },\n  \"response\": {\n    \"status\": 200,\n    \"headers\": {\n      \"content-length\": \"1\",\n      \"content-type\": \"application/json\"\n    },\n    \"body\": 1,\n    \"truncated\": false\n  },\n  \"elapsed_ms\": 95,\n  \"checks\": [\n    {\n      \"check\": \". eq 1\",\n      \"ok\": true,\n      \"actual\": \"1\"\n    }\n  ]\n}\n{\n  \"ok\": true,\n  \"status\": 200,\n  \"request\": {\n    \"method\": \"GET\",\n    \"path\": \"<redacted:session-cookie>/7e0e6821-b290-4b06-a596-440370cee4a0/events/count\",\n    \"query\": [\n      [\n        \"kind\",\n        \"openhands.sdk.event.user_action.PauseEvent\"\n      ]\n    ],\n    \"auth\": \"header\",\n    \"body\": null,\n    \"files\": []\n  },\n  \"response\": {\n    \"status\": 200,\n    \"headers\": {\n      \"content-length\": \"1\",\n      \"content-type\": \"application/json\"\n    },\n    \"body\": 0,\n    \"truncated\": false\n  },\n  \"elapsed_ms\": 213,\n  \"checks\": [\n    {\n      \"check\": \". eq 0\",\n      \"ok\": true,\n      \"actual\": \"0\"\n    }\n  ]\n}\n{\n  \"ok\": true,\n  \"capture\": \"f05-r-interrupt\",\n  \"out\": \"/workspace/verification-artifacts/runs/20261013-025211-dd9d-map-f05/captures/f05-r-interrupt.jsonl\",\n  \"opened\": true,\n  \"stopped\": \"stopped\",\n  \"frames\": 6,\n  \"kinds\": {\n    \"ConversationStateUpdateEvent\": 5,\n    \"InterruptEvent\": 1\n  },\n  \"close\": null,\n  \"matching\": 6,\n  \"matching_kinds\": [\n    \"ConversationStateUpdateEvent\",\n    \"InterruptEvent\"\n  ],\n  \"frames_shown\": [\n    {\n      \"kind\": \"ConversationStateUpdateEvent\",\n      \"frame\": \"{\\\"id\\\": \\\"8eda988a-2e7a-4525-a40a-99ced964ac58\\\", \\\"timestamp\\\": \\\"2026-10-13T02:55:58.337035\\\", \\\"source\\\": \\\"environment\\\", \\\"key\\\": \\\"full_state\\\", \\\"value\\\": {\\\"id\\\": \\\"7e0e6821-b290-4b06-a596-440370cee4a0\\\", \\\"agent\\\": {\\\"llm\\\": {\\\"model\\\": \\\"openai/qa-stub\\\", \\\"api_key\\\": \\\"<redacted:api_key>\\\", \\\"auth_type\\\": \\\"api_key\\\", \\\"base_url\\\": \\\"http://127.0.0.1:47453/v1\\\", \\\"openrouter_site_url\\\": \\\"https://docs.all-hands.dev/\\\", \\\"openrouter_app_nam\\u2026\"\n    },\n    {\n      \"kind\": \"ConversationStateUpdateEvent\",\n      \"frame\": {\n        \"id\": \"31f5a583-00be-4d8d-8596-789f8f54d973\",\n        \"timestamp\": \"2026-10-13T02:56:00.099929\",\n        \"source\": \"environment\",\n        \"parent_id\": \"5f140c7e-ff39-4105-9488-64c168e335ff\",\n        \"key\": \"execution_status\",\n        \"value\": \"running\",\n        \"kind\": \"ConversationStateUpdateEvent\"\n      }\n    },\n    {\n      \"kind\": \"ConversationStateUpdateEvent\",\n      \"frame\": {\n        \"id\": \"3d26b6cd-dce0-43ce-9dcb-cef403823ca9\",\n        \"timestamp\": \"2026-10-13T02:56:05.059989\",\n        \"source\": \"environment\",\n        \"parent_id\": \"5f140c7e-ff39-4105-9488-64c168e335ff\",\n        \"key\": \"execution_status\",\n        \"value\": \"paused\",\n        \"kind\": \"ConversationStateUpdateEvent\"\n      }\n    },\n    {\n      \"kind\": \"InterruptEvent\",\n      \"frame\": {\n        \"id\": \"68f296d1-6a2f-48b4-971d-7af98cfb9e8c\",\n        \"timestamp\": \"2026-10-13T02:56:05.222563\",\n        \"source\": \"user\",\n        \"parent_id\": \"5f140c7e-ff39-4105-9488-64c168e335ff\",\n        \"kind\": \"InterruptEvent\"\n      }\n    },\n    {\n      \"kind\": \"ConversationStateUpdateEvent\",\n      \"frame\": \"{\\\"id\\\": \\\"8f5cfdd6-00b0-499f-aa51-c0bcbef1cb9d\\\", \\\"timestamp\\\": \\\"2026-10-13T02:56:05.250890\\\", \\\"source\\\": \\\"environment\\\", \\\"key\\\": \\\"full_state\\\", \\\"value\\\": {\\\"id\\\": \\\"7e0e6821-b290-4b06-a596-440370cee4a0\\\", \\\"agent\\\": {\\\"llm\\\": {\\\"model\\\": \\\"openai/qa-stub\\\", \\\"api_key\\\": \\\"<redacted:api_key>\\\", \\\"auth_type\\\": \\\"api_key\\\", \\\"base_url\\\": \\\"http://127.0.0.1:47453/v1\\\", \\\"openrouter_site_url\\\": \\\"https://docs.all-hands.dev/\\\", \\\"openrouter_app_nam\\u2026\"\n    }\n  ],\n  \"saved\": \"/workspace/verification-artifacts/runs/20261013-025211-dd9d-map-f05/evidence/F05.interrupt-running/frames.json\"\n}\n{\n  \"ok\": true,\n  \"capture\": \"f05-r-interrupt\",\n  \"out\": \"/workspace/verification-artifacts/runs/20261013-025211-dd9d-map-f05/captures/f05-r-interrupt.jsonl\",\n  \"opened\": true,\n  \"stopped\": \"stopped\",\n  \"frames\": 6,\n  \"kinds\": {\n    \"ConversationStateUpdateEvent\": 5,\n    \"InterruptEvent\": 1\n  },\n  \"close\": null,\n  \"matching\": 1,\n  \"matching_kinds\": [\n    \"ConversationStateUpdateEvent\"\n  ],\n  \"frames_shown\": [\n    {\n      \"kind\": \"ConversationStateUpdateEvent\",\n      \"frame\": {\n        \"id\": \"3d26b6cd-dce0-43ce-9dcb-cef403823ca9\",\n        \"timestamp\": \"2026-10-13T02:56:05.059989\",\n        \"source\": \"environment\",\n        \"parent_id\": \"5f140c7e-ff39-4105-9488-64c168e335ff\",\n        \"key\": \"execution_status\",\n        \"value\": \"paused\",\n        \"kind\": \"ConversationStateUpdateEvent\"\n      }\n    }\n  ]\n}\n",
  "stderr": ""
}
