Is it possible to deploy a custom metadata type in a managed package with on record that users can edit without the permissions to create any more?
1 Answer
It's not currently possible to do this, although it's on our radar.
The workaround is to filter your queries by NamespacePrefix, so that custom metadata records created outside your namespace don't have an effect on your app.
E.g., instead of
MyType__mdt myRecord = [select DeveloperName, CustomField__c from MyType__mdt];
use
MyType__mdt myRecord = [select DeveloperName, CustomField__c from MyType__mdt where NamespacePrefix='my_namespace'];