Skip to content

Add typed JSON output to app import dashboard-extensions - #8819

Open
isaacroldan wants to merge 6 commits into
mainfrom
codex/json-app-dashboard-extensions
Open

isaacroldan wants to merge 6 commits into
mainfrom
codex/json-app-dashboard-extensions

Conversation

@isaacroldan

@isaacroldan isaacroldan commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

WHY are these changes introduced?

Give scripts a typed dashboard-extension import result. Related to #23958.

WHAT is this pull request doing?

Add --json with absolute artifact paths and skipped, cancelled, or partial outcomes. Wait for started imports before final JSON, keep completed work when another import fails, and preserve text and identifier writes. Picker Cancel retains exit 1; a sibling failure produces partial.

Text: Imported the following extensions from the dashboard: • "Example action" at: extensions/example-action.
JSON: {"status":"success","reason":null,"extensions":[{"id":"e7282f2d-3017-4608-a9a4-54dd5a7a70aa","name":"Example action","type":"flow_action_definition","directory":"/tmp/app/extensions/example-action","configurationPath":"/tmp/app/extensions/example-action/shopify.extension.toml","changed":true}],"errors":[],"identifiersUpdated":true}.

How to manually test your changes?

Use a linked test app with a dashboard-managed Flow extension. Use a fresh copy for each check so saved UUIDs do not exclude the extension.

  1. Run shopify app import dashboard-extensions --path <app> --json > imports.json and select the extension. Check one success result, its absolute TOML path, and the UUID in .env.
  2. In two fresh copies, create the extension directory and a local TOML first. Choose Keep local TOML in one and Cancel in the other. Keep preserves the file bytes and reports changed: false; Cancel returns one cancelled result and exit 1.
  3. Run without --json in another copy to compare text. Run shopify app import dashboard-extensions --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 Area: @shopify/cli @shopify/cli package issues shopify.dev preview 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 dc72f10a130de832373d043d4a77c014303bdb1b. 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-20261007120950

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-dashboard-extensions branch from edc35b3 to 396595c Compare October 7, 2026 13:33
@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 396595cd5300bfa0ad3661add397d3a2bca8fdce. 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-20261007133911

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 d2387c94442e9305af5a1356f176a8b6b31b7a20. 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-20261007140409

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-dashboard-extensions branch from d2387c9 to ccf8f51 Compare October 8, 2026 16:01
@isaacroldan
isaacroldan marked this pull request as ready for review October 8, 2026 16:03
@isaacroldan
isaacroldan requested review from a team as code owners October 8, 2026 16:03
@isaacroldan

Copy link
Copy Markdown
Contributor Author

/snapit

@github-actions

github-actions Bot commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

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

Built from ccf8f51fffc5bdb86c5115f0da616215f6729a23. 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-20261009084827

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.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant