Yes, doing it in MySql makes sense. Subsequent code will load it, or if null/empty then use CREATION_SCRIPT_CONTENTS. So definitely good to avoid load-error earlier rather than after MySql has potentially created VM etc.

---
I wonder about a generic thing on `ConfigKey` that says what validation to do. It could be a (set of) predicates that must be true, which could be checked when setting the value and/or when starting the entity.

Hesitant to overload the ConfigKeys.newXyzConfigKey methods even more, but maybe that's the best thing long term.