ModelBuilder should have a feature that allows an entire tool and parameter to be optional.
For example, I have a tool to buffer points, lines and polygons and merge the buffer. Sometimes, however, I only need to buffer points and polygons and don't have any lines to buffer. Then I can't use the tool because the lines parameter needs an input even if I use a boolean to make the tool optional. Because the parameter is connected to a tool it cannot be optional.
I've seen several posts over the years here and in GIS Stack Exchange asking how to make a tool optional. There are some work-arounds, like using a boolean, but if a parameter is connected to a tool there is currently no way to make it optional. It would be very powerful to make entire sections of a model optional and allow more versatility in the model instead of making multiple models for each individual use case.