Game version:
Build #11168
Operating system:
Windows 10 64-bit
Tiles or curses:
Tiles
Mods active:
Disable NPC Needs
No Fungal Monsters
SpeedyDex
Stats Through Skills
Container fills with two types of water and perhaps averages the temperatures.
Option to unload water into container does not show up if container has different temperature water than what you're trying to unload.
Fill any portable container partially with water (cold).
Attempting to further fill it with anything but water (cold) is impossible.
The (U) Unload menu the option is there.
Pouring water (cold) into bottle with normal water:

Latest experimental build 11168.
Confirmed in 0.E-7587-g8d87f156b9 - however, I am not convinced the temperature has anything to do with it.
In my inventory I have some clean water (cold) in a gallon jug, and some clean water (not cold) in a plastic bottle:

The gallon jug has only one 0.25L serving of clean water (cold), plenty of room for more:

When I select the clean water (plastic bottle) and Unload, choosing to "Pour into a container":

The only container I can put it in is my empty plastic bottle. The gallon jug of clean water is not available, despite having enough remaining volume:

However, if I wait an hour until all the water is the same temperature, I still cannot Unload the plastic bottle's water into the gallon jug. And if I put them both in a refrigerator until they are both (cold), even then I cannot combine them into the gallon jug.
Edit On further testing, I am surprised to see this bug only seems to affect clean water. If I use salt water instead, I can combine them into a gallon jug via Unload, regardless of temperature. The same is true of tomato juice.
Edit again And now I may be going mad, because after juggling all these liquids around in my RV's minifridge, I can now combine multiple bottles of clean water in a single gallon jug or plastic jerrycan.
If you enable debug mode and look at the water are there any extra tags, variables or other differences on them?
Edit: Clean water from debug menu has tags "EATEN_COLD" and "NO_REPAIR". Clean water that was crafted has no such tags. The spawned clean water also shows different satiety level. The "made from" attribute is also missing from spawned water.
I don't think that kind of tag differences should ever happen.
Spawned clean water:

Cooked clean water:

The attached savegame has a reproduction case. Player has 1 sealed plastic bottle of clean water, and 2 partially-full gallon jugs of clean water:

If you attempt to Unload the sealed plastic bottle, neither of the gallon jugs is eligible for filling, though they have room.
Using debug mode, I can confirm that the water in the gallon jugs is EATEN_COLD and NO_REPAIR, while the water in the plastic bottle has neither of those flags.
All of the water and other liquids I have tested with were spawned from the debug menu.
Savegame .zip: water-unload.zip
Possibly related #45191
So the problem is that naturally generated liquids are different from crafted ones?
Yeah. The game asks if the 2 liquids can be stacked together. One condition it checks are the flags of the 2 items:
https://github.com/CleverRaven/Cataclysm-DDA/blob/c764d46aac54e9bf2a7a7d52ab244373e6cdd876/src/item.cpp#L972-L978
Here you can see it compares all the flags except the flags for hot, cold, or frozen. Since the debug water has extra flags, this returns false.
So to fix this, either modify this code. Or change the way debug spawning works.
After some investigation, I see that the debug-menu spawned item instances have all the item type flags explicitly added to them since #44675. The instance flags can be removed by pressing F before spawning the item, and deleting the flags:

When testing with liquids spawned in this way, they work as intended - hot and cold water can be mixed in the same container, since they do not have any conflicting instance flags.
Liquids spawned in the game world - water from a puddle, clean water from a water heater tank, mead or moonshine from a barrel - as well as crafted liquids, correctly have no instance "tags" shown (since the flags are inherited from the parent item type), and in all of my testing so far, can be mixed in the same container regardless of temperature.
In other words, I believe now this is working as intended, and there is no bug. Would like to know if anyone can reproduce this issue using only in-game spawned liquids, or with cleared instance flags using F from the debug item spawning screen.