# Both ends leave parent

The learner can mint a pair, transfer both ends into two iframes, treat parent’s original handles as spent (posts drop, no throw), and treat each received port as a live MessagePort that can `close()` or move onward. That is now the floor: the next lesson can spend working memory on an iframe and a dedicated worker holding the two ends, without mixing that pipe with the worker’s implicit port.

Evidence: the learner said they passed lesson 5 (sibling lab + checks).

Implications: issue #24 still wants a worker talking to a third context. Teach that as iframe↔worker on the minted pair; the implicit port stays parent↔worker. SharedWorker `onconnect` is a platform-minted port — reject minting for that first stream; no file:// SharedWorker lab.
