I this is both expected and a bug :D
There is an option to disable port security for a Network. This is potentially the right thing in a world where Tooling here is really Toolforge and we want ferm/iptables to manage rulesets and not be overlapping with security groups. If this is its own VXLAN network that could make sense.
So to test this I issued:
# optional mass turning off of port-security mode for a network
neutron net-update --port-security-enabled=false <net uuid>
This documented in modules/openstack/templates/bootstrap/neutron/neutron_seed.sh.erb
I don't recall doing anything special to create the existing instances so that's interesting, and this seems not to happen if we first make a port with security groups disabled and then attach an instance. So in general I think this is just mismatched expectations between nova and neutron when security groups are disabled for an entire network. There a few known upstream reports of similar things.