What if the internet is available, but is very slow? What if the internet is available, but the host at the other end isn't? What if there's an error that causes the upload to repeatedly restart? What if...?
If you could guarantee that a shutdown would be delayed for a few seconds, or maybe a minute, I'd be fine with it. Otherwise, the reason I shutdown was so that my device will be available at the other end. You can finish the sync when I turn it back on.
I don't think it's too much of a stretch to imagine that the real life analog of my pseudocode "if (Internet.Connected)" would likely be a bit more robust than my rant on a message board. Like, maybe it would check to see if the write target is actually accessible. Really, that particular objection is at the level of "How can solar power possibly power a town? The sun sets at night."
As far as "What if it's slow?" If it's too slow to be workable, the user can turn the proposed optional feature off.