Yeah, this doesn't look like it plays nicely with restarting syncs, or (especially) with restarting syncs across daemon restart (when it needs to read all this state back off disk).
In fact I think that we can't set last_committed on disk until after we've applied all the paxos transactions prior to that, which will probably require some rework throughout this branch. Not sure how much.