Since it is a shield, this is how I would code it:
Integrity Value: The number of creatures on your side of the field [Empathic Bond, Hope, etc.]; set at the end of the turn.
Integrity Counter: The number of attacks that your opponent has already done; set at 0.
Miss Chance: The rate of...missing [40% for Fog Shield, 50% for Dusk Mantle, 100% for Phase Shield, etc.]; set at 0%.
Each time a creature attacks:
If Integrity Value > 0:
If Integrity Counter < Integrity Value:
Miss Chance = 0%
If the creature's attack is successful:
+1 to Integrity Counter
Else:
Miss Chance = 100%
Else:
Miss Chance = 0%
This may or may not be how anyone imagined the mechanic would work, but I think this would make the most sense given the current state of the game. Since momentum, spell damage, and negative damage ignore shields, I don't see why they should affect Integrity.