So what was your setpoint for the autotune process? Starting it at only 5 deg below SP is kind of shallow...maybe aim for 10 deg offset before you fire it up? Not sure why it's an issue that your PV was at 155 with the element pulsed every so often when you returned 45 minutes later...if your SV was 155 for the AT process, it should have then resumed holding 155 after AT finished, which would require pulsing every once in a while....
Most importantly, after you did your recent AT, have you brewed to see if it overshoots?
Shoot: reread your post. Ignore the stuff above. You want to start AT at a point BELOW the SV of the system. AT works by going into full proportional control, (P only, no I and D of the PID controller), and ramps the system UP to the SV until it hits it. Then the controller watches to see what the over shoot is, and lets the system drop back below the SV. Then it fires again, ramping up to SV and watching for overshoot, then letting it relax. It oscillates around the SV a few times, and uses the ramp and decay rates for the system to determine P, I, and D values.
So, to do an AutoTune, if your setpoint is at 150, start the AT when the system is at 140 or less. Run through AT again starting at a PV 10 degrees lower than the current system SV, and report back

.
Edit: reason behind this is PIDs are assumed to be making CHANGES to a system, not
just maintaining temp. So starting the AT process with PV=SV is useless. You want PV=SV-10 or more to start, so it can do what it thinks it should be doing, ramping the system to a new SV and then maintaining that new SV=PV. (this also gives you a controller well tuned to both hold PV=SV, and ramp PV up to a mashout temp of the {mash SV}+something).
Double edit: For clarity, PV = process value, (current temp of mash). SV = setpoint value, (temp you want the mash to be), AT = autotune....you probably knew this, but wanted to make it clear...I hate when people acronym the sh!t out of everything, but I do it too.