{"version":"2.1.236","anchor":"cloud-sessions-announce-their-disconnect-instead-of-timing-o","canonical_anchor":"cloud-sessions-announce-their-disconnect-instead-of-timing-o","heading":"Cloud sessions announce their disconnect instead of timing out","tier":"notice","area":"Cloud Sessions","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.236\/e\/cloud-sessions-announce-their-disconnect-instead-of-timing-o","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.236","markdown":"### Cloud sessions announce their disconnect instead of timing out\n\nCloud sessions now report a clean exit right away instead of leaving the server to notice missed heartbeats.\n\n**What**\n\nWhen a remote worker session shuts down it now tells the server it is going, by sending a `\/worker` update with `connection_status: \"disconnected\"` and the current worker generation number. Nothing gates this, so on a cloud or remote session in this build a clean exit is reported immediately rather than being inferred from missed heartbeats.\n\n**Details**\n\n- Skipped while a turn is still running, recorded as `cli_worker_goodbye_skipped_mid_turn`.\n- Skipped entirely when the caller passes `{ goodbye: !1 }`, which the internal rewire and reconnect paths do, so a reconnect does not look like a disconnect.\n- Successful sends are recorded as `ccr_worker_goodbye`.\n- The bridge teardown waits on a flush accessor before exiting, so the process does not die before the update lands.\n\n**Evidence**\n\n`cli_worker_goodbye_skipped_mid_turn`\n\n- Area: Cloud Sessions\n- Tier: You'll notice\n- Useful: 2\/5\n- Signal: 2\/5"}