Skip to content

Add typed JSON output to app dev clean - #8818

Merged
isaacroldan merged 5 commits into
mainfrom
codex/json-app-dev-clean
Oct 8, 2026
Merged

isaacroldan merged 5 commits into
mainfrom
codex/json-app-dev-clean

Conversation

@isaacroldan

@isaacroldan isaacroldan commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

WHY are these changes introduced?

Let scripts read the dev-preview cleanup outcome. Related to #23668.

WHAT is this pull request doing?

Add --json with app identity and the canonical store domain, or null for local/unknown domains. Reject missing deletion data before reporting success.

Text: Dev preview stopped.
JSON: {"status":"success","app":{"name":"Example","clientId":"client-id"},"storeDomain":"example.myshopify.com"}.

Interactive JSON prompts need #8812. Successful postrun output is tracked in the shared issue note.

How to manually test your changes?

Use a linked test app and a development store.

  1. Run shopify app dev clean --store <store>.myshopify.com --json --no-input > result.json. Check one success object with the correct app and store.
  2. Repeat without --json; check the existing success banner. Use an inaccessible store with --json; expect one error object and a nonzero exit.
  3. Run shopify app dev clean --json-schema to inspect the contract.

Checklist

  • I've considered possible cross-platform impacts
  • I've considered documentation changes
  • I've considered analytics changes
  • Added the required changeset

@github-actions github-actions Bot added shopify.dev preview Area: @shopify/cli @shopify/cli package issues labels Oct 7, 2026
@isaacroldan

Copy link
Copy Markdown
Contributor Author

/snapit

@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

🫰✨ Thanks @isaacroldan! Your snapshot has been published to npm.

Built from 2904ec00a2e6f732efdeeb9ea22a55a0867937d5. Workflow run.

Test the snapshot by installing your package globally:

pnpm i -g --@shopify:registry=https://registry.npmjs.org @shopify/cli@0.0.0-snapshot-20261007120943

Caution

After installing, validate the version by running shopify version in your terminal.
If the versions don't match, you might have multiple global instances installed.
Use which shopify to find out which one you are running and uninstall it.

@isaacroldan
isaacroldan force-pushed the codex/json-app-dev-clean branch from 2c38b82 to c02e6c7 Compare October 7, 2026 13:33
@isaacroldan

Copy link
Copy Markdown
Contributor Author

/snapit

@isaacroldan
isaacroldan marked this pull request as ready for review October 7, 2026 13:40
@isaacroldan
isaacroldan requested review from a team as code owners October 7, 2026 13:40
@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

🫰✨ Thanks @isaacroldan! Your snapshot has been published to npm.

Built from c02e6c71d57c0142d2df390b65aa16c0be4a7c01. Workflow run.

Test the snapshot by installing your package globally:

pnpm i -g --@shopify:registry=https://registry.npmjs.org @shopify/cli@0.0.0-snapshot-20261007133854

Caution

After installing, validate the version by running shopify version in your terminal.
If the versions don't match, you might have multiple global instances installed.
Use which shopify to find out which one you are running and uninstall it.

@isaacroldan

Copy link
Copy Markdown
Contributor Author

/snapit

@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

🫰✨ Thanks @isaacroldan! Your snapshot has been published to npm.

Built from 7afd19d33e16075a62d7e646f2e4a99a2825d6c9. Workflow run.

Test the snapshot by installing your package globally:

pnpm i -g --@shopify:registry=https://registry.npmjs.org @shopify/cli@0.0.0-snapshot-20261007140356

Caution

After installing, validate the version by running shopify version in your terminal.
If the versions don't match, you might have multiple global instances installed.
Use which shopify to find out which one you are running and uninstall it.

app: appSchema,
storeDomain: zod
.string()
.regex(/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.myshopify\.com$/)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note for future consistency work: we have store domain consistency rules, but I wonder if it's worth making them re-usable in the code rather than re-implementing in each schema?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

to be honest, i don't think we need a regex for this? it can be a generic zod.string() 🤔
I'll update it.

@isaacroldan
isaacroldan added this pull request to the merge queue Oct 8, 2026
Merged via the queue into main with commit 1acb324 Oct 8, 2026
29 of 31 checks passed
@isaacroldan
isaacroldan deleted the codex/json-app-dev-clean branch October 8, 2026 15:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants