asc-check-readiness

Run pre-flight submission checks for an App Store version using the `asc` CLI tool. Use this skill when: (1) Checking if a version is ready to submit to App Store review (2) Diagnosing why a version cannot be submitted (missing build, no pricing, wrong state) (3) Running a CI/CD gate before calling `asc versions submit` (4) User asks "is my version ready?", "check readiness", "why can't I submit?", "run pre-flight checks", "check submission requirements", or any submission-readiness task (5) Building an automated pipeline that conditionally submits based on readiness

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "asc-check-readiness" with this command: npx skills add tddworks/asc-cli-skills/tddworks-asc-cli-skills-asc-check-readiness

asc versions check-readiness

Pre-flight check that aggregates all App Store submission requirements for a version.

Command

asc versions check-readiness --version-id <VERSION_ID> [--pretty]

Runs 6 API checks and returns a VersionReadiness report.

Reading the Output

Top-level decision field

"isReadyToSubmit": true  → safe to submit; affordances.submit is present
"isReadyToSubmit": false → one or more MUST FIX checks failed

Check severity

FieldSeverityBlocks isReadyToSubmit?
stateCheckMUST FIXYes — state must be PREPARE_FOR_SUBMISSION
buildCheckMUST FIXYes — build must be linked, valid, not expired
pricingCheckMUST FIXYes — app must have a price schedule configured
reviewContactCheckSHOULD FIXNo — warning only, submission still proceeds
localizations[].passSHOULD FIXNo — Apple may reject post-submit

Build check fields

"buildCheck": {
  "linked": true,
  "valid": true,
  "notExpired": true,
  "buildVersion": "2.1.0 (102)",
  "pass": true
}

pass = linked && valid && notExpired

CAEOAS — Use Affordances

When isReadyToSubmit == true, the response includes affordances.submit:

"affordances": {
  "checkReadiness": "asc versions check-readiness --version-id v-123",
  "listLocalizations": "asc version-localizations list --version-id v-123",
  "submit": "asc versions submit --version-id v-123"
}

Always copy affordances.submit directly — never construct the submit command manually. When isReadyToSubmit == false, affordances.submit is absent.

Typical Workflow

# 1. Find the version in PREPARE_FOR_SUBMISSION
asc versions list --app-id <APP_ID> --output table

# 2. Check readiness (use checkReadiness affordance from step 1 output)
asc versions check-readiness --version-id <VERSION_ID> --pretty

# 3a. Ready → submit using affordances.submit value
asc versions submit --version-id <VERSION_ID>

# 3b. Not ready → diagnose and fix (see Fix Guide below)

Fix Guide

Failing checkHow to fix
stateCheck failsVersion is already live or in review — create a new version with asc versions create
buildCheck.linked == falseLink a build: asc versions set-build --version-id <id> --build-id <id>
buildCheck.valid == falseBuild is still processing — wait and re-check, or upload a new build
buildCheck.notExpired == falseBuild expired — upload a new build with asc builds upload
pricingCheck failsSet up pricing in App Store Connect web UI (no asc command for pricing)
reviewContactCheck failsasc version-review-detail update --version-id <id> --contact-email dev@example.com --contact-phone "+1-555-0100"

CI Gate Script

#!/bin/bash
set -e
RESULT=$(asc versions check-readiness --version-id "$VERSION_ID")
IS_READY=$(echo "$RESULT" | jq -r '.data[0].isReadyToSubmit')

if [ "$IS_READY" = "true" ]; then
  eval "$(echo "$RESULT" | jq -r '.data[0].affordances.submit')"
else
  echo "NOT ready. Failing checks:"
  echo "$RESULT" | jq '.data[0] | {stateCheck, buildCheck, pricingCheck}'
  exit 1
fi

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

asc-app-shots

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

asc-beta-review

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

asc-reports

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

asc-performance

No summary provided by upstream source.

Repository SourceNeeds Review