I'm thinking about it.
The only ways that come to my mind would be to either:
• scale dependent workloads down to 0, which will automatically detach the volumes. Longhorn could remember the scale setting and restore it after - I can see how this solution could be a bit cumbersome. It is not the business of longhorn to interfere with workload but it already does so by being able to remove pods of broken volumes
• an easier solution, save the setting and only apply it when volumes are recreated/mounted - I don't see how that would be a problem. It's not like applying the setting would suddenly terminate all the longhorn system managed pods, would it? I think save it and let it propagate slowly would be the best way to do it. It's like upgrading longhorn, it happens sort of transparently whilst the engine pods and etc. are upgraded.