Mystery solved (again) (maybe) - they checked my idle motor and the part where it plugs in was wobbly so it was getting a flaky connection. They replaced it with a new one and it tested good so they're going to try cold-starting it tomorrow morning and see how it does.