Based on my analysis on webpack code generation, few points to note are
- A dependency which is not loaded eagerly by the host can be replaced with any other remote mfe with eager:true
- A dependency which is not loaded eagerly by the host can be replaced with any other remote mfe with eager:false, if the unique name of the remote is greater than that of the host
- A dependency which is loaded eagerly by the host can still be replaced with any other remote mfe with eager:true if its not been consumed yet.
At the end, in all the case its important to know that it doesnt matter which mfe's dependency is getting registered, important is that the dependency is provided when its needed to avoid any eager consumption error
So, in this case, you are right the longest unique app name wins