Sinmage
Velthorian
This is by design, to prevent afk farming. It's because you have your pet on defensive, and it killed something you didn't have an input on. In order to be eligible for loot/experience, you must give an input. It does not matter if your pet does 100% damage, there simply must have been player input on the mob somewhere at some point during the fight. It can be you doing 1 point of damage even, or casting a spell that gets resisted, or just telling your pet to attack that target.
An example scenario to explain it clearly:
3 green mobs your pet can easily solo. Your pet is on defensive. You use Pet Attack for your pet to attack Mob A. Mob C hits your pet a few times and forces your pet to start attacking it, because it is on defensive and not passive. Your pet turns and starts attacking Mob C. You cast a debuff on Mob B, and your pet turns to attack it once on its own, before turning back to attack Mob A. Then, you stop doing anything. Your pet kills Mob A, turns and kills Mob B, and then Mob C.
Results:
Mob A dies and has a lootable body, because your told your pet to attack it.
Mob B dies and has a lootable body, because while you didn't tell your pet to attack it, you did cast a spell on it.
Mob C dies and the body disappears, because you never interacted with Mob C, and it died with no player input.