Reset Transistor: Soldering/Coding advice

tells the record function to keep recording until the button is pressed.

No, it does not. It says "Do nothing forever, if PSKey is 0.". Fortunately, for you, PSKey appears not to be 0. If that while loop is to do what you think, there needs to be a digitalRead() statement involved somewhere.

I think Record(); refers to record.h.

But, you are still calling it before activating the shield reset mechanism. You also still have that silly while(0) statement.