A couple more errors today:
1) I attacked another neutral city again got the out of sync error that forced me to do a reload to see what the battle result was. This time I captured the Ajax error. It's in what looks like a file called highres at line 4081. The error says misc.isInt is not a function. The line of code is:
if ((misc.isInt(cityIncome)) {va ... on = "tbaseicon"; var margin = "18";}
I hope that lets you track down what happened.
2) When I go back into the battle screen and review the battle it shows the defender city wall icon with a +5 next to it. This despite the fact I brought a battering ram. If I tool tip over the enemy unit it shows 15 + 4 (swarm) + 5 = 19. Meanwhile on my side, there appears to be a battering ram icon with a 0 next to it instead of a 5. Clearly there is a math error there as the tool tip and battle screen is forgetting to subtract 5 from the ram. Of course the actual battle clearly used the right numbers so it's just a review battle issue.
3) On the City Overview screen that you are still working on I found an error. If you own 2+ cities and click on the production of the bottom one then click on the production of the upper one, the unit icon to the left changes to the icon of the unit on the lower city. So it appears you are making a unit there that you don't even have in that city. This produces an Ajax error is cities.js at line 274 that says cities.citiesobj[id].producing = producing is not defined. There is another one at line 2912 same file that says if (data.newdata == "yes") is NULL.
This seems to mess up the production in your cites so that you have to manually go and make sure they are all OK.
KGB