Delete merged source branches safely from mobile release receipts #1364

Closed
opened 2026-08-24 20:11:58 +00:00 by timmy · 0 comments
Owner

Problem

Mobile authors can create, update, review, merge, and track a pull request, but cannot safely clean up its merged source branch without leaving the dashboard. The merge flow currently closes the pull sheet and stores only repository, pull number, and merge commit in the release receipt.

Slice

After a successful merge of an authored same-repository pull request, preserve the source branch and merged head SHA in the release receipt and offer a confirmed Delete source branch action. The server must freshly verify authorship, merged state, same-repository ownership, exact branch SHA, and that the branch is neither default nor protected before deletion. An advanced branch must return 409 and remain intact.

Acceptance criteria

  • Merge response/receipt carries exact source branch and head SHA.
  • Only the authenticated author can delete a merged same-repository source branch.
  • Default, protected, fork, open/unmerged, and advanced branches are never deleted.
  • A lost delete response is resolved by rereading the branch; absence is idempotent success.
  • Mobile receipt keeps release tracking independent, has a touch-safe confirmed cleanup action, and reports retained/advanced branches truthfully.
  • Behavioral API, receipt, service-worker, and mobile journey tests pass.

Non-duplication evidence

All 685 historical issue titles and the latest 100 commits were checked. Existing branch work covers create (#1362) and update (#1360), while merge/release receipt work does not delete branches. No open issue or current commit implements source-branch cleanup.

## Problem Mobile authors can create, update, review, merge, and track a pull request, but cannot safely clean up its merged source branch without leaving the dashboard. The merge flow currently closes the pull sheet and stores only repository, pull number, and merge commit in the release receipt. ## Slice After a successful merge of an authored same-repository pull request, preserve the source branch and merged head SHA in the release receipt and offer a confirmed **Delete source branch** action. The server must freshly verify authorship, merged state, same-repository ownership, exact branch SHA, and that the branch is neither default nor protected before deletion. An advanced branch must return 409 and remain intact. ## Acceptance criteria - Merge response/receipt carries exact source branch and head SHA. - Only the authenticated author can delete a merged same-repository source branch. - Default, protected, fork, open/unmerged, and advanced branches are never deleted. - A lost delete response is resolved by rereading the branch; absence is idempotent success. - Mobile receipt keeps release tracking independent, has a touch-safe confirmed cleanup action, and reports retained/advanced branches truthfully. - Behavioral API, receipt, service-worker, and mobile journey tests pass. ## Non-duplication evidence All 685 historical issue titles and the latest 100 commits were checked. Existing branch work covers create (#1362) and update (#1360), while merge/release receipt work does not delete branches. No open issue or current commit implements source-branch cleanup.
timmy self-assigned this 2026-08-24 20:11:58 +00:00
timmy closed this issue 2026-08-24 20:54:33 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
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: stackchain/stackchain-dashboard#1364
No description provided.