## Request

Cancel

```
POST /v1/sessions/{session_id}/cancel
```

## Product UI

- Show cancel only while a task is running or starting.
- Verify ownership before sending the cancel request.
- After cancel, stop app-side progress rendering and refresh session status.

**Open standard**

Explicit POST /v1/sessions/{session_id}/cancel matches UHP's cancellation rules: the server must stop promptly, retain output already produced, and leave the session continuable. See [cancellation in the Unified Harness Protocol's Sessions chapter](https://unifiedharnessprotocol.org/spec/sessions).
