I wonder if that is a "commitment" problem or a "write-cache" problem.
It's a commit problem and not a write cache problem. Write cache is disabled by default, and needs to be specifically enabled.
PFS3 relies on the atomic commit of the HDD. Use of any sort of write cache that changes the order of which the writes are written to the HDD (be it in HW or SW) will endanger the filesystem integrity. If it would be a write cache problem you'd end up with a totally corrupt FS rather than a missing file.
To reiterate: You get the old file because the filesystem automatically reverts to the state before the final commit. When this happens the filesystem integrity stays intact, but you lose the latest changes to the filesystem. It's far better than losing the filesystem integrity for sure. Also, I have plans to add resethandler support to the FS, making it write out the remaining data to the HDD before letting the system to continue with the reset.