60559d4e0e
_attach_child now mirrors a pending parent stop with the same split interrupt() uses for its own fan-out (hard -> hard_interrupt, soft -> interrupt), so a redirect is not turned into a cancel on a child that was attached late. _restore_parent_cancellation collapses to re-attaching the rejected unit's children: the replay is the attach step's job now. Test fixture: _Batch gained origin_session_history_delivery on main after the salvaged PR was written. Co-authored-by: illidan <noequal666@gmail.com>