If the user submits a config file that requests a given analysis via "user_needs" but the parameter value block for that analysis is missing, default values are not used. This probably occurs because a missing parameter block is accessed, leading to an error thrown.
A solution would be to check for existence of the parameter block first, and if it is missing throw a more meaningful error. We want these blocks to always be there even if they are empty.