When fetching the current root from the SegmentNodeStore an older revision will be returned when a commit is being processed concurrently. I think it would make sense to wait for a short time in this case increasing the chance of returning an up to date state. The idea is that this would lower the rebasing work that need to be done later on should the returned root be used for further modifications.
An interesting value for the wait time is to use the median (or more general a percentile) of the commit time of the last say 1000 commits. This would mean that (for the median) we have a 50% chance of getting up to date date. For a 90% percentile we would have longer wait times but then a 90% chance of getting up to date date.