I agree that this feels overly focused on the giant RFCs which receive hundreds or thousands of comments of discussion. Most RFCs don’t fall into that category, but they do stick out in memory. RFC per repo sounds like a reasonable idea, but it sounds like it’s mostly just an attempt to solve a need for threaded discussion to me. From the comments here it sounds like it hasn’t worked out as well as we’d like on RFCs that have tried it in the past.
I don’t like the forced spitballing phase, personally. I’d like to see it made more explicit how smaller RFCs would skip through that period. For the majority of the RFCs I’ve written, I’ve not felt a need to write a pre-RFC (2 of them would have benefitted from that phase for sure). This feels like it should be left up to the author, rather than requiring team approval to move past it.
I am really torn on the entire idea around champions in general. I very much understand the issue of prioritization and making sure there is bandwidth available. One thing that is not clear to me from this proposal is whether the champions (who seem like they’re essentially just what shepherds are/were supposed to be today) are required to be on the teams implementing the feature or not. To put it another way, is the problem we’re trying to solve related to bandwidth of reviewing RFCs or bandwidth of implementing?
My biggest concern with requiring a champion is that it unfairly benefits those who have close relations with folks on the teams in question. Arguably those folks are most likely to write RFCs that could be accepted, but this feels like an arbitrary barrier that we should not be introducing.
You touched several times on the need to grow the team, but I don’t think it’s been given enough attention. Honestly I think that is the main problem we should be focusing on, rather than the RFC process itself. The biggest issue I see is that there’s no clear path to start taking on these sorts of roles beyond getting involved in the implementation.
As you know, I personally tried to get more involved recently – And while it was clear I didn’t have the bandwidth to fully understand how the trait system is implemented and meaningfully contribute there, I’m certainly still qualified to help review RFCs, discuss them with the lang team, etc (and likely have bandwidth in that regard). But there’s no clear path for me to do so. I suspect there are many out there like me in that regard.