Files
kandev/docs/specs/ui/session-tab-delete-feedback.md
T
2026-08-05 23:05:33 +01:00

55 lines
2.6 KiB
Markdown

---
status: shipped
created: 2026-08-05
owner: kandev
---
# Session tab delete feedback
## Why
Deleting an agent session from the task tab currently shows both a progress toast and a success
toast. The repeated global notifications are noisy for an action whose initiating control can show
its progress directly.
## What
- Clicking the X on a deletable agent-session tab continues to open the existing delete
confirmation dialog.
- After the user confirms, the X is replaced in place by a spinner until the delete request
settles. The close action is non-interactive and exposed as busy while the request is pending.
- X-initiated deletion does not show progress or success toasts.
- Successful deletion keeps the existing behavior: the deleted session and its tab disappear, and
another session becomes active when needed.
- If deletion fails, the session and tab remain, the spinner returns to the X, and one error toast
explains the failure so the user can retry.
- Deletion started from the session context menu or a mobile session action keeps its existing
feedback behavior.
## Failure modes
- A rejected or timed-out delete request does not remove local session state or its Dockview panel.
The close action becomes available again and the existing error detail is surfaced in one toast.
- Repeated activation while deletion is pending does not dispatch another delete request.
## Scenarios
- **GIVEN** a task with two deletable agent sessions, **WHEN** the user clicks one tab's X and
confirms deletion, **THEN** that X shows a spinner without progress or success toasts until the
session and tab are removed.
- **GIVEN** an X-initiated delete request is pending, **WHEN** the user attempts to activate the
close control again, **THEN** no duplicate delete request is dispatched.
- **GIVEN** an X-initiated delete request fails, **WHEN** the request settles, **THEN** the session
tab remains, the X becomes available again, and one error toast is shown.
- **GIVEN** the user cancels the delete confirmation, **WHEN** the dialog closes, **THEN** the tab
remains unchanged and no spinner or deletion toast appears.
- **GIVEN** a phone viewport, **WHEN** the user deletes a session from the Sessions picker, **THEN**
the mobile flow remains reachable and removes the selected session without relying on a desktop
tab X.
## Out of scope
- Removing or redesigning the delete confirmation dialog.
- Changing backend session-deletion semantics, active-session selection, or Dockview reconciliation.
- Replacing feedback for context-menu, mobile, stop, resume, or set-primary actions.