Hi everyone!
I having an inconsistency with app-owned metafields in customer account UI extensions and wanted to check if it’s a known issue.
I have an extension on customer-account.order-status.block.render (api_version = "2026-07") that reads a shop metafield declared like this:
[[extensions.metafields]]
namespace = "$app:my-namespace"
key = "my-key"
According to the docs, appMetafields should return app-owned metafields in the $app format. However, when I open the order status page through the dev preview (shopify app dev), the namespace comes back already resolved:
namespace: "app--{id}--{namespace}"
After deploying and adding the extension through the checkout and accounts editor, the same metafield is returned correctly as $app:my-namespace.
Because of this, filtering by $app:my-namespace (including with useAppMetafields) finds nothing in the dev preview, so the extension behaves differently in development and in production. A checkout UI extension in the same app, with the same metafield declaration, returns $app:my-namespace in both cases.
For now I’m accepting both formats as a workaround. Is this expected behavior in the dev preview, or a bug?
Thanks in advance!
P.S. AI was used only to assist with the English translation of this message.