The Proper Way Of Triggering & Rolling Back Actions Initiated From The Game Thread With Chaos Mover

I’m investigating using Chaos Mover (after 1.5 months trying to implement Bullet/Jolt) and I cannot wrap my head around how to properly handle triggering actions that influence physical movement and rolling those actions back based on the results from the physics simulation in Chaos Mover. What throws me off is the physics running on a separate thread. For example, let’s say my pawn has a “Charge” ability similar to Reinhardt in overwatch. Chaos Mover is forward predicted and lets say I predict my client hitting another and begin pushing them back with the physics solver. Then a server side snapshot makes its way down to the client and I see that the location data I used to calculate my charge direction and ultimately my hit was 100 units out of sync with the server. In this case the physics thread would rollback to correct the location offset but how would I also rollback the ability to retrigger with the updated location data?

FYI this is a custom ability system running in a fixed tick NPP simulation.