In validate_zimfile_creatable, nothing is specifically tied to the fact that we are manipulating a ZIM file.
The method should hence be renamed validate_file_creatable. Obviously this would be a breaking change, so probably needs to be done in two steps, first create new name and keep alias with old name, with a "deprecated" warning. Then delete old name in a major release.
And sometimes we just want to check that we can create a file in a given folder. Code is mostly identical (and should be shared) but we would benefit from having a validate_folder_writable.