Bug has been reported as
http://www.bay12games.com/dwarves/mantisbt/view.php?id=368.
In my latest game it's triggered by having ambush squads with ex-abductees. Once humans or dwarves spawn inside the squads, some bug makes nearby goblins hostile to them. Once a goblin hits his squadmate, he is now an enemy of his civ, and the other squadmates pile on him. This is a loyalty cascade.
If two goblins in the same squad are from different towns (i.e. members of two different subgroups within the civ) then the subgroup also becomes an enemy of the parent civ (goblin civil war!). For example in my last game, I have a goblin civ called The Dread Trails, and this civ owns a town, Scourgeyouth which was founded by The Clean Malice.
A human ex-abductee from The Clean Malice is killed by his squadmate, who is not from The Clean Malice (from some other town) but is also a member of The Dread Trails. Once he commits the murder, goblins from The Clean Malice will hit him in revenge. Once he dies, The Clean Malice is now an enemy of its parent civ The Dread Trails.
For every ambush squad after this, if there is a member of The Clean Malice mixed into one of the squads, the killing will commence. I believe this will continue until The Clean Malice is wiped out and no longer contributes goblins to invading squads. (In my game, after five or so years, ambushes reverted to normal and were no longer killing each other).
All this can be verified in Legends mode after abandoning the fort. I saw lots of "has become an enemy of The Dread Trails" and "has become an enemy of The Clean Malice" messages when examining the goblin ambushes that started it all.