github / github/app

Add bulk transient-data cleanup messaging to the session list

Open
#2,520 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
2.1k
Forks
153
PR merge metrics
No merged PRs in 30d

Description

## Problem

The Storage / Sessions list shows which sessions are consuming space, but cleanup still has to be requested one session at a time. When several sessions have accumulated transient data, reclaiming storage is unnecessarily repetitive.

## Proposed experience

Add multi-select support to the Storage / Sessions list and a bulk action that sends a cleanup message to every selected session.

Suggested flow:

1. Select multiple sessions.
2. Choose **Ask sessions to clean up transient data**.
3. Review or edit the message before sending.
4. Send the message to all selected sessions and show per-session delivery status.

The confirmation should make clear that each session performs its own cleanup rather than the list view deleting files directly.

## What “transient data” includes

Transient data means session-owned, safely regenerable artifacts that are not part of the user's intended work, for example:

- build outputs and generated artifacts
- dependency, compiler, test, and package-manager caches
- test results, coverage output, logs, traces, and crash dumps
- temporary downloads, extracted archives, scratch files, and stale lock/PID files
- stopped-process runtime data and other disposable files created by tools during the session

Cleanup must preserve tracked project files, uncommitted source changes, commits, user-authored artifacts, configuration, credentials, and anything whose ownership or disposability is uncertain.

## Sample prompt

> Inspect this session's workspace and storage usage, then clean up transient data that is safe to regenerate. This may include build output, generated artifacts, dependency/compiler/test caches, coverage and test results, logs, traces, crash dumps, temporary downloads, extracted archives, scratch files, stale lock/PID files, and runtime data from stopped processes. Preserve all tracked files, uncommitted source changes, commits, user-authored artifacts, configuration, credentials, and anything you cannot confidently identify as disposable. Do not use broad or destructive deletion commands. Report what you removed and how much space was reclaimed; if nothing can be safely removed, say so.

## Acceptance criteria

- Multiple sessions can be selected in the Storage / Sessions list.
- A bulk action opens an editable, prefilled cleanup message.
- Confirming sends the message to every selected session.
- The UI reports delivery success or failure for each session.
- A failure in one session does not prevent delivery to the others.
- The default prompt explicitly protects user work and discourages broad destructive deletion.

Contributor guide

Open the contributing guide

Research direction

Start at the desktop app's Storage / Sessions list and trace the existing single-session cleanup request flow. Add multi-selection, an editable cleanup message, per-session delivery results, and independent failure handling; done means all listed acceptance criteria pass without deleting files from the list view.

Written by the indexing model from the issue text.

Assessment

Domain
desktop
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.