ci: auto-submit releases again, without the silent data loss - #379
Merged
Conversation
Restores automatic "send for review" so cutting a tag is the only manual step, but keeps the failure that motivated turning it off from costing a release. Google refuses to auto-submit while the app has an unresolved review, and a failed commit discards the edit including the upload. Rather than choosing between automatic-but-lossy and reliable-but-manual, the upload now retries with changesNotSentForReview when the auto-submit is refused, so the bundle still lands and only the review click is deferred. Also replaces the old "assign to track" fallback, which was written for a state that cannot occur (a discarded commit leaves no bundle to assign, so it always 404'd), with a verification step that asks Play what is really on the track and fails when the answer is nothing. Co-Authored-By: Claude Opus 5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Restores automatic Send for review so that cutting a tag on GitHub is the only manual step of a release — nightlies included — without reinstating the failure that made us turn it off.
The bind
Auto-submit (
changesNotSentForReview: false) is what we want, but Google refuses it while the app has an unresolved review or policy issue. The refusal fails the commit, and a failed commit discards the entire edit — upload included. That is how v1.11.1 disappeared: the job loggedSuccessfully uploaded 1 artifacts, went green on the upload step, and left nothing in Play Console.Turning auto-submit off (#376) fixed the loss but made every release need a manual click, forever, to guard against a state that is rare.
Instead of choosing
changesNotSentForReview: true. The bundle lands on the track and waits for Publishing overview → Send for review. Degrading to one click beats losing the release.Step 3 matters independently: a green upload step was never proof the bundle persisted, and that is precisely what misled us for eight days.
The job summary states which path ran, so "do I need to click anything?" is answerable without reading logs.
Also removed
The old
Assign to track (if bundle already uploaded)fallback. It was written for a state that cannot occur — a discarded commit leaves no bundle to assign — so its only observed behaviour was a confusing404 The following APK version codes could not be found. The verification step replaces it.Applies from the next tag
Nothing changes for v1.11.2, which is already uploaded and submitted. Safe to merge now regardless of where that review stands: if a release were cut while an issue is still open, step 1 fails, step 2 lands the bundle, and the summary says so — which is exactly the intended behaviour rather than a regression.
🤖 Generated with Claude Code