{"version":"2.1.267","anchor":"conversation-now-tracks-its-own-origin-local-vs-remote","canonical_anchor":"conversation-now-tracks-its-own-origin-local-vs-remote","heading":"Conversations and sessions now track whether they originated locally or remotely","tier":"internal","area":"Sessions","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.267\/e\/conversation-now-tracks-its-own-origin-local-vs-remote","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.267","markdown":"### Conversations and sessions now track whether they originated locally or remotely\n\nSession state now tracks whether the current conversation originated locally or remotely\n\n**Unclear.** What behavior differs based on this origin tracking, beyond restoring frame\/artifact state, isn't detailed.\n\n**What**\n\n- `SessionController` gained `conversationOrigin` and `preClearOrigin` state; resetting a conversation now records the prior origin and resets `conversationOrigin` back to `\"local\"`.\n\n- A new `markConversationRemote` callback was wired into the query-event context and threaded through the main session-loop context object.\n\n- A Stop-hook path calls `markConversationRemote` to set the session's `conversationOrigin` to `\"remote\"`.\n\n**Why** This lets Claude Code distinguish conversations that originated remotely from local ones, which other logic (such as artifact-state reconstruction) can use to handle them differently.\n\n- Area: Sessions\n- Tier: Under the hood\n- Useful: 2\/5\n- Signal: 3\/5"}