I can't figure out what the limitations are for trading technologies to my human ally. At first I had a large list of techs to give him. Since we are doing a co-op vs AI we decided to research in different trees and just trade each other new techs. After several turns of this the game stopped letting me trade him tech even when I had just finished something that I knew he didn't have. Can anyone shed some light on this?
The reason is that you can't trade each other unique, faction-specific techs. Techs whose graphic icon in the research tree have an orange tint to them are unique. They may not be unique specifically to your faction, but if your trading partner does not have a tech of the exact same name in their tech tree (and theirs has to be orange tinted, too), you will be unable to trade it.
Different factions (or affinities, if you're using custom races) have essentially "the same" tech tree, except that each affinity has a unique subset of the tech tree baseline that's been "enhanced" to be better than the default tech in some way. I'm not sure if there's any overlap between the affinities, and if so whether you can trade these unique techs between different affinities that share the exact same unique tech, but I know that it isn't possible if the tech isn't orange on both of your trees.
You also can't trade someone a tech if they don't meet the dependencies for it. Just like when you're researching techs by yourself, you need to have a line connecting to the tech in order to be able to acquire it. So if you have an orange tech with lots of things that depend on it, you need to tell your ally to research the "normal" version of that orange tech on his side; once he does that, you can give him all the techs you've researched beyond it.