I went back to look at this patch and a few things. I noticed it did not have correct indentation, so I ran pgindent. I also removed some extra lines added and made some slight adjustments to the docs. Attached my edited patch as a txt. If you agree, please revise into a v14.
I also noticed that between v12 and v13, the GUC use_invisible_index was removed, but I don't see a discussion as to why. I feel it's a good GUC to have [0], and we should at least have it as a separate patch as part of this set.
My apologies, I rebased off an old commit and that's how we lost the GUC change and also the rename from ENABLE/DISABLE to VISIBLE/INVISIBLE. I have brought it all back, in addition to the specs and other changes mentioned in v12. Let me know if you have any feedback, more than happy to incorporate them.
Also, thank you for letting me know of pgindent, very handy!
I will continue reviewing the patch, but i feel this may be close to be marked RFC, although not sure if it will get a committer review before code freeze.
I really appreciate the reviews and guidance, thank you! Would love if this can become part of v18 release. No worries if not of course. I am definitely around to help get this production ready and also if any issues arise after.