By default, `attempt_number` should increment from the most recent attempt, not be the same. We should also let it be overridable as a param, if people want to just say that this is attempt number 2, never mind the actual history (this can happen when we need to repair broken state).