there's no critical mass of config options that are guaranteed to exist
the documentation is spotty and inconsistent and in multiple places
I think the best thing to do here is to create a config module which imports the config, validates it (or dies), allows you to have configuration defaults and documentation to be in one place, and guarantees the rest of the codebase that certain config options exist.
This is probably a non-trivial project. The first step is probably to write validation code that scolds people when configuration values are not valid and requires certain configuration values to exist.
Configuration is crazy:
I think the best thing to do here is to create a config module which imports the config, validates it (or dies), allows you to have configuration defaults and documentation to be in one place, and guarantees the rest of the codebase that certain config options exist.
This is probably a non-trivial project. The first step is probably to write validation code that scolds people when configuration values are not valid and requires certain configuration values to exist.
Examples: