You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Here are some thoughts on VE architecture related to module and package initialization architecture. If you looked at this earlier, I'm simplifying the proposal here.
Abstract the Initialize module step in the framework so it can run within a model without committing to running the rest of the model (much as was done in the current 3.0 to abstract analysis of the model's specifications when the model is loaded)
Re-architect initialization so that if a module includes an "Initialize" function, that function can be run in the Initialize step.
Allow an optional table in the Package Initialize.R to identify Initialize functions to call for each module (and perhaps giving them an order-dependency). The intent is to cover cases where the same inputs might need to be verified for multiple modules and we don't want to define the initialize function twice or call it more than once, Presumably the table could also reference arbitrary functions possibly defined within Initialize.R itself.
Run initialize after all the model's inputs have been loaded into the Datastore so earlier inputs can be checked for presence and consistency. Which might be best served by the next element (separate sub-Datastore for model inputs)
Create an "initialize" mode for VEModel model$run (to complement "save", "run" and "reset"). If set, it will "save" any existing Datastore, then run just the initialize part of each model's model stages (and set a suitable RunStatus in the ModelState), leaving the dianostics on screen or in the individual stage logs. We can use that for standalone evaluation of inputs, or run through it as part of a model run.
The model state after doing an "initialize" run will be technically incomplete, so if a run is later requested, initialize will be performed again on a fresh Datastore.
Additional requirements, implementation ideas, use cases/workflows are welcome - please comment below (and see the issues referenced in the first comment).
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Here are some thoughts on VE architecture related to module and package initialization architecture. If you looked at this earlier, I'm simplifying the proposal here.
Additional requirements, implementation ideas, use cases/workflows are welcome - please comment below (and see the issues referenced in the first comment).
Beta Was this translation helpful? Give feedback.
All reactions