Damnit, you made me have to review my own code
Using MustMaintain would mean as soon as you ditch the civic you will lose the promotion on all units. Using ExpireChance would mean there is a chance per turn to lose the promotion. The thing I had to look up was the order that these happen in
AutoAcquire does happen after ExpireChance, so if you set an AutoAcquire promotion with an Expiration chance, then the promotion will remain on the unit as long as the conditions are met (no chance of losing the promo), but once conditions are NOT met, they will maintain the promotion for the rest of that turn (minimum), then have a chance at the start of each turn to lose the promotion if conditions aren't met.
This of course makes autoacquire even better

Having moved AutoAcquire and MustMaintain to be checked onMove caused us to lose the chance of having a nice "you are in a city" bonus which can still be used to protect the nearby improvements (keep the bonus when you move out of the city, but just for that one turn). I hadn't even thought about using ExpireChance=100 instead of MustMaintain. Doing that would perfectly allow you to keep a promotion for a little while after you stop meeting the conditions required.
And in cases like this where you are dealing with a Civic it is quite a bit cooler as you can place a 5% chance so that SOME of your units will keep the promotion long enough to switch back to the civic without them losing it (if you had to temporarily switch for some odd reason).
And for Mailbox: AutoAcquire is a new field setup I added to promotions which FF offers. It is proving quite versatile thus far