Andy, I don't take your post as a bash, so please don't take mine as a bash either.
Personally, I think if someone thinks that heavy use of COTS components in a robot stifles learning, creativity, and problem solving, then that person is lacking in a little thing called imagination.
We LOVE LOVE LOVE COTS parts. VEXPro is our go-to COTS system, and the bonus is that they share our color scheme
The reason I bring up imagination is because the ways that COTS parts are creatively implemented is what is important. I think one issue is the very wrong implication that building with COTS yields a lack in creativity or learning value. I think it's quite the opposite. With COTS parts, we can prototype and iterate many times faster than if we had to fabricate more things from scratch. The most important part of our design process is iterating. This is what I feel can be most valuable to learn during the build season. Taking time to custom design something with the intent of learning skills should be left for the pre- and post-season.
It seems like some people think using COTS parts is a plug and play game, but it really isn't, at least on my team. It's more of a game of plug and fail, plug again, and it's kind of OK now, do some math, plug again, and well, it looks great but need to do better, plug again, and finally it works the way we want!
Some may disagree with me on this, but with the six weeks you're given, there's no time to learn through making everything custom! That takes up precious time that could be spent making prototypes and constantly improving them until they can no longer be improved. That's how progress is made in technology in the real world. The biggest technological advances don't come from one isolated design, or from some person making an original breakthrough seemingly out of nowhere. These advances come from years and even generations of gradual iteration and building upon the knowledge acquired from others.
Real engineers don't have to build everything they design, and that idea can apply to FRC teams too. If my team can put together a VEXPro ball shifter, and not bother with building a custom gearbox, then we will do it! But can we build our own gearboxes, and do we have students with the skills to design them? Yes! Because they did that learning in the other part of the year known as the off-season, where we have time to step back and go through the details with both FRC and non-FRC related projects.
If we don't spend time fabricating systems that can be bought already, then that gives us the time to fabricate the systems that really have to be custom. We may LOVE LOVE LOVE COTS, but COTS doesn't give us everything. We CNC and 3D print our own parts, weld our frame, and make our own composites. It's COTS parts that allow us to focus on the custom systems of our robots, so those systems are better tuned and ready for competition. If we had spent time machining drive transmissions, the most basic of systems that can be taught in the pre-season, then we would have less time, energy, and resources into making custom systems work, and work well.
By the time this build season is over, we will have built/worked with four robots: Concept (mostly built pre-season as an adaptable chassis), Prototype, Practice, and Competition. Without COTS parts at the ready, we wouldn't be able to do this. It is this iterative process that shows students what true learning is. True learning isn't limited to being able to recall past instructions enough to design a custom gearbox or having the skills to mill everything manually. True learning is being able to develop meta-cognition, or in other words, self reflection in what has, can, and will be done. This is what the iterative process gives to our students. It shows them that rarely is anything done on the first try. Neither is building anything easy, even with the amount of perceived convenience that COTS parts can deceptively give to teams who won't see COTS parts as something that they can make their own in some creative manner.
If we can buy an entire intake system, arm system, or shooting system, we will. But you sure can bet that our students will break it down, rebuild, tinker, and tweak it to make it suited to our own strategic needs better than what the assembly instructions recommend.
A team that heavily relies on COTS parts only misses out on the learning of building a robot if their mentors and students lack the creativity to "own" those parts and make something original from them. For that kind of team, the problem isn't in the prefabricated parts, but in the limits of their imagination. Why not buy a COTS part and ask, "can I use this for something it isn't intended for?" (but safely)
Teaching meta-cognition through the iterative process is one way to keep in mind that FRC isn't all about the robot, but about learning the skills that can make a student a productive and articulate member of society. This self reflection is one of those skills. Focusing on making students learn particular niche skills like fabricating custom parts is to lean more on the "it's all about the robot" side of the spectrum.
By no means am I saying that custom fabricating parts that are available COTS is a bad thing. If your team is capable of it, by all means go ahead. My main point is that with the short time we are given to make a competitive machine, it is OK to opt for the quicker option, and save the more technical learning for the off-season. Also, I'm not saying that build season is not the time to learn technical skills. There's plenty of time in the season to learn technical skills, but that should be through the systems that are unique to the team design and the year's game, not something that can always be designed during off-season, such as drive transmissions (which rarely change season to season) and experimental systems (e.g. if a team wants to do swerve the first time, they first do it pre-season instead of after kickoff)
COTS parts are as valuable a learning too as you make them.