I have similar issues in the environment I have here for Designer material, and the root cause is customizations/processes that change the status of the object without going through the ArcFM framework. If a user runs a task that changes the state via the standard Process Framework, the history with be updated. But if the state is updated through custom or direct means (i.e. by just going into the database and running a simple SQL update), it will usually bypass the mechanisms that the History tab needs to capture that action. (I say usually, becuase it is possible to make customizations that update that table).
Is the workflow that would move a session from 'To Delete' back to 'Edits in Progress' a manual one done by the user? Or is there a customization or process that updates this state 'behind the scenes'?