how do we ascertain that the bitcoin network [...] is one connected graph
Problems paying people.
The senders and recipients in transactions are people who make contact using non-bitcoin protocols - for example HTTP websites, SMTP email, chat, in-person, by phone.
Therefore if the Bitcoin network were fragmented we should expect that pretty soon a person ...
I don't believe this is exposed via the JSON-RPC API.
The easiest method would likely be to have a program monitoring debug.log and look for the best height update messages - they will be a few milliseconds off, since I believe those are only logged after block validation has succeeded, but it is likely the closest you can get to a per-node block receipt ...
Am I obligated to share transaction details with my wallet/exchange provider for any payment I made to an individual, like subscription to a website?
A proper noncustodial wallet will impose no such restrictions.
A business that is running a wallet service might impose restrictions though. So this question really just depends on the terms of service / ...
It turns out the main issue with the above code was that the the endianness in python was defaulting to my hex payload being mixed up. I simply needed to correct the ordering of the payload. The correct code can be viewed here: https://github.com/dummytree/blockchain-botnet-poc/blob/master/MalwareManager.py#L284-L299