Description
Bug Description
Per Slack discussion with @mdietze: PEcAn's intended sampling model is that ensembles are created at the PEcAn level and then the configurations are passed, one at a time, for write.configs. to set up a model invocation parameterized to match the configuration it was given.
The current implementation does not do this for initial conditions. Instead the entire set of IC files is passed on to the model config function, where each model has to handle it themself. For example write.configs.SIPNET just picks one at random.
in Slack, @mdietze recommended "if the whole ensemble of poolinitcond paths is being passed to write configs then write configs should be updated to stop with an error and we should fix that before continuing"
As I write this I realize the problem might go deeper -- since write.ensemble configs is called inside run.write.configs, which is itself called from runModule.run.write.configs for each site separately, we may need to climb quite a ways back up the stack to preserve ensemble information correctly across sites.