Thank you for the walkthrough and the detailed story. To be honest, I'm seeing this kind of scenario on Hero difficulty for the first time. What's going on in the AI's mind...
I didn't look at the scripts, but during the game, I had the thought that you specifically configured Jessica so that she wouldn't attack cities, and the player would have to figure out how to defeat her in the field. A normal AI with such a huge army, like hers, should play more aggressively on Hero difficulty. It's also possible that this is a side effect of setting priorities for the computer; I don't know.