fix(mobile): auto-bump iOS version when App Store train is closed

The iOS release lane auto-increments the TestFlight build number but never
the marketing version. Once a version is submitted/approved/released its
train closes, so any further build upload is rejected by Apple (~20 min in)
with altool 90186 / 90062 — with no signal until then and no guard beyond a
manual 'bump patch' checkbox the dispatcher had to remember to tick.

prepare_release_version now checks the App Store version state via
Spaceship::ConnectAPI before building. If the resolved version's train is
closed it auto-bumps the patch (advancing past any further closed versions),
preserving normal multi-build beta iteration on an open version. An explicit
release_version override that's already closed fails fast with a clear
message instead of being silently overridden.

Co-authored-by: Orca <help@stably.ai>
This commit is contained in:
brennanb2025
2026-06-28 11:11:18 -07:00
co-authored by Orca
parent 6b1a4497db
commit 603a86fd40
2 changed files with 53 additions and 1 deletions
+1 -1
View File
@@ -10,7 +10,7 @@ on:
workflow_dispatch:
inputs:
bump_patch_version:
description: 'Bump the iOS marketing version patch number before release'
description: 'Force a marketing version patch bump. Usually unnecessary: a released version auto-bumps. Use this to start a new version while the current one is still open (beta iteration).'
required: false
default: false
type: boolean