When I shoot a target in Genius or Superhuman difficulty, their armor value reverts to the Veteran-difficulty amount even if they didn't take any damage. My guess is they already have Veteran armor but are displaying the amount they should have until a hit triggers an update which reveals the true amount. If the difficulty gives them less armor, it seems to work correctly. They take the right amount of damage and their armor stays where it should.
This does not happen in OXC. I cannot test if it happens in unmodded OXCE+ because all difficulties other than Beginner have the same armor values for aliens.
To reproduce this bug, equip pistols or some other weak weapon to soldiers and have them shoot a sectopod. Use mind probe to check armor before and after shooting it. Make sure you have higher armor setting in difficulty.rul, example:
aimAndArmorMultipliers: [0.5, 0.8, 1.0, 1.2, 1.5]
P.S.: I'm also getting a small calculation error in armor value. On Genius difficulty, the Sectopod is showing its armor at 173/155/119 when it should be exactly 174/156/120 (20% increase over 145/130/115). My guess: some kind of floating point error rounding down instead of rounding to nearest.