Hey,
Perhaps I'm misreading the docs, but there doesn't appear to be a way to define a configuration property as "required" but without a default value i.e. if the property is not found in the configuration file, then validation will fail.
This would be especially useful when working with a team of developers. As it stands, a developer could delete a config property without understanding the impact; the application might appear to function, falling back to its default value as defined in the schema, but with consequences further down the line.
If this seems useful, I can try to create a pull request.