Isolate each review execution in a unique temporary workspace #1

Open
opened 2026-10-21 18:20:28 +00:00 by thesimplekid · 0 comments
Owner

Concurrent local reviews of the same PR can delete each other's checkout. The scheduler distinguishes commit and persona, but src/workspace.rs uses only repository and PR number and removes an existing directory before preparation.

Use a unique temporary directory per execution and ensure cleanup owns only that directory, including preparation failures. Preserve configured TMPDIR and explicit base-directory behavior.

Validation: prepare overlapping workspaces for the same PR, preserve a sentinel in each, and verify cleanup of one leaves the other intact. Cover failure cleanup and an existing directory with the legacy name.

Concurrent local reviews of the same PR can delete each other's checkout. The scheduler distinguishes commit and persona, but src/workspace.rs uses only repository and PR number and removes an existing directory before preparation. Use a unique temporary directory per execution and ensure cleanup owns only that directory, including preparation failures. Preserve configured TMPDIR and explicit base-directory behavior. Validation: prepare overlapping workspaces for the same PR, preserve a sentinel in each, and verify cleanup of one leaves the other intact. Cover failure cleanup and an existing directory with the legacy name.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
thesimplekid/fiach#1
No description provided.