You have to think about the process/build list nodes as a self-containing loop. This means that the hold nodes needs to be triggered from the loop itself in order to avoid flicker/unintended behaviour. So in order to get it to work, you would have to trigger the orange hold nodes from the orange process list "process item" port. However, I don't think that the process list is the best suited tool to do the task if I understand the build correctly.
If you look at the picture, the Xs mark where signals enter or leave a loop without a hold node, which will make things go bonkers.
As far as I understand it, the process list is intended to use to change items, i.e. if you input a 3D point list, you should expect a changed 3D list output. So when you then want to create a list of color items based on the 3D point list, the build list is better suited. This way you can pull the info from the original list, and create a new color list based on the attributes you set. To make it react to both set values, and an animated value, you can use the logic nodes && (AND) or || (OR) to merge which points it should react to (although at increased resource usage).
I don't think this has much to do with color spaces, rather color selection. The color in photoshop have a K(N) value of 0, which when using CMYK in VUO will render a fully saturated and bright color. It seems like Photoshop derives the grey value for the top 3rd of the spectrum from the amount of CMY, then starts exponentially adding K(N) from that point until reaching K(N) = 80 to 90 at the bottom (totally black). You can either adjust the black level manually (which probably won't produce the same color):
Or use a Make Hex Color node to get the desired result: