When an inning gets reconstructed, it starts with the 1st batter and doesn’t conclude until the inning is over, and ERs aren’t determined until the inning is over. I don’t know how other scoring apps reconstruct an inning, but I wrote one and couldn’t do it because it was so complicated. That’s why I compute ERs manually after every game.
Most of the time it’s pretty simple, but as the example in this thread shows, it can get complicated as well.