You've made some nice additions and clarifications there. =) The one thing I have to add is figuring out what to do with two situations...
Situation 1: What if part of the combatant's planned attack chain can't be used?
Battle Mage (BM) is going to use magic, then a physical attack. However, before BM can attack, the enemy casts "Silence" to stop magic use. Now which of these happens:
A) BM fails to use magic, but performs the physical attack
B) BM's magic fails, so the chain stops
C) Since BM can't use magic, she does something else automatically (like defend or base attack), then the physical attack
D) She does something else automatically, then the chain stops
C is the most similar to what happens right now in ORK if an enemy combatant can't use any of the abilities in its AI, so that might be the best option.
Situation 2: What if being able to meet Use Costs (or Use Requirements) would change during the ability chain?
Wizard has 15 MP and wants to cast Fireball (10 MP), then use a Magic Potion (restores 5 MP), then cast Fireball again. So what happens:
A) ORK calculates in advance that two Fireballs would cost 20 MP, but since Wizard only has 15, he can't pick these three actions
B) ORK only looks at the cost of each individual Fireball and compares it to Wizard's current MP, and since Wizard still has 15 until after the turn begins, he can pick these three actions
C) Some other solution I haven't thought of yet
The advantage of A is that a player will never accidentally string together unusable abilities, but the disadvantage is that the Fireball->Potion->Fireball plan can't be used even though it makes perfect sense in the player's head. B is the opposite... the plan that makes sense can be used, but you can also use plans that don't work (like trying three Fireballs in a row).
If I had to choose, I'd probably rather have B than A, but I could go either way.
I'm a very amateur programmer, though, so I have no idea if these are legitimate tricky situations to someone like GiL or if I'm just overthinking stuff. :P