Well, I had to light a fire under my contractors' a$$, but it appears that it worked.
It went something like this:
(After no one showed up to work Monday, Tuesday, or Wednesday)
Me: We need to meet Thurs or Fri to discuss getting the garage finished.
GC: I am ******* both those days. You have to understand the weather, blah, blah blah.
Me: Well, I feel like getting the work done is not a priority. No work has gotten done in over 2 weeks.
GC: Let me check with excavator and roofer..........
(and a few text messages later)
GC: I will be there tomorrow morning to finish framing, excavator owner will stop by to see if they can work with the wet ground, roofer will show up around lunchtime to start the roof.
True to his word, he was there Thursday morning before 0700. Roofers showed up at 1130 and the excavator came by around 1300 to start but determined he couldn't work around the roofers.

But they'd be back Friday.
.