Think of the ExtensionsIndex as a repository containing a list of extension description files
*.s4ext used by the Slicer extensions build system to build, test, package and upload extensions on the extensions server.
There are multiple branches on the ExtensionsIndex:
master: This branch contain description files of extensions that will be built against Slicer nightly.
4.10: This branch contain description files of extensions that will be built against latest Slicer 4.10 available patch release.
The reasoning behind this approach is that since both the Slicer API and ABI associated with Slicer base libraries are changing often, compatibility of the extensions available for download is guaranteed by building extensions against every Slicer revisions.
It means that developer willing to have their extensions available on the different versions of Slicer will have to submit pull requests for each version.