Theme check is reporting a missing block for a valid app block

I have reproduced the issue on the latest CLI version.

Yes, I am on the latest version

I have searched existing posts and this report is not a duplicate.

Yes, this isn’t a duplicate

In which of these areas are you experiencing a problem?

Theme

Expected behavior

The theme check report should not report a missing block for a valid app block.

Actual behavior

The theme check report returns an issue saying “JSONMissingBlock” and “Theme block ‘blocks/shopify://apps/app-name/blocks/block-type/block-id.liquid’ does not exist” (unique info replaced for brevity).

It seems to just take the app block ID and add “.liquid” to it, therefore reporting that the Liquid block doesn’t exist.

Reproduction steps

run shopify theme check with an app block in a template

Verbose output

2026-07-07T16:48:09.498Z: Running command theme check
2026-07-07T16:48:09.501Z: Running system process in background:
  · Command: /Users/adamchipperfield/.nvm/versions/node/v22.13.1/bin/node /Users/adamchipperfield/.nvm/versions/node/v18.20.2/bin/shopify notifications list --ignore-errors
  · Working directory: /Users/adamchipperfield/Documents/directory

2026-07-07T16:48:09.508Z: Notifications to show: 0
2026-07-07T16:48:13.785Z: Sync-reading the content of file at snippets/social-links.liquid...
╭─ info ───────────────────────────────────────────────────────────────────────╮
│                                                                              │
│  snippets/social-links.liquid                                                │
│                                                                              │
│                                                                              │
│  [warning]: OrphanedSnippet                                                  │
│  This snippet is not referenced by any other files                           │
│                                                                              │
│  1  {% doc %}                                                                │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯

2026-07-07T16:48:13.835Z: Sync-reading the content of file at templates/product.json...
2026-07-07T16:48:13.839Z: Sync-reading the content of file at templates/product.json...
╭─ info ───────────────────────────────────────────────────────────────────────╮
│                                                                              │
│  templates/product.json                                                      │
│                                                                              │
│                                                                              │
│  [error]: JSONMissingBlock                                                   │
│  Theme block 'blocks/shopify://apps/downpay/blocks/downpay-form/da700d84-7e  │
│  d1-410a-a8b5-5cb99a33758a.liquid' does not exist.                           │
│                                                                              │
│  48  "type": "shopify://apps/downpay/blocks/downpay-form/da700d84-7ed1-410a  │
│  -a8b5-5cb99a33758a",                                                        │
│                                                                              │
│                                                                              │
│  [error]: JSONMissingBlock                                                   │
│  Theme block 'blocks/shopify://apps/zing-cover-modular-insurance/blocks/Zin  │
│  g-Checkbox/b72f8333-269e-4f52-9133-5721166317a9.liquid' does not exist.     │
│                                                                              │
│  73  "type": "shopify://apps/zing-cover-modular-insurance/blocks/Zing-Check  │
│  box/b72f8333-269e-4f52-9133-5721166317a9",                                  │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯

╭─ info ───────────────────────────────────────────────────────────────────────╮
│                                                                              │
│  Theme Check Summary.                                                        │
│                                                                              │
│  130 files inspected with 3 total offenses found across 2 files.             │
│  2 errors.                                                                   │
│  1 warnings.                                                                 │
│                                                                              │
╰──────────────────────────────────────────────────────────────────────────────╯

Operating system

macOS Tahoe 26.3

CLI version

4.4.0

Nodejs version

22.13.1

Hey @adamchipperfield - thanks for flagging this, and for including the verbose output there

This matches a known issue that’s been reported here:

For now, if this is blocking CI, the safest temporary workaround would be to ignore JSONMissingBlock only for the affected JSON template rather than disabling the check globally:

JSONMissingBlock:
  ignore:
    - templates/product.json

Once the fix lands in Theme Check / Shopify CLI, that workaround shouldn’t be needed anymore. Just confirming as well: the containing section or wrapper schema should still include @app in its blocks array for these app block references to be valid. I can’t confirm a turnaround time on any potential fixes, but let me know if you’re still encountering the issue after trying the fix and I can see if we can get this looked at a bit more quickly.

Let me know if I can clarify anything on our end here.