Currently dracut contains two modules that help to setup network at init time: network and systemd-networkd. Users suppose to use only one of the modules to enable network functionality.
Some third-party modules (e.g. clevis-pin-tang) need network and specify network module as a requirement. This unfortunately pulls the network module even on the systems that configure systemd-networkd.
dracut need to be able to specify module A provides network functionality so clients should not care about choosing a particular network module implementation.