@Patrick Zweekhorst
I stepped through what is happening and will explain below with a suggested workaround. I'll add a case to the dev list with this example model for @anthony.johnson to determine how to address this issue as a bug or not.
Here is an image demonstrating the steps of what is happening with the travel paths when you redirect the agv in these two cases.

First, the current travel path is aborted, shown in red (step 1).
As part of aborting that travel path (step 2), it finds allocated objects that will be reallocated as part of the redirect. In the top situation, that is just CP5 and not the control area. In the bottom situation, that is CP182 and the control area.
In trimming the travel path after the preemption (step 3), it deallocates the objects from step 2 that are not on the new travel path, shown in purple. In the top situation, this correctly deallocates CP5. In the bottom situation, this deallocates the control area because it is not on the new travel path. This result is not what you wanted when you did the redirect(). If you had redirected to a control point that was beyond the control area, then it would not have been deallocated. (For example, if you move CP182 beyond the left edge of the control area.)
As a workaround, you could add another control area that will be allocated as part of the new path, such as this:

To get the overall traffic control that you want in this area, you may need to use more control areas to compensate for situations where the outer control area gets deallocated in an undesirable way during a redirection that preempts the agv's travel.
Phil BoBo
Sr. Manager, Software Development