I don't think this is a bug.  This is simply the way distributed
version control systems work.  The fork is easily resolved using a
subsequent merge.  Indeed, with DVCSes other than Fossil, that's what
you would have to do all the time anyway.  Fossil provides auto-sync
which helps to reduce forks, but I don't think it can eliminate them
100%.