JID must match exactly in Presence packet?

I’‘m playing around with using Jabber as middleware and layering services on top of it. As part of that work, I’‘ve been embedding information into the resource part of the JID (e.g. userID@server/device/to=service). That approach has been working fine for message and IQ packets, but after some experimentation I’‘ve discovered that Wildfire won’‘t deliver presence packets unless the JID exactly matches the one used to log in. In other words, presence packets sent to userID@server/device (the JID the user authenticates with) will arrive fine, but packets sent to userID@server/device/to=service vanish into the ether. Is this a bug or a feature? If the former, is there any way to trick the server into delivering those packets? If the latter, I’'ll just code my way around it.