I feel like std::fs::advisory_atomic_write (strawman name, of course) or the like would be a good compromise, where it tells you in the body:
a) exactly what it's doing on various platforms,
b) what the contract is,
c) that (a) is subject to change
I don't know how to balance this better