This video explains it rather well, i was able to create a custom PCG Node from it.
They key concept would be to try to modify the incoming data, but to make a copy or new data, and build a PCGDataCollection with that to output.