I'm confused. Are you disputing that they were undercover cops (in that specific case, the Canadian government actually admitted, after the fact, that they had 3 undercovers at that protest/rally), or are you disputing that shoving someone is assault (or technically battery)?
If you put undercover cops in a role like that, they will often start to behave like the people they are supposed to be infiltrating, whether or not it's sanctioned, whether or not they intend to from the start.