## MODIFIED Requirements ### Requirement: Task dashboard The console SHALL render a task view listing tasks by status with pagination, and SHALL show a task's detail including its attempt history, using the platform SDK's task-listing and attempt-history endpoints. The task detail view SHALL offer a Cancel action for tasks in status `queued`, `assigned`, or `dispatched`, using the platform SDK's cancel endpoint, and the status filter SHALL include `cancelled`. #### Scenario: Browse the task queue - **WHEN** an operator with a `tasks:read`-scoped token opens the task view - **THEN** the console displays tasks with their status, goal or workflow reference, and assigned device/host, and lets the operator filter by status, including `cancelled` #### Scenario: Inspect a task's attempt history - **WHEN** an operator selects a task from the list - **THEN** the console displays that task's recorded attempts in order, including each attempt's outcome #### Scenario: Cancel a task from the detail view - **WHEN** an operator with a `tasks:submit`-scoped token views the detail of a task whose status is `queued`, `assigned`, or `dispatched`, and clicks Cancel - **THEN** the console calls the cancel endpoint and updates the displayed status to reflect the immediate or pending cancellation result #### Scenario: Cancel action is absent for terminal tasks - **WHEN** an operator views the detail of a task whose status is `done`, `failed`, or `cancelled` - **THEN** the console does not offer a Cancel action for that task #### Scenario: Cancel attempted without submit scope - **WHEN** an operator whose token lacks `tasks:submit` views a cancellable task's detail - **THEN** the console does not offer a Cancel action, or surfaces the API's authorization error without implying the task was cancelled