I'd have been inclined to dismiss this as a fluke incident, since such things do tend to happen after all when the game is played long enough, but there are couple of reasons I don't, especially after the debug log analysis by people who understand it better than I do..
I'd be interested in what system you are playing on, Beorne. Is it Windows? Because if it is, there may be two different issues here.
The first one would be whether or not there is a calculation error in the Dom3 routines when dealing with large numbers (negative or positive). The second, which may or may not be tied to the first, is a problem with Windows itself. Whether the second problem is relevant depends on if Dominions3 uses its own random number generator or if it relies on the default random number generation method of the operating system it is installed on.
This article on how the
Windows RNG is flawed is the one where I got that idea. If Dom3 relies on the default OS RNG, then on Windows system this non-random behavior on the RNG would translate into non-random behavior in Dominions and could cause problems. Especially if there is also some sort of calculation bug in Dom3 to boot. The Windows RNG problem could also explain some of the battle review inconsistencies between systems that have different operating systems (e.g. different outcome according to battle review in Linux and Windows).
Of course, all of the above goes with a veritable mountain of salt, since my knowledge of both programming and cryptography is at a very basic and rather non-practical level. But it IS a possible explanation, even if a farfetched one.
In any case, it requires some real looking into, which would be JK's province.