There's currently a narrow window between when the merlin-worker sets the simulation_dataset status to incomplete, and when it actually starts a simulation. If an error occurs in this window, the worker simply crashes, and does not update the simulation status.
This ticket would be satisfied by catching errors that occur in this window and marking the simulation as failed, and updating the reason as well.