I'm using three types of commands in automation all synchronized on a background music :
1) sheet music, which doesn't need to have a very precise timing
2) lyrics as karaoke SLM, which doesn't need to be very precise too.
3) midi commands during music to activate guitar cc and vocals step and others types of commands on a voicelive 2. All that type of commands needs to be very precise.
Yes that's a negative delay, and yes that's not possible to delay commands at 0.00 (I've got some commands at zero, but I have to tell that's the 4 times before the start of the song, so commands during these four times don't have to be time precise), but the way I do it is to find the first command after zero, let's imagine 1.00 , and then subtract in my case the latence which is 0.65. Then the 1.00 is now 0.35 , I check "transform all next automations commands" (sorry for the traduction I'm working with the french version) , and that's ok for the rest of the song.
And because I work with 3 screen layout, one better to edit docs, one better to edit midi and one for live performance, I imagine that option on live layout who could be possible to delay the automation in negative way which could process like I do with the first command after zero (except if this first after zero is under the negative delay applied...). That's could be a non destructive way to do it, with the possibility then to adjust it if needed, and without to edit a live version of the song.