Why isn't there a proto_remove_host_dependency while we have a proto_add_host_dependency?

I have a vpn interface, which will add a dependent route in the main route table when it is up as proto_add_host_dependency does. But if the connection is lost or just by ifdown, the route added before is still there in the main route table.

In most cases it is harmless but it is still annoying.

Why doesn't the dependent route get removed when an interface is down?