Hi,
I see - there are different opinions, how to handle this. For me it is easy to offer different open methods for these. My current implementation is based on a list of files. How this list is received do not change the algorithms, used for reading the files.
Zimlib does a rudimentary check, if the pointer to the last data cluster is inside the file. So if there is one file missing, it is very probable, that this is detected. But I can add some more checks. Maybe I can decompress the last chunk to check, if this is consistent.
The implementation also avoids opening too many file handles. By default it opens only 5 files at the same time. If another file is needed, one file is closed. A special caching algorithm is used to check, which file to close.
I just checked in the current implementation, which uses the naming scheme from the split command (suffix aa, ab, ac ... zz).
Tommi