apple: macOS (tvOS, visionOS) versions are no longer invisible: every version and review submission lookup is per platform; status, listing, listing pull, resubmit, submit, release and screenshots take --platform and otherwise pick the platform that has the version they need (refuse naming both when several do); status, validate, release status, the report and the desktop label versions with their platform; MCP and owner actions get platform; pitfall 77
This commit is contained in:
parent
1736300784
commit
47dfd372fe
30 changed files with 423 additions and 127 deletions
|
|
@ -30,6 +30,7 @@ presses release; you prepare, dry-run and report. `storebound mcp` deliberately
|
|||
`storebound apple listing --version 1.3.0 --build <that number>`. Never pick "the latest build": a CI or a
|
||||
teammate may have uploaded another one meanwhile.
|
||||
2. `storebound apple release --phased on --dry`, then without `--dry` (works while the version is being prepared).
|
||||
With versions on more than one App Store platform add `--platform ios|macos|tvos|visionos` (pitfall 77).
|
||||
3. Submit (owner, UI). Wait: `storebound apple status --wait-review` (polls with backoff, exit 0 approved, 1 rejected,
|
||||
7 timeout; `--timeout 72h`). Rejected: `review-rejections` skill.
|
||||
4. Approved = PENDING_DEVELOPER_RELEASE. Owner releases: `storebound apple release --manual-release` (asks to confirm)
|
||||
|
|
|
|||
|
|
@ -54,6 +54,8 @@ in-app purchases). Resubmit that same submission; never create a second one next
|
|||
2. `storebound apple status`: the submission with UNRESOLVED_ISSUES, its items and their states.
|
||||
3. `storebound apple resubmit --build <n>` (dry run without `--yes`): the plan table shows the build to attach, the
|
||||
submission reused, every item in it already or added, which REJECTED items are marked resolved, and the submit.
|
||||
An app with a macOS (tvOS, visionOS) version too: it picks the platform whose version was rejected, and asks for
|
||||
`--platform ios|macos|...` when both were (pitfall 77).
|
||||
4. The owner's yes, then `storebound apple resubmit --build <n> --yes`: build n is attached by its number, missing
|
||||
items go in, the REJECTED version item is marked resolved (`PATCH reviewSubmissionItems/{id}` `resolved: true`),
|
||||
then it submits. Apple answers every submit with "Version is not ready to be submitted yet" (and the console's
|
||||
|
|
|
|||
|
|
@ -938,3 +938,18 @@ that fails without the fix (see CONTRIBUTING.md).
|
|||
- **Guard:** `cli/apple/creative-assets.ts` (`classify`, `pickAsset`, `processingTiming`), `tests/creative-assets.test.ts`
|
||||
(fake App Store Connect: upload and select in one run, still processing, rejected / archived files, add-for-review
|
||||
without submitting, verify read-only, a refused live placement); the fake commits library assets to PREPARE_FOR_SUBMISSION, as Apple does.
|
||||
|
||||
## 77. A macOS (tvOS, visionOS) version was invisible next to the iOS one
|
||||
- **Symptom:** `apple resubmit` said "nothing to resubmit" while a macOS version was REJECTED with an
|
||||
UNRESOLVED_ISSUES submission; `apple listing --version 0.8.7` refused because the iOS 0.8.7 was live, although the
|
||||
macOS 0.8.7 was the rejected one to fix; `apple status` listed versions without saying which platform.
|
||||
- **Cause:** one app record can have a version per platform, each with its own state and its own review submission
|
||||
(`reviewSubmissions` carry a `platform`). Lookups filtered on `IOS` only, or did not filter at all and mixed them.
|
||||
- **Do:** every version and review submission lookup filters by platform (`filter[platform]`). Commands that need one
|
||||
version (status --wait-review, listing, listing pull, resubmit, submit, release, screenshots) take
|
||||
`--platform ios|macos|tvos|visionos`; without it they use the platform that has the version they need, and refuse
|
||||
naming both when several do. Status, validate, release status, the report and the desktop show the platform next to
|
||||
every version; validate and release status warn about another platform's editable or rejected version.
|
||||
- **Guard:** `cli/apple/platform.ts` (`pickPlatform`, `parsePlatform`), `tests/apple-platforms.test.ts` (fake App Store
|
||||
Connect: iOS 0.8.7 live, macOS 0.8.7 rejected in UNRESOLVED_ISSUES).
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue