TL;DR
When determining what color a lamp should be, it should select the color signal of highest value. The current system is a fixed priority that can only be found on the Wiki.What ?
When determining what color a lamp should be, it should select the color signal related to the strength of the color signal. Prioritizing the highest value signal is an easy to understand solution, and seems like a simple enough criteria to not incur a significant performance cost.Shown is an image of a lamp with a red signal value of 1, but a green signal value of 10 K. The lamp shows as red because according to the Wiki: (https://wiki.factorio.com/Lamp) red is given priority over all other colors. A proposed change would show the lamp as green due to it having a larger signal value.