[PR #740] [MERGED] Cancel stale review submissions before creating new one #752

Closed
opened 2026-02-26 22:32:24 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/740
Author: @omar16100
Created: 2/23/2026
Status: Merged
Merged: 2/23/2026
Merged by: @rudrankriyam

Base: mainHead: feedback/stale-submission-cleanup


📝 Commits (4)

  • 6188506 feat(submit): cancel stale READY_FOR_REVIEW submissions before creating new one
  • b6d5dc4 fix(submit): harden stale review cleanup safeguards
  • 327d1cc test(submit): cover stale cancel warning path
  • c1a50d2 Merge remote-tracking branch 'origin/main' into pr-740-stale-submission-cleanup

📊 Changes

2 files changed (+478 additions, -0 deletions)

View changed files

internal/cli/cmdtest/submit_create_test.go (+441 -0)
📝 internal/cli/submit/submit.go (+37 -0)

📄 Description

Summary

  • Before CreateReviewSubmission() in submit create, checks for existing READY_FOR_REVIEW submissions and cancels them (best-effort)
  • Prevents orphaned submissions from accumulating when previous submit create attempts failed mid-flow (e.g., after creating the submission but before submitting it)
  • Only cancels READY_FOR_REVIEW state, filtered by platform — never touches WAITING_FOR_REVIEW, IN_REVIEW, etc.
  • Failures to cancel are logged as warnings to stderr but don't block the new submission

Files changed

  • internal/cli/submit/submit.go — adds cancelStaleReviewSubmissions() helper (~24 lines)
  • internal/cli/cmdtest/submit_create_test.go — 2 tests with HTTP mocks verifying request ordering

Test plan

  • TestSubmitCreateCancelsStaleSubmissions — verifies cancel PATCH precedes new create, asserts request ordering
  • TestSubmitCreateNoStaleSubmissions — verifies no cancel messages when no stale submissions exist
  • ASC_BYPASS_KEYCHAIN=1 make test — all tests pass

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/rudrankriyam/App-Store-Connect-CLI/pull/740 **Author:** [@omar16100](https://github.com/omar16100) **Created:** 2/23/2026 **Status:** ✅ Merged **Merged:** 2/23/2026 **Merged by:** [@rudrankriyam](https://github.com/rudrankriyam) **Base:** `main` ← **Head:** `feedback/stale-submission-cleanup` --- ### 📝 Commits (4) - [`6188506`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/6188506148dbabd1ec3d6ee043ab448553bfff8c) feat(submit): cancel stale READY_FOR_REVIEW submissions before creating new one - [`b6d5dc4`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/b6d5dc4e3c6d224c0d20322d2389a4be6b667fe4) fix(submit): harden stale review cleanup safeguards - [`327d1cc`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/327d1cc5890e2e4885fcb49e43a33d68f1be0223) test(submit): cover stale cancel warning path - [`c1a50d2`](https://github.com/rudrankriyam/App-Store-Connect-CLI/commit/c1a50d23573f041b3772f29a32f019f7cd254738) Merge remote-tracking branch 'origin/main' into pr-740-stale-submission-cleanup ### 📊 Changes **2 files changed** (+478 additions, -0 deletions) <details> <summary>View changed files</summary> ➕ `internal/cli/cmdtest/submit_create_test.go` (+441 -0) 📝 `internal/cli/submit/submit.go` (+37 -0) </details> ### 📄 Description ## Summary - Before `CreateReviewSubmission()` in `submit create`, checks for existing `READY_FOR_REVIEW` submissions and cancels them (best-effort) - Prevents orphaned submissions from accumulating when previous `submit create` attempts failed mid-flow (e.g., after creating the submission but before submitting it) - Only cancels `READY_FOR_REVIEW` state, filtered by platform — never touches `WAITING_FOR_REVIEW`, `IN_REVIEW`, etc. - Failures to cancel are logged as warnings to stderr but don't block the new submission ## Files changed - `internal/cli/submit/submit.go` — adds `cancelStaleReviewSubmissions()` helper (~24 lines) - `internal/cli/cmdtest/submit_create_test.go` — 2 tests with HTTP mocks verifying request ordering ## Test plan - [x] `TestSubmitCreateCancelsStaleSubmissions` — verifies cancel PATCH precedes new create, asserts request ordering - [x] `TestSubmitCreateNoStaleSubmissions` — verifies no cancel messages when no stale submissions exist - [x] `ASC_BYPASS_KEYCHAIN=1 make test` — all tests pass --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-26 22:32:24 +03:00
Sign in to join this conversation.
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
starred/App-Store-Connect-CLI#752
No description provided.