It looks like the source_entity advancement trigger condition exists twice:
"conditions": { "damage": { "source_entity": { }, "type": { "source_entity": { } } } }