Metafield namespace/key only Case Sensitive in Liquid

Short description of issue

Metafields key case sensitive in liquid

Reproduction steps

A rather annoying bug is that when accessing metafields, the namespace and key are case sensitive, while in the graphql and admin ui it’s case insensitive.

Naturally, this is annoying as heck.

Even worse, you cannot use graphql to change a metafields casing, it will stay how it is, requiring deleting the metafield, and then setting it again.

This is the case even when the metafield has a definition. If you set it to a different casing using graphql, it will have that casing, making it inaccessible via the “correct” casing in liquid.

Additional info

This seems like a pretty clear bug.

Would probably make the most sense to just make all metafields lowercase in the system and allow everything to access them case insensitively.

What type of topic is this

Bug report