Even stranger, when i just connect a HSL (Color Join) to a color IOBox, then adjusting for example Saturation in the HSL Node will change Saturation and to a certain extend also Lightness and sometimes Hue. Almost like it is turning it into RGBA and then back to HSL (badly).
regarding your second concern, please note there is a difference between HSL and HSV color models, see: colors
you’re using HSL nodes with the IOBox that displays HSV. and in your last example (from the patch) the hue does not turn out correctly after the split because a color with 0 saturation has no hue defined. therefore in this example you cannot expect to get any specific hue out of the split.
alpha blending is a multiplication of the color channels with the quadalpha value, in theory with infinite high resolution numbers this will never reach 0 but will get as close to 0 as you want, its an asymptotic behavior which has a high slope at the beginning but gets slower and slower when it comes near 0.
but of course we do not have infinite resolution, the normal texture format is RGBA with 8 bit per channel. that is a super low resolution, only 256 steps for each channel. there is 0 and the next step is about 0.004 then 0.008 and so on. so the value just gets stuck after a short while and the calculation is the same in very frame.
a simple solution is to render into a DX9Texture and set the color format to 16 bit per channel. this will get so close to 0 that your (low res) monitor will display it as 0 as it is below 0.004, see patch: