Thalassicus
Bytes and Nibblers
Playing this version, the AI promotion issue seems to have disappeared. Note that it's one version before Thal tried to overtly address the issue (v146.4).
When I'm fiddling around with behind-the-scenes AI code, and I'm uncertain if it will do anything, I sometimes leave it out of the patch notes.

I noticed the part giving AIs experience relied on the vanilla SerialEventUnitCreated event, instead of the UnitSpawned event I later created to replace it. The vanilla event runs every time we load a savegame or units embark/disembark. That was probably the source of the bug, since my version runs only once, when a unit is created. However, the bug might have been elsewhere if I'd already created a check to prevent that erroneous behavior when I designed the experience-giving function.