The only thing I can think of that would cause limp as soon as the engine starts is the input speed sensor giving an implausible reading. Or, the TCU thinks it's been started in gear if the cable is incorrectly adjusted and just tweaking the switch out of P. The input speed sensor going from 0 to idle rpm would certainly be implausible if the TCU thought it was in gear.
Need those codes
Also worth checking VCDS to see what gear the TCU thinks is selected before and during fault conditions.
Note to self: TCU's don't think. Don't anthropomorphise machines - they don't like it.