Running latest citizens build on a spigot 1.20.1 server. I created an NPC, set its type to shulker, and set it to vulnerable. I punched the shulker, and it took damage the first time, then afterwards it would not take damage again when attacked again.
In testing to see if I can fix the issue, it also will not attack when giving it the sentinel trait (and shulker shell item to use the proper projectile) after taking damage, and if it dies on the first hit of damage (being one-shot, or set to 1 max health) it turns red, falls over like a death animation, and gets stuck with its corpse on the ground. No longer respawns when forced, cannot be selected through "/npc sel" even when using ID, or removed with "/npc remove" when previously selected. I don't think sentinel is causing the problem here since a regular npc is having issues as well, but figured I'd mention it just in case.