What
Both halves of the remote session channel now recover on their own when the server refuses a request because the device is not trusted. Uploading session events and opening the live event stream for a remote session each re-enroll a trusted-device token and try again, so events are no longer dropped and the stream no longer surfaces a connection failure.
Details
- An event upload rejected for an untrusted device re-enrolls the token and retries the request once, logging
[SessionsV2Client] untrusted_device on POST — re-enrolled, retrying. - A live event stream refused for the same reason re-enrolls and reconnects, logging
[SessionsV2Client] untrusted_device on SSE connect — re-enrolled, reconnecting. - This sits alongside the existing recovery on an HTTP 401, where the client refreshes credentials and retries.
- Event posting was consolidated into a single helper so the untrusted-device and credential-refresh paths share one code path.
Evidence
[SessionsV2Client] untrusted_device on POST — re-enrolled, retrying, [SessionsV2Client] untrusted_device on SSE connect — re-enrolled, reconnecting
Strings lifted out of the shipped bundle, so the claim above can be checked against them.