Move push matching and reporting logic into transport.c