pushDestinationByName has the context object bound and verifies the context consistency when called, while pushPathByName does not perform this verification.
Different windows run different UIContexts. In the single-window scenario, only the return values are different. In the cross-window scenario, you need to pay attention to the matching of UIContext.