Yeah, I've run into this too. Lost a bit of new code when trying to bring an existing code base into Fossil version control.

The term "open" does not convey that anything is going to be overwritten. That's an uncommon event with that terminology. Here is a clear need for a big fat warning in the documentation or a behaviour fix. Instead of the optional --keep, there should be a required --overwrite if anyone really wants to kill current data in favour of repository contents.