Ok, finally figured out how it is done in Fiscal Years. Can be done for CW2 and probably any AGEOD game.
Here is the event that is used.
SelectFaction = $WHI
StartEvent = evt_nam_WHI_PromotionsA|1|1|NULL|NULL|NULL|NULL
Conditions
CheckAILevel = 1
MinDate = 1918/09/01
MaxDate = 1922/02/12
Probability = 8
SelectSubUnits = Models $ldr_WHI_Cherbachev1
EvalSubUnitSel = NULL
Actions
AltercuSubUnit = Convert TechUpg
EndEvent
NULL ==========================================================================
SelectFaction = $WHI
StartEvent = evt_nam_WHI_PromotionsB|1|1|NULL|NULL|NULL|NULL
Conditions
CheckAILevel = 1
MinDate = 1918/09/01
MaxDate = 1922/02/12
Probability = 8
SelectSubUnits = Models $ldr_WHI_Slushov1
EvalSubUnitSel = NULL
Actions
AltercuSubUnit = Convert TechUpg
EndEvent[/B]
Basically, this event is a tech upgrade. Every leader for each side that can be promoted has a separate entry. Every turn, each leader has a percentage chance of being promoted between the Min and Max date. If the percentage chance is "rolled", then the leader is elgible for promotion. And the leader can be promoted at any time after the event fires. The promotion elgibility does not go away once the event fires. In the sample events above, each of the two leaders have an 8% chance each turn of becoming promotion elgible.
This event is totally separate from the seniority system. You don't need +4 seniority to promote if the promotion event fires. I assume the seniority system continues to work as normal. If a leader reaches +4 seniority and is not promoted, he should lost his elgibility for promotion unlike the tech upgrade events above.
If someone wants to do the work, a tech upgrade events system just like the above could be created for CW2.