So the way the extension detects module changes and updates the docs is by checking each modules folder "last modified" date.
Basically what that means is that if any file is removed, renamed or created inside that directory; the extension will detect it and update the docs.
One problem, and a NTFS file system limitation really, is that modified files inside the folder does
NOT update the "last modified" date for the folder.
So if you were to add a new function to your module; the extension would not detect it.
What I've done to fix this is make the extension also look at the "last modified" date on the main .bmx file for that module as well.
One problem however is that imports will not be picked up on by the extension.
That's why something like 'ModuleInfo "Version: 1.00"' is a good idea to have in your modules main .bmx file.
The extension would detect the version changes and update the entire module.
So basically:
Added/removed/renamed any source file - detected
Module main file modified - detected
Imported file modified - not detected
You can also force rebuild the docs yourself by calling a VSCode command!
(which is the only way to do it in MaxIDE)
So if there's anything that doesn't seem right, you can just call that command.
It takes less than 3 seconds to generate docs for all 266 modules on my computer anyways.
It will also, of course, detect any removed modules:

Here's some of what the extension generates for the docs and saves as a Json:
