Ok...back from grocery store doing last minute Thanksgiving shopping.

There is a workspace register for every instruction which stores the powerflow state from the prior invocation of that instruction. When powerflow is true and previous is false, the contact in energized for that execution of the instruction. In loops, the instruction is executed as many times as the loop spins, so each pass looks like a new scan, but after the first invocation, prior and current are both true.
A single source value (like .Done) will trigger every contact it is used in, since there is a workspace for every instance of a PD contact, but only the first time that instance is invoked following the input state transition.
Clear as mud?