You are correct, at least based on my experimentation. This subagent workflow really only delivers meaningful results when working across model families (ex: Opus asking Astra for a review) or when working across conceptual hardware boundaries (cloud offloading to local inference, etc). The planner / overseer model ends up reading all the output of the coder model anyway, at least if you want quality output, so there's not much benefit otherwise.
Here's a snippet of a sample prompt downwards from the lead for a piece of code I'm working on:
The agent is given explicit "comms" instructions upwards and I find that both agents in this exchange stick to the contract.