MCPcopy Create free account
hub / github.com/RioArisk/claudecode_api_RemoteControl / maybeAttachPendingSwitchTarget

Function maybeAttachPendingSwitchTarget

lib/transcript.js:196–217  ·  view source on GitHub ↗
(reason, requireReady = true)

Source from the content-addressed store, hash-verified

194}
195
196function maybeAttachPendingSwitchTarget(reason, requireReady = true) {
197 if (!state.pendingSwitchTarget) return false;
198 if ((Date.now() - state.pendingSwitchTarget.seenAt) > 15000) {
199 log(`Dropped stale pending switch target: ${state.pendingSwitchTarget.sessionId}`);
200 state.pendingSwitchTarget = null;
201 return false;
202 }
203 if (state.pendingSwitchTarget.sessionId === state.currentSessionId) {
204 state.pendingSwitchTarget = null;
205 return false;
206 }
207 if (requireReady && !fileLooksLikeTranscript(state.pendingSwitchTarget.full)) {
208 return false;
209 }
210 const target = state.pendingSwitchTarget;
211 state.pendingSwitchTarget = null;
212 log(`Attaching pending switch target from ${reason}: ${target.sessionId}`);
213 if (state.tailTimer) { clearInterval(state.tailTimer); state.tailTimer = null; }
214 if (state.switchWatcher) { clearInterval(state.switchWatcher); state.switchWatcher = null; }
215 attachTranscript({ full: target.full }, 0);
216 return true;
217}
218
219// ============================================================
220// Transcript Attachment & Tailing

Callers 2

markExpectingSwitchFunction · 0.85
startTailingFunction · 0.85

Calls 3

logFunction · 0.85
fileLooksLikeTranscriptFunction · 0.85
attachTranscriptFunction · 0.85

Tested by

no test coverage detected