warm start looks for the max timestep which has results, and re-runs from there (so far so good)
however, smif doesn't guarantee that timesteps are run in order - so, in a warm-start context, we should instead skip re-running any timesteps which have complete results, and run others
also, a finer-grain warm-start would be useful: when hacking on a model integration, if you're interested in a model downstream of some other expensive-to-run model, it would be nice to avoid re-running it, so in a warm-start context we should look for job-level outputs and consider skipping re-running any model/timestep/decision job that has a full set of outputs
Quick investigation: