Here, have a read. Warning: if you haven’t done low-level development, you might walk away wondering if your entire life has been a lie.
> if there's a crash during the write
It never brings up how can there be a crash in the first place (also the entire article is too filesystem specific).
It's impossible to make crash-free systems. If your goal is to maximize the chance that your data remains valid, you have to plan on that.