I believe the reason the VPN was not auto-restarting was because I had incorrectly specified the `keyingtries` and `dpd_delay` configuration options. These are properties of the top-level connection, not the child. I must have placed them in the `children` block by accident.