As far as case sensitivity goes, the AppStream docs say:
Additionally, even though uppercase letters are permitted in a component-ID, it is strongly encouraged to only use lowercase letters for the ID.
Going by the appstream reference implementation, it is indeed case folding before doing a search:
Annoyingly, they’re doing locale dependent case folding. That would be difficult to fit into the existing store API, and hard to speed up with indexes. However, ASCII case folding would probably cover most of the cases people care about.
There is the issue that common-id
is not specifically an AppStream ID. But it was originally added to expose an AppStream ID (e.g. this and this). I don’t think it has ever been used for any other purpose. So if ASCII case folding would help with the AppStream case, I think it seems like a good idea.