It's a commonly encountered bug that pumps, pipes, and liquid vents destroy liquids. For example, a loop consisting of: pump1->pipe1->vent1->back to pump1 will slowly destroy the entire contents of the tank. I did some testing to determine whether this was caused by the pump, the pipe, or the liquid vent, or some combination of both. I believe that the pump that is destroying 1.06% of each water tile.
My test methodology is shown in the attached picture. One tile of water is 1000 kg. Each packet of water that flows through a pipe is 10kg, resulting in 100 packets per tile of water. Using the debug tools, I created a pump with a 100-tile long pipe and an output tank. To test the liquid vent, I filled the pipe with 100 packets of water (approximately 1000 kg, or 1 tile), and removed any extra water from the input using the debug tools (The pump and vent must be connected for liquid to flow in the pipe. I measured the volume of water dumped in the output tank, which was 6 squares of 165.5-167 kg each, or approximately 1000 kg, which is about what should be expected.
Next, I destroyed the entire system (to delete any water stored by the pump or vent). I put 1 tile of water (1000 kg) in the pump, and disconnected the outlet when all of the water had been consumed (see picture). While 1000 kg of water was available, the pump left 62.2 grams (intaking 999.9378 kg of water). The pump put 101 packets of water into the pipe. Each of the packets were 10 kg, except for 5 packets, which were 5 kg (#51), 7.5 kg (#63), 7.5 kg (#73), 7.5 kg(#83), and 1.825 kg (#101). Thus, for reasons unknown, a total of 10.675 kg of 1000 kg (1.0675%) of the water tile was missing. Noticeably, three of the five occurred every 10 packets (#63, #73, and #83). It would appear that for some reason, the pump does not always grab all of the available water, or destroys some of the available water.
I tested the pipes for leakage using a liquid filter and series of pipes that looped contaminated and clean water in a closed-loop without a pump or vents. It did not appear that fluid was created or destroyed.
I hope this testing is helpful in narrowing down the issue causing this.
The save file is attached.
[Edited to correct math -> 10.675/1000 = 1.0675%]
Create a pump connected to a 100-tile long segment of piping and a liquid vent. Provide 1 tile of water (1000 kg) to the pump. The amount of water the pump inserts into the pipe is demonstrably less than the water removed from the environment by the pump.