This seems potentially dangerous (at least given how I know things to have worked previously; haven't reviewed the deferred signing/incrementing code yet). The purpose of setting the UUID as a function of the device ID and counter is just as a way to get a unique uuid (since a counter is never repeated for a particular device). If the counter is only temporary, the same counter might later be used for a different model on the same device, leading to a UUID conflict.

Hmm, but since you're incrementing the device's counter position to get a counter, and then discarding the counter, I guess the idea is that the counter value is just "wasted", and won't be used again? In that case, it's not dangerous, but it would be cleaner to just swap out the way the base `get_uuid` works, to generate a totally random uuid, using `uuid.uuid1()`.