You may want to read some or all of these:
thread605-603289
thread605-588858
thread605-554303
thread605-357883
thread605-535781
thread605-536076
thread605-622815
thread605-635096
MoiraT is correct, All mail rules are processed (in the order listed) for every message received unless a 'stop processing more rules' is encountered. Generally, when someone complains that the rules are sometimes working and sometimes not, it is because more than 1 rule is acting on the message - so the rule doesn't apply the way one would expect. Also as MoiraT mentioned, manually running a particular rule runs only that rule, so multiple rules are not applied and the behavior is what you'd expect.
Find a message that doesn't work the way you expect, then very logically and systematically read through your entire set of rules to see if more than 1 applies to this message.