Guys, I think I partially understood why the priority for oath is given to some but not to others.
On one hand, there is info about an applicant that never expires, e.g. language knowledge, citizenship test, physical presence...
On the other hand, some info has an expiry date, like criminality (it's not shown on the tracker but you can see it on the GCMS notes).
So I think, before inviting an applicant for oath, IRCC is looking at the expiration dates of the "perishable" info about an applicant. If this info is expired or about to expire, they request this info again from the police for example in order to refresh. This is when an applicant waits.
An applicant also waits if the expiry date of some info is far away in the future. In this case, the applicant is considered a low priority because there are others who have checks expiring soon...
That's probably why IRCC wanted to process routing applications within a year in the pre-COVID era, they want applicants to finish everything bafore some of the cheks expire. This also explains why 2021 applicants are processed with good speed...
BTW, my GCMS notes say that the second criminality check was run on Apr 2021 with validity till Apr 2022. The tracker has no info about it...