AFAIR it is explicitly stated in the docs that forks can have only 1 incoming transition... Am I wrong about this? Has this changed in the meantime?
According to the docs at http://docs.jboss.com/jbpm/v3/userguide/processmodelling.html#nodetypefork
9.3.5. Nodetype fork
A fork splits one path of execution into multiple concurrent paths of execution. The default fork behaviour is to create a child token for each transition that leaves the fork, creating a parent-child relation between the token that arrives in the fork.
I can't find anything else in the docs that says explicitly one incoming transition.
Now, it says "splits one path of execution". I don't know if that means explicitly "can only have one incoming path". Because if you have two incoming paths, it will split each path. So it splits that path of execution.
I force fed the xml the multiple transitions to the fork, and jBPM works properly when running the workflow.