Modules in UProject file order dependent?

I just spent a fair bit of time fighting ‘dll could not be found’ startup errors after adding a secondary module to my project, which was added as a static dependency in the primary module’s .build.cs file. In the end I discovered that this could be solved in the .project file by either 1) setting the secondary module’s loading phase to ‘PreDefault’; or 2) putting it before the primary module in the ‘Modules’ list.

Is this intentional behavior? It wasn’t specified in any of the info I managed to find on adding modules. It would seem to be unnecessary since the dependency tree is specified through the .build.cs files, but perhaps that isn’t sufficient. At the very least it would be worth documenting.