I really like Z3, and I like the convenience of Z3, but ... dang ... it'd be nice if you could trace internal statements.
Oh! Another pet-peeve is that there's no (sane) way to print large expressions. Once an expression gets large, Z3 begins dumping opaque internal variables (K!##). There is no way to get Z3 to unmunge these variables — that information is forever lost to you.
Some days are incredibly easy due to the day before. Some days, you can flip the orientation of one block and be done.
The most difficult days are when entire sections have to be rearranged. Like going from one week to the next or starting a new month.