And if anyone disagrees, I dare you to describe the character of any of them apart from Jynn Erso.
Cassian Andor: Dishonest, charming, conflicted, brave, ruthless. Cassian is marked by the fact that in almost every scene we see him, he's presenting a false front. He pretends to be polite, but we learn he's really a ruthless assassin that will sacrifice just about anyone who gets in the way of his mission.
Orson Krennic: Dishonest, charming, ruthless, ambitious. In many ways, Orson Krennic is who Cassian Andor might be if he was working for the other side. Our introduction to him is similar to that of Andor's - he's a ruthless individual who will sacrifice even friends in the pursuit of what he wants.
This tension is in a lot of ways what 'Rogue One' is really about. You suggest that it is a heist movie, but it's not and never was trying to be a heist movie. It's trying, and I think succeeding, in being a war movie. It's presenting a picture of how war compromises people, even if the cause they are fighting for is nominally just. Cassian is the good guy, sorta, but we know that mostly from the hat he wears. What he does when we are introduced to him looks a lot like what Krennic is doing. This is a dirty war, even if ultimately one side is on the Light and the other side the Dark, from the ground level morass of the war, it's hard to be clear about right and wrong. It's just war. This is pretty cool take in my opinion, because we have in the same movie, black, white, and gray. We're hitting the whole spectrum in a way a lot of movies don't, with the usual being either everything in gray or everything in stark black and white or else nothing really examined at all.
I could go on, though minor characters would of course be less detailed. Bodhi is earnest but inexperience and confused. He's been inspired to do the right thing, but the reality is there aren't any clear choices. K-2SO is cynical and resigned. He's a veteran. Chirrut was once a noble warrior that knew what he was and what was worth fighting for, but he's been left without a cause, orders, or commanders. His counterpart Baze is loyal. Chirrut is all he has left, and so he defines himself in terms of his relationship to Chirrut.
You can say a lot about The Force Awakens, but Daisy Ridley is charming as hell in that film.
When?
Plus, you don't get to say the script of Rogue One as a whole is pretty darn good, after first pointing out in great detail how it is full of holes.
The Force Awakens gives us many more problems than that in the first 30 minutes, and then the script gets truly bad.
I think we are just going to have to agree to disagree on this. Most of your complaints are IMO really weak and really weakly supported. They come down to, "This isn't the movie I wanted them to make." You want a different movie with different tensions and different conflicts and different tone and in a different genre. I get that. But this isn't that movie. Nonetheless, it does a pretty good job of being the movie that it is. Does it have some pacing problems? Yes. Does it have a few bits of hoop jumping where the motivations of the characters are unclear and they are taking actions to advance a plot that don't really make sense. Yes. But on both counts, it's massively better written than 'The Force Awakens'.