@Koshling & Vokarya:
I've determined what's happening but there's a few things I'm a little confused by. First of all, I have no idea how you could've gotten a unit into this position in the first place except perhaps by having waited for a while until recently to update the SVN. The current wouldn't have allowed it to get all these promos in the first place.
What's taking place is your Honour and Martial Arts II promotions are somehow bypassing every effort to have declared them a 'free' promotion, which must be a result of a failure of the filter set up to designate all promotions on a unit as having been free if the version they were assigned in was previous to a more recent change. This part is Koshling's to work because I'm not sure what changes took place during the rev indicated in that filter or how Vokarya's save somehow got those promotions to bypass this at all.
But the second situation making all of this happen is exactly what Vokarya stated earlier, that Religious prereq'd promos are being removed if you've changed religions. Should happen as soon as any upgrade or promotion takes place after such a change in religion so it suggests there should've been a check on all units to canKeep on all their promos after any change in religion declaration. Since I'm not wanting to include such a heavy processing run after all religion changes, I'm simply disabling the religious obsoletion (at least for now - I have some ideas to flesh that out a bit more elegantly in the future.)
It's also possible that somehow these freely assigned promos are being given to the unit in such a manner as it bypasses the declaration in the code that tags them as having been given free. I'm making an adjustment to make sure this can no longer happen in any case OTHER than having assigned them prior to the SVN changes. Those cases were supposed to be caught by Koshling's new filter so I'll let him adjust that to suit.
Funny that Martial Arts I is a religious based promo... makes some sense I guess but I think there might now be better ways to address that prereq. You were losing MAII and III as a result of losing MAI (took away the promo prereq and thus collapsed the whole line.) You were retraining MAIII properly, but MAII must have somehow avoided being assigned and declared as free so was also indicating a retrain.
Honour as well somehow skipped being designated as free. How you WEREN'T able to retrain those in your first example as a result is a bit odder actually and I haven't seen how that could've taken place. There's a firm bracketing that binds the message to the same condition as adds a retrain to the unit. Let's just put it this way, this structure is not an easy one to make compatible with games in progress but should work just fine once the game works through the quirks that an update might create or through the course of a new game.
I'll hopefully push these 'fixes' to the SVN later today once I clean up another project I was in the middle of here.
Correct: Its just like before, all the archer(s) do there is "bombardment"(bm) but the others wont attack in the stack they just sit there

its BM, BM, BM, BM etc. no attacking.
That was how I remember it working originally, as a bombard mission just like how siege weapons operate. However, I think what you're trying to say here is that there should be a fix made to the DCM stack attack option that made it so that some Archer Bombard takes place against the defender when archers are part of the stack that attacks. That part of the code appears gutted from its original state so its going to be a matter of trying to rebuild the interior of those gutted sections. Stack Attack is potentially buggy from a number of perspectives too so its a bit of an all around effort to make sure the whole structure there is working as intended (and its quite large.) So I'll put that task on my priority list but its not on the immediate front burner at the moment.