Skip to content

Add JSON Schema for subscription migration scheduling - #8587

Open
gonzaloriestra wants to merge 1 commit into
gonzalo/json-subscription-migrations-listfrom
gonzalo/json-subscription-migrations-schedule
Open

gonzaloriestra wants to merge 1 commit into
gonzalo/json-subscription-migrations-listfrom
gonzalo/json-subscription-migrations-schedule

Conversation

@gonzaloriestra

@gonzaloriestra gonzaloriestra commented Sep 18, 2026 •

Copy link
Copy Markdown
Contributor

WHY are these changes introduced?

Make the existing scheduling JSON contract discoverable and validated.

Related to shop/issues-develop#23886. Stacked on #8586.

WHAT is this pull request doing?

Add a shared submission schema using the operation and error schemas from #8541, and infer submission types from it. Connect the shared schedule/unschedule encoder while preserving accepted operations, failure details, watch output, and exit codes. Expose the contract on schedule; unschedule follows later in this stack.

The JSON contract follows CLI versioning and has no separate schemaVersion field.

Example output

shopify app subscription-migrations schedule --input migrations.csv --force

Text output (banner borders omitted):

Subscription migrations scheduled.

Shops: 1
Operation IDs:
operation-one
Save every operation ID. You will need them to check or cancel this submission.

With --json:

{
  "clientId": "client-id",
  "action": "schedule",
  "inputDigest": "input-digest",
  "total": 1,
  "operations": [
    {
      "batchIndex": 0,
      "batchPayloadDigest": "batch-digest",
      "operation": {
        "id": "operation-one",
        "status": "RUNNING",
        "total": 1,
        "results": {
          "edges": []
        }
      }
    }
  ]
}

How to manually test your changes?

shopify app subscription-migrations schedule --help
shopify app subscription-migrations schedule --json-schema
shopify app subscription-migrations schedule --input migrations.csv --force --json
shopify app subscription-migrations schedule --input migrations.csv --force --watch --json

Checklist

  • I've considered possible cross-platform impacts (Mac, Linux, Windows)
  • I've considered possible documentation changes
  • I've considered analytics changes to measure impact

@github-actions github-actions Bot added the no-changelog This PR doesn't include a changeset entry. Is an internal only change not relevant to end users. label Sep 18, 2026
@gonzaloriestra
gonzaloriestra added this pull request to stack #8590 September 18, 2026 12:23
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-subscription-migrations-schedule branch from 8b7438e to f733c40 Compare September 21, 2026 12:17
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-subscription-migrations-schedule branch 3 times, most recently from 2fb86a1 to c1274ae Compare September 24, 2026 10:32
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-subscription-migrations-schedule branch from c1274ae to 76ac9ea Compare September 24, 2026 10:41
@gonzaloriestra
gonzaloriestra marked this pull request as ready for review September 24, 2026 10:46
@gonzaloriestra
gonzaloriestra requested review from a team as code owners September 24, 2026 10:46

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-changelog This PR doesn't include a changeset entry. Is an internal only change not relevant to end users.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant