I think your root issue is likely due to conditional logic (Merge/Wait) in the sub-flow that prevents a final output, or a lengthy Wait causing silent cut-off. Try simplifying the ending or enabling the fallback setting, and avoid super-long Waits. Once the sub-flow always ends with an item, the parent workflow should receive it correctly.
Alternatevely use the Always Output Data setting so the parent always gets something, even if things changed recently and worked fine before.
Other note: try to update to the last version of n8n
Unfortunately I’m at the mercy of the onedrive API here and its love of eventual consistency. I need those waits and checks to ensure the file gets copied and then renamed.
Like I said it worked before and now it doesn’t, which implies something out of my control has changed.
There is no valid path out of the the sub flow that does output SOMETHING, so the fact that invoking the subflow returns nothing is problematic here. Even more problematic is that the execution shows values being output in the last step! Forcing it to always output continues the flow, but its missing the onedrive file id, which makes steps later fail.
I find the microsoft graph api based apps very painful… not a n8n issue per se but you have to dig very deep to avoid weird issues where files only appear on the API endpoint hours after they have been added / moved etc.