Module federation, package versioning explanation

Despite my research online, I cannot find an explicit explanation of how package versions are resolved when I use webpack’s Module Federation, so I’m hoping for some help.

Example 1:
host (singleton version 16.x.x)
client (singleton version 17.x.x)
What Module Federation will use in this case? (I know that there will be some warnings in the dev tools, but I want a way to figure out what is actually being used)

Example 2:
host (version 17.x.x)
client (version 16.x.x)
I think I figured this out based on semantic versioning, client will get version from host.

Is there any way to see what version webpack decides to use in the end and not rely in hypotheses?