I am wondering if we have access already, or if anyone knows of a good source of index composition (especially over time).

It's valuable to be able to select a list of securities based off of them being in an index and running a backtest on them.

For example, running a backtest on all S&P 500 constituents.

It's doable to build the list of current stocks using google searches, but the challenge is if you use that list for backtesting you will have selection bias, as you are selecting the companies who you know WILL be in an index and therefore probably increased or stayed same in market value, and didn't go out of business.