If you're using local overrides, it'd probably reflect stuff from crates better if you only update your local branches/forks via the tags when safe_vault updates accordingly. So right now when vault depends on routing
0.28.5, would help to keep your branches in sync to the corresponding tag from routing instead of master.
This way the behaviour would be as expected and your local branches should continue to function. depending on pure routing master is not really great as it breaks the whole package manager route and is one of the advantages of having such a package manager where libraries arent coupling each other immediately.
The error with lifetime as @dirvine mentions is to do with serde updates, but instead of patching that manually, I'd suggest just picking the corresponding routing tag of 0.28.5 instead of master until vault updates to make it simpler.