It would seem that it is should be possible to call changeset/nnn/download post an upload with unclear status (that is no HTTP error code received and connection was established) and match newly created OSM elements with those that you uploaded with template (aka negative) ids.
If they match (that is location and tags are the same), you know that the upload succeeded and you can then either
patch the ids (potentially with manual confirmation) and then re-download the data to update modified and deleted objects if you have further changes to upload,
or
if you have no further changes, discard the local edits and re-download the current data (if you were not creating any new objects in the first place, you should always choose this).
Musing yet another time about https://github.com/openstreetmap/openstreetmap-website/issues/2201
It would seem that it is should be possible to call changeset/nnn/download post an upload with unclear status (that is no HTTP error code received and connection was established) and match newly created OSM elements with those that you uploaded with template (aka negative) ids.
If they match (that is location and tags are the same), you know that the upload succeeded and you can then either
or