I’m with Matt on this. Of course the context is always different and theres no silver bullet here, but generally I try to avoid the antipattern where the ops/platform team becomes a bottleneck.
I’m all in for removing silos and providing autonomy to the teams themselves, instead of having a single team responsible for everything you described in option 1.
For example im working on a project in a platform team where we supply the k8s, cicd, gitops and similar tools as internal products. We provide devs with samples, boilerplates and documentation on how to build the helm charts, pipelines and releases. Developers know that they can ask us and we are happy to help them, but we wont be doing their work for them 😄