This is not a bug per se, but I do think it deserves a bit of attention. In the diplomacy screen, I can happily scroll through all of the AI's tech. This means that I don't have to spend a dime on espionage, or find out "the hard way" what military techs the AI uses.
This strikes me as a bit of a flaw. How am I supposed to be afraid of the Drengin or Yor when I know exactly what they're going to hit me with? How am I supposed to feel the risk of attacking someone when I know exactly what his weakness is? This knowledge should only be available via espionage and combat reports, in my extremely humble opinion.
I've also noticed that the AI will research a defense to counter my weapons, even if I've never fought him. This however is only a correlation and isn't anything I have a right to complain about, given how little time I've looked at it and how many factors exist that could cause this.
Proposed solution: Add a filter in the diplomacy algorithm that will hide all military technology from civs that are below a certain relation level (or maybe just all unallied civs). However, the hidden techs look different in the list and the player (human or AI) can make them visible during the interaction. Thusly the player keeps the ability to sell or give techs to whoever he wants, but cannot steal valuable military intelligence by seeing a list of every tech an AI knows.