This isn't a bug. When executing a remote simulation, simfactory does not "cd" into the cactus directory unless --remotecactuspath is specified. If that argument is not specified with the location of the cactus source tree, simfactory changes into the sourcebasedir of the remote machine before executing a command.
SimFactory knows the location of the Cactus directory from the local current directory and the local sourcebasedir. SimFactory should cd into the corresponding directory on the remote machine as it is on the local machine, so that the same relative path names can be used on all systems. Performing an operation on a remote system should be as transparent as possible, i.e. should be as similar as possible to performing operations on the local system.