{"version":"2.1.246","anchor":"session-state-reports-idle-instead-of-running-when-the-main-","canonical_anchor":"session-state-reports-idle-instead-of-running-when-the-main-","heading":"Session state reports idle instead of running when the main loop is not working","tier":"notice","area":"SDK","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.246\/e\/session-state-reports-idle-instead-of-running-when-the-main-","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.246","markdown":"### Session state reports idle instead of running when the main loop is not working\n\nSession state now reports idle rather than running when the main loop isn't actually working.\n\n**What**\n\nAfter the last pending permission or dialog request clears, the session used to always report `running` to anything watching session state, including SDK and remote clients. It now asks an optional liveness callback first and reports `idle` when the main loop says it is not live.\n\n**Details**\n\n- The callback is optional; when it is absent, behaviour is exactly as before.\n- Affects consumers subscribed to session state change notifications, which previously saw a spurious busy state after a prompt was answered.\n\n**Evidence**\n\n`mainLoopLiveness`\n\n- Area: SDK\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 2\/5"}