That could work. But this means that you have to setup such constraint potentially between multiple pairs of simulating components as “DisableCollision” effects only two connected.
In situations when simulating components is at least one component away from root. Like Chassis -> Suspension -> Wheel. One would need an extra set of constraints between each wheel and a chassis which role is to just disable collision. Constraints have rather steep performance hit (I don’t know if non limiting one without drives just idling or iterating over calculations) and they won’t help in case of non-simulating bodies.
In regards to non-simulating bodies. I’ve checked my code again and this issue is limited to BPs actually. From c++, sweeps have input array for bodies to ignore. So I could expose ComponentSweepMulti() to BPs and it would be solved.