fn replace_flushed(path: &Path, text: &str) -> Result<(), String>
A file written whole beside, flushed, then put in place: a crash leaves the old one or the new one, never an empty one.