Skip to content

Add typed JSON output to theme check - #8642

Open
gonzaloriestra wants to merge 1 commit into
gonzalo/json-theme-previewfrom
gonzalo/json-theme-check
Open

gonzaloriestra wants to merge 1 commit into
gonzalo/json-theme-previewfrom
gonzalo/json-theme-check

Conversation

@gonzaloriestra

@gonzaloriestra gonzaloriestra commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

WHY are these changes introduced?

theme check --output json has an existing result shape but no discoverable schema or standard --json flag.

Related to shop/issues-develop#23691.

WHAT is this pull request doing?

Add typed check results and --json, preserving compact JSON, offense ordering, text output, auto-correction and failure exits. Keep the text adapter used by theme push.

Normal output for a clean theme:

Theme Check Summary.
1 files inspected with no offenses found.

Matching JSON:

[]

Multiple environments emit one ordered {environments: [{environment, result}]} document for both JSON flags. Failed environments remain on stderr and are omitted. --json is incompatible with --init, --version, --print, and --list; those modes keep their existing behavior without --json.

Refreshes generated help and the manifest.

How to manually test your changes?

shopify theme check --path ./theme
shopify theme check --path ./theme --json
shopify theme check --path ./theme --output json
shopify theme check --json-schema
shopify theme check --environment development --environment staging --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
  • A single changeset for all theme migrations is added in the last PR, #8682.

@gonzaloriestra
gonzaloriestra added this pull request to stack #8644 September 24, 2026 09:19
@github-actions github-actions Bot added the Area: @shopify/cli @shopify/cli package issues label Sep 24, 2026
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 60fc145 to 84774fa Compare September 24, 2026 10:04
@gonzaloriestra
gonzaloriestra removed this pull request from stack #8644 September 24, 2026 10:04
@gonzaloriestra
gonzaloriestra changed the base branch from gonzalo/json-theme-list to gonzalo/json-theme-preview September 24, 2026 10:05
@gonzaloriestra
gonzaloriestra added this pull request to stack #8655 September 24, 2026 10:05
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 84774fa to 143d3dc Compare September 24, 2026 10:11
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch 2 times, most recently from 1e151c5 to 0bd24e9 Compare September 24, 2026 10:21
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 0bd24e9 to b1a9aff Compare September 24, 2026 10:25
@github-actions github-actions Bot added no-changelog This PR doesn't include a changeset entry. Is an internal only change not relevant to end users. and removed Area: @shopify/cli @shopify/cli package issues labels Sep 24, 2026
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from b1a9aff to cd8b847 Compare September 24, 2026 11:56
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from cd8b847 to ec6f23d Compare September 24, 2026 13:46
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from ec6f23d to 861825a Compare September 24, 2026 14:21
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch 2 times, most recently from 6cae74e to c218adb Compare September 25, 2026 11:43
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch 2 times, most recently from fa74b25 to d93ff1e Compare September 25, 2026 12:27
@gonzaloriestra
gonzaloriestra removed this pull request from stack #8655 September 25, 2026 12:28
@gonzaloriestra
gonzaloriestra added this pull request to stack #8673 September 25, 2026 12:29
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from d93ff1e to 1d49ce8 Compare September 28, 2026 08:20
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 1d49ce8 to 3d5d370 Compare September 28, 2026 08:59
@gonzaloriestra
gonzaloriestra marked this pull request as ready for review September 28, 2026 09:35
@gonzaloriestra
gonzaloriestra requested review from a team as code owners September 28, 2026 09:35
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 3d5d370 to edcb032 Compare September 28, 2026 10:25
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from edcb032 to b23022c Compare September 28, 2026 11:39
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch 2 times, most recently from c8a95e6 to 78b9ac4 Compare September 29, 2026 10:28
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 78b9ac4 to 7b65981 Compare September 29, 2026 11:11
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 7b65981 to 0dbe925 Compare September 29, 2026 11:38
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 0dbe925 to 8a82337 Compare September 29, 2026 13:44
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 8a82337 to 04343fc Compare September 29, 2026 14:18
@gonzaloriestra
gonzaloriestra force-pushed the gonzalo/json-theme-check branch from 04343fc to c6e17b3 Compare September 29, 2026 14:40
@github-actions

Copy link
Copy Markdown
Contributor

Differences in type declarations

We detected differences in the type declarations generated by Typescript for this branch compared to the baseline ('main' branch). Please, review them to ensure they are backward-compatible. Here are some important things to keep in mind:

  • Some seemingly private modules might be re-exported through public modules.
  • If the branch is behind main you might see odd diffs, rebase main into this branch.

New type declarations

We found no new type declarations in this PR

Existing type declarations

packages/cli-kit/dist/public/node/base-command.d.ts
@@ -35,6 +35,7 @@ declare abstract class BaseCommand extends Command {
         argv: string[];
     }>;
     protected environmentsFilename(): string | undefined;
+    protected validateNonTTYFlags(flags: FlagOutput): void;
     protected failMissingNonTTYFlags(flags: FlagOutput, requiredFlags: string[]): void;
     private failMissingNonTTYFlagRequirements;
     private applicableNonTTYFlagRequirements;

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. shopify.dev preview

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant