I realized why I was nervous about this and why it's in fact okay: I don't like when configuration defaults are embedded in the app itself, because you have to chose either dev or production values for the defaults, and that introduces the risk of a context leak (dev values in production and vice versa). Here though the app itself still requires all configuration from the environment (no defaults embedded in the app layer); we still have to specify the entire environment explicitly in production. Which is good.