when forwarding variables to sub-jobs or transformations, if one those declares the same variable name as a parameter, the variable doesn't cascade, making it impossible to forward these.
if you consider making some Transformations as Interfaces, explicitly declaring the parameters, it just wouldn't work with the current parameter/variable handling.
I'm attaching a sample showing the problem. It should output 123, but it outputs abc which is the default parameter value that doesn't get re-written. My suggestion for future releases is to make parameter and variable handling homogeneous.