Turns out that combat calculations with great commanders involved are bugged even if unit in question wasn't promoted on current turn. Here are two more screens. On first screen commander is standing next to unit and on second I just moved him back one square. Result is weird -40% of STR 4 unit (vs STR 3 unit) seemingly don't change resulting strength while changing odds by meagre 2%.
Fixed in latest SVN. Cache of unit effective combat strength wasn't being flushed correctly on GG moves (and a few other minor cases).
Note - the display (and indeed the calculations) in regard to attack combat type modifiers are a little weird, and (IMO) misleading (and broken in the limit). Specifically they are SUBTRACTED from the defender, NOT added to the attacker. Hence the 5.1 for the defender strength even though it has 50% tile defense and 50% against melee and 10% general bonus - the attacker has 40% against melee so the net result is that the defender gets +50 +50 +10 -40 = 70%, on base of 3 = 5.1
This is not really correct (but will be quite hard to change due to the complexity of the internal calculation code). It doesn't matter TOO much until big numbers are involved, but consider this:
Some super powerful melee unit with base strength 1000 is defending. It has no modifiers
A stone axeman is attacking and has a further +50% against melee via promotions. That's a total of +100% vs melee
Defender str = 1000 with a modifier of -100% = 0
Attacker str = 3 with no modifier
Result - stone axeman beats melee unit with 1000 base strength every time!
Contrast this with the 'correct' (IMO) calculation:
Defender str=1000, no modifier
Attacker str=3, 100% modifier = 6
Stone axeman loses 99.99999999999999% of the time
In practice a unitCombat attack mod close to 100%, while attacking a defender with no bonuses of its own is very unlikely, but clearly some really nasty skews ARE possible.