I've got a CheckinHandler which modifies commited files via the PSI tree in it's beforeCheckin method. Everything seems to work correctly, except that the file modification appears to occur after checkin occurs. Modification occurs in a write action, wrapped in a CommandProcessor.executeCommand call. Is there something obvious I'm missing? Maybe some sort of "commit the psi tree to the physical file" command?