Bill, I beg to respectfully differ, knowing that I'm just a researcher and working `for real' like you guys, so pls take no offence.
I don't think A would be right to filter these packets to
10.0.1.0/24; A has announced
10.0.0.0/16 so should route to that (entire) prefix, or A is misleading its peers.
You are right that it is wrong but it happens. Some years back I tried a setup where we wanted to reduce the size of the routing table. We dropped everything but routes received from peers and added a default to one of our IP transit providers. This should have been ok because either we had a route to a peer or the packet would go to someone who had the full routing table, yes?
So we got complaints. One was a company who would advertise a /20 on a peering with us. But somewhere else far away they had a site from where they would announce a /24 from the same prefix. With no internal routing between the peering site with the /20 to the other site with the /24. We therefore lost the ability to communicate with that /24.
You see variants of this. For example a large telco has a /16 from which they many years ago allocated a /24 to a multihomed customer. This customer left but took their /24 with them. This fact will seldom make the large telco split up their /16. They will keep it as a /16 but will no longer route to that /24. The question is also if we really would want a large telco to explode a large subnet due to this case.
Regards,
Baldur