Many thanks. Building now and will try to report back later today.
Concerning the file with 1200 XHTML files, agree it is poorly made. It is a dictionary-like reference work, with each entry a separate file. It also contains links such as see also (some other entry) though at least such is tied to header id rather than just file, so I can merge entries by letter. In such a case, some advanced merging such as filtering in some dialog that shows file name, header title, and TOC entry would be helpful. In other cases, I often see file names by chapter/article DOI by certain publishers, and that too would be nice there rather than needing to look at each file to determine what chapter it belongs to. Other publishers, somewhat fairly common, may make each chapter section a separate file. There are various such cases where restructuring, merging, and renaming files often make an EPUB easier to work with.
Such restructuring, I often do it since it makes later editing, often for corrections or additions such as linking references to other sections or bibliographic entry much easier when the file name is something useful such as section/chapter, plus with front and back matter ordered in the file list before and after. Certain publishers also organize chapters by:
[OPS/OEBPS]/[DOI NUMBER]/[IMAGES]/[IMAGE FILES]
or some other that is difficult to navigate when later editing, so restructuring I've gotten into the habit for all. Plus as CSS is often in the same folder as XHTML with many publishers, a separate folder makes it much easier to find later.
As far as indexing and possibly keeping some internal in memory structure of files, IDs, headers, etc., I am aware earlier editors such as Emacs and Vi(m) may use ctags, though as you know, many editors have been created since. Many offer advanced indexing and are able to do such quick dialogs to navigate to file, class, symbol, function, etc., or show usages, with some background indexing, perhaps only needing to update entries of changed files, or dynamically indexing in the background. JetBrains perhaps offers the most advanced indexing and navigation, with CLion for C++ if you wish to try and see how useful it really is. EPUBs can get complex enough where such navigation I think someday would be very nice.
Of the testing of that one EPUB, I just timed it by watching the clock and did do it three times and it seemed consistent. I'll later try with other EPUBs.
A small detail, might you consider changing the macOS Sigil icon to be of the Big Sur plus style? You can find one here, or perhaps easily make one. Perhaps minor though for now I copy the icon after each build.
https://macosicons.com