Previously utility tried to write 256 bytes overlapping to next page 0xA00 and that extensive part was not written properly, corrupting beginning of the current page.
Now fixed utility is doing
erase the flash (entirely as before);
read file to buffer (filling holes with FFs and at the end up to the next page boundary);
write buffer to flash page by page (so no going through page boundaries while writing);
verify by reading flash page by page (comparing with buffer, not file).
Re-created PR for updated repo
One example that was written incorrectly by old version of utility:
Previously utility tried to write 256 bytes overlapping to next page 0xA00 and that extensive part was not written properly, corrupting beginning of the current page.
Now fixed utility is doing