As rules are added to a KnowledgeBase and kept in the deployment-cache on a per-deployment basis. When a rule-task is executed, a state full knowledge-base is created of this shared one. There is currently no mechanism that supports rules to be shared cross-deployment or system-wide.
I guess the reasoning behind this is quite simple: The rules that go with a process are bundled together. If a developer would update one of the two parts (process or rules) , both resources are deployed again. If another process would use the same rules, deploying a new version of the rules would potentially break the existing process-definition, which is not redeployed and could be using rules that aren't in the new deployment anymore. Also, when existing "processes" are running and a new process/rule-set is deployed, the old processes will keep using the "old" rules, as the new processes will us the rules in the new deployment.
You could always try to alter the behavior of the BusinessRuleTaskActivitybehaviour to include additional KnowledgeBase(s), but this required modifying activiti source-code.