“...why did Cruz wait so long...”
Maybe because he is a coward and despite his supposed red, white and blue stripes, he is more concerned about his Senate seat until he got the low-down on verifiable truth from Trump. Now he’s onboard.
The dude is a douche and a turd.
He may be both, however,I would certainly take the time to thank him for objecting to this charade, regardless of his motivations or chickenshittedness.