Our current recommendation for these situations is to setup a zombie-killer automation as described here:
https://docs.prefect.io/v3/automate/events/automations-triggers#detect-and-respond-to-zombie-flows
It was actually an intentional design decision to
not couple submitted work to worker health as a form of fault tolerance, but honestly this decision doesn't make much sense for the Process Worker specifically because the work
is in fact coupled; I think we can look to add an attempt to cancel subprocesses when that particular worker shuts down gracefully which result in the outcome you're looking for.
Best way to help us achieve this would be to file an enhancement request on github so that you can also track status of the work (feel free to copy / paste my response there) but I'll also add it as a TODO for myself