Can you create a minimal repository that reproduces your problem?
Only thing I can imagine right now, is that your request is processed by an old version of a changed module, while only the next on will be done by the new version. I'm not sure how hard the code-reloader enforces the reloading and upgrading of processes.
Also for some changes you have to restart the server, thats just how phoenix works.
Last but not least, in an umbrella there is only the web portion watched as far as I remember, so changes in your api-sub-app will not trigger any recompiling at all.
Still, this are only rough guesses based on only my sparse knowledge about phoenix and limited info about your project