feat(*): add canDeactivate back into pipeline
feat(1.x): keep location path in sync with route