Some more minor issues I came across:
I besieged this one city with a culverine and two cavalrymen (and some melee units) in my stack, I firststrike attacked with the culverine and the first cavalryman, but couldn't firststrike attack with the second one. Then I did a normal attack with the first cavalry and suddenly I could firststrike attack with the second one again... quite odd. (Also have screenshots if you need'em)
...
And now it just worked with cavalry firststrike attacking after each other :S
The second screenshot shows my knight whose commander has motivation1 being able to bombard city def. x)
If you can firststrike or not depends on the basic firststrikes (!) of your FSA unit and the best enemy defender. Promotions are ignored for the decision if can or can not. Just the final damage depends on them.
So if you hurt the current best enemy defender with another unit it may be possible that the unit that was unable to FSA this old best defender before is now able to hurt the next new best defender. Maybe this was the problem here..
If you can or cannot depends on the weapon range and also the basic FSA chance. That's almost the same. If both have 2 basic FSAs it will not be possible to attack (if the real weapon range is 0 plots). If you are in range to attack you are also in range to be hit by the defender. But that's a common combat and not a FSA! So there must be a real chance for a firststrike! If both got 1-2 FSAs there is a chance of 25% to be able to FSA. That's the reason why you often see a message that a unit XY was not able to hit the defender. The capabilities and the positioning of the defender was equal or better.