diff --git a/extension/gravity-bridge-0.2.0.vsix b/extension/gravity-bridge-0.2.0.vsix index aa0672f..9581599 100644 Binary files a/extension/gravity-bridge-0.2.0.vsix and b/extension/gravity-bridge-0.2.0.vsix differ diff --git a/extension/out/extension.js b/extension/out/extension.js index 2db2501..c47f4e0 100644 --- a/extension/out/extension.js +++ b/extension/out/extension.js @@ -282,13 +282,15 @@ function activate(context) { }); } let pollFailCount = 0; + let pollCount = 0; async function pollConversations() { if (!lsPort) { return; } - if (pollFailCount > 3) { + if (pollFailCount > 10) { return; } // stop after repeated failures + pollCount++; try { // Use getDiagnostics to get cascade-level conversation IDs const diag = await vscode.commands.executeCommand('antigravity.getDiagnostics'); @@ -302,64 +304,78 @@ function activate(context) { } const isFirstPoll = Object.keys(lastStepIndex).length === 0; if (isFirstPoll) { - console.log(`Gravity Bridge: [LS] ${trajectories.length} recent trajectories from getDiagnostics`); - const latest = trajectories[trajectories.length - 1]; - console.log(`Gravity Bridge: [LS] latest: ${JSON.stringify(latest).substring(0, 400)}`); + console.log(`Gravity Bridge: [LS] ${trajectories.length} trajectories from getDiagnostics`); } - // Check the most recent trajectory for step count changes - const latest = trajectories[trajectories.length - 1]; - const agentId = latest.googleAgentId || ''; - const trajId = latest.trajectoryId || ''; - const stepIdx = latest.lastStepIndex ?? 0; - if (!agentId && !trajId) { - return; + // Periodic debug every ~1 min (12 * 5s) + if (pollCount % 12 === 0) { + const summary = trajectories.map((t) => { + const id = (t.googleAgentId || '').substring(0, 8); + return `${id}:s${t.lastStepIndex ?? '?'}`; + }).join(', '); + console.log(`Gravity Bridge: [LS] poll#${pollCount} — ${trajectories.length} trajs: [${summary}]`); } - const key = agentId || trajId; - const prev = lastStepIndex[key]; - if (prev === undefined) { - // First poll — initialize - lastStepIndex[key] = stepIdx; - console.log(`Gravity Bridge: [LS] initialized ${key.substring(0, 8)} at step ${stepIdx}`); - return; - } - if (stepIdx > prev) { - // New steps detected! Try to fetch them - console.log(`Gravity Bridge: [LS] ${key.substring(0, 8)} new steps: ${prev} → ${stepIdx}`); - const attempts = [ - { method: 'GetCascadeTrajectorySteps', params: { googleAgentId: agentId, trajectoryId: trajId, startStepIndex: prev } }, - { method: 'GetCascadeTrajectory', params: { googleAgentId: agentId, trajectoryId: trajId } }, - { method: 'GetCascadeTrajectorySteps', params: { conversationId: agentId, trajectoryId: trajId } }, - ]; - let stepsResult = null; - for (const attempt of attempts) { - const res = await lsRPC(attempt.method, attempt.params); - if (res && !res.code && !res.message?.includes('not found')) { - stepsResult = res; - console.log(`Gravity Bridge: [LS] ✅ ${attempt.method} worked!`); - console.log(`Gravity Bridge: [LS] keys: ${Object.keys(res).join(', ')}`); - console.log(`Gravity Bridge: [LS] sample: ${JSON.stringify(res).substring(0, 800)}`); - pollFailCount = 0; - break; - } + // Check ALL trajectories for step count changes + for (const traj of trajectories) { + const agentId = traj.googleAgentId || ''; + const trajId = traj.trajectoryId || ''; + const stepIdx = traj.lastStepIndex ?? 0; + const summary = traj.summary || ''; + if (!agentId && !trajId) { + continue; } - if (stepsResult) { - const steps = stepsResult.steps || stepsResult.cortexSteps || stepsResult.cortex_steps || []; - if (Array.isArray(steps) && steps.length > 0) { - const newSteps = steps.slice(-(stepIdx - prev)); - extractAndRelaySteps(newSteps); + const key = agentId || trajId; + const prev = lastStepIndex[key]; + if (prev === undefined) { + // First time seeing this trajectory — initialize + lastStepIndex[key] = stepIdx; + if (isFirstPoll) { + console.log(`Gravity Bridge: [LS] init ${key.substring(0, 8)} at step ${stepIdx} "${summary.substring(0, 30)}"`); } - } - else { - // All attempts failed — try writing the summary as a fallback - const summary = latest.summary || ''; - if (summary && summary !== lastStepIndex[key + '_summary']) { - writeChatSnapshot(`[AI 대화 요약]\n\n${summary}\n\n(step ${prev} → ${stepIdx})`); - lastStepIndex[key + '_summary'] = summary; - console.log(`Gravity Bridge: [LS] relayed summary fallback: ${summary.substring(0, 100)}`); + else { + // New trajectory appeared after first poll = new conversation! + console.log(`Gravity Bridge: [LS] NEW trajectory ${key.substring(0, 8)} at step ${stepIdx} "${summary.substring(0, 40)}"`); } - pollFailCount++; + continue; + } + if (stepIdx > prev) { + // New steps detected! + console.log(`Gravity Bridge: [LS] ${key.substring(0, 8)} steps: ${prev} → ${stepIdx} "${summary.substring(0, 40)}"`); + // Try RPC to get full step text + const attempts = [ + { method: 'GetCascadeTrajectorySteps', params: { googleAgentId: agentId, trajectoryId: trajId, startStepIndex: prev } }, + { method: 'GetCascadeTrajectory', params: { googleAgentId: agentId, trajectoryId: trajId } }, + ]; + let stepsResult = null; + for (const attempt of attempts) { + const res = await lsRPC(attempt.method, attempt.params); + if (res && !res.code && !res.message?.includes('not found')) { + stepsResult = res; + console.log(`Gravity Bridge: [LS] ✅ ${attempt.method} worked!`); + console.log(`Gravity Bridge: [LS] keys: ${Object.keys(res).join(', ')}`); + console.log(`Gravity Bridge: [LS] sample: ${JSON.stringify(res).substring(0, 800)}`); + pollFailCount = 0; + break; + } + } + if (stepsResult) { + const steps = stepsResult.steps || stepsResult.cortexSteps || stepsResult.cortex_steps || []; + if (Array.isArray(steps) && steps.length > 0) { + const newSteps = steps.slice(-(stepIdx - prev)); + extractAndRelaySteps(newSteps); + } + } + else { + // Fallback: relay summary text + const summaryKey = key + '_summary'; + if (summary && summary !== lastStepIndex[summaryKey]) { + writeChatSnapshot(`[AI 응답 감지]\n\n**${summary}**\n\n(step ${prev} → ${stepIdx})`); + lastStepIndex[summaryKey] = summary; + console.log(`Gravity Bridge: [LS] relayed summary: "${summary.substring(0, 80)}"`); + } + pollFailCount++; + } + lastStepIndex[key] = stepIdx; } - lastStepIndex[key] = stepIdx; } } catch (e) { diff --git a/extension/out/extension.js.map b/extension/out/extension.js.map index fa6b770..b4364ab 100644 --- a/extension/out/extension.js.map +++ b/extension/out/extension.js.map @@ -1 +1 @@ -{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/extension/src/extension.ts b/extension/src/extension.ts index e85e8a9..e67d259 100644 --- a/extension/src/extension.ts +++ b/extension/src/extension.ts @@ -264,10 +264,12 @@ export function activate(context: vscode.ExtensionContext) { } let pollFailCount = 0; + let pollCount = 0; async function pollConversations() { if (!lsPort) { return; } - if (pollFailCount > 3) { return; } // stop after repeated failures + if (pollFailCount > 10) { return; } // stop after repeated failures + pollCount++; try { // Use getDiagnostics to get cascade-level conversation IDs const diag: any = await vscode.commands.executeCommand('antigravity.getDiagnostics'); @@ -279,70 +281,84 @@ export function activate(context: vscode.ExtensionContext) { const isFirstPoll = Object.keys(lastStepIndex).length === 0; if (isFirstPoll) { - console.log(`Gravity Bridge: [LS] ${trajectories.length} recent trajectories from getDiagnostics`); - const latest = trajectories[trajectories.length - 1]; - console.log(`Gravity Bridge: [LS] latest: ${JSON.stringify(latest).substring(0, 400)}`); + console.log(`Gravity Bridge: [LS] ${trajectories.length} trajectories from getDiagnostics`); } - // Check the most recent trajectory for step count changes - const latest = trajectories[trajectories.length - 1]; - const agentId = latest.googleAgentId || ''; - const trajId = latest.trajectoryId || ''; - const stepIdx = latest.lastStepIndex ?? 0; - - if (!agentId && !trajId) { return; } - - const key = agentId || trajId; - const prev = lastStepIndex[key]; - - if (prev === undefined) { - // First poll — initialize - lastStepIndex[key] = stepIdx; - console.log(`Gravity Bridge: [LS] initialized ${key.substring(0, 8)} at step ${stepIdx}`); - return; + // Periodic debug every ~1 min (12 * 5s) + if (pollCount % 12 === 0) { + const summary = trajectories.map((t: any) => { + const id = (t.googleAgentId || '').substring(0, 8); + return `${id}:s${t.lastStepIndex ?? '?'}`; + }).join(', '); + console.log(`Gravity Bridge: [LS] poll#${pollCount} — ${trajectories.length} trajs: [${summary}]`); } - if (stepIdx > prev) { - // New steps detected! Try to fetch them - console.log(`Gravity Bridge: [LS] ${key.substring(0, 8)} new steps: ${prev} → ${stepIdx}`); + // Check ALL trajectories for step count changes + for (const traj of trajectories) { + const agentId = traj.googleAgentId || ''; + const trajId = traj.trajectoryId || ''; + const stepIdx = traj.lastStepIndex ?? 0; + const summary = traj.summary || ''; - const attempts = [ - { method: 'GetCascadeTrajectorySteps', params: { googleAgentId: agentId, trajectoryId: trajId, startStepIndex: prev } }, - { method: 'GetCascadeTrajectory', params: { googleAgentId: agentId, trajectoryId: trajId } }, - { method: 'GetCascadeTrajectorySteps', params: { conversationId: agentId, trajectoryId: trajId } }, - ]; + if (!agentId && !trajId) { continue; } - let stepsResult: any = null; - for (const attempt of attempts) { - const res = await lsRPC(attempt.method, attempt.params); - if (res && !res.code && !res.message?.includes('not found')) { - stepsResult = res; - console.log(`Gravity Bridge: [LS] ✅ ${attempt.method} worked!`); - console.log(`Gravity Bridge: [LS] keys: ${Object.keys(res).join(', ')}`); - console.log(`Gravity Bridge: [LS] sample: ${JSON.stringify(res).substring(0, 800)}`); - pollFailCount = 0; - break; + const key = agentId || trajId; + const prev = lastStepIndex[key]; + + if (prev === undefined) { + // First time seeing this trajectory — initialize + lastStepIndex[key] = stepIdx; + if (isFirstPoll) { + console.log(`Gravity Bridge: [LS] init ${key.substring(0, 8)} at step ${stepIdx} "${summary.substring(0, 30)}"`); + } else { + // New trajectory appeared after first poll = new conversation! + console.log(`Gravity Bridge: [LS] NEW trajectory ${key.substring(0, 8)} at step ${stepIdx} "${summary.substring(0, 40)}"`); } + continue; } - if (stepsResult) { - const steps = stepsResult.steps || stepsResult.cortexSteps || stepsResult.cortex_steps || []; - if (Array.isArray(steps) && steps.length > 0) { - const newSteps = steps.slice(-(stepIdx - prev)); - extractAndRelaySteps(newSteps); - } - } else { - // All attempts failed — try writing the summary as a fallback - const summary = latest.summary || ''; - if (summary && summary !== lastStepIndex[key + '_summary']) { - writeChatSnapshot(`[AI 대화 요약]\n\n${summary}\n\n(step ${prev} → ${stepIdx})`); - lastStepIndex[key + '_summary'] = summary; - console.log(`Gravity Bridge: [LS] relayed summary fallback: ${summary.substring(0, 100)}`); - } - pollFailCount++; - } + if (stepIdx > prev) { + // New steps detected! + console.log(`Gravity Bridge: [LS] ${key.substring(0, 8)} steps: ${prev} → ${stepIdx} "${summary.substring(0, 40)}"`); - lastStepIndex[key] = stepIdx; + // Try RPC to get full step text + const attempts = [ + { method: 'GetCascadeTrajectorySteps', params: { googleAgentId: agentId, trajectoryId: trajId, startStepIndex: prev } }, + { method: 'GetCascadeTrajectory', params: { googleAgentId: agentId, trajectoryId: trajId } }, + ]; + + let stepsResult: any = null; + for (const attempt of attempts) { + const res = await lsRPC(attempt.method, attempt.params); + if (res && !res.code && !res.message?.includes('not found')) { + stepsResult = res; + console.log(`Gravity Bridge: [LS] ✅ ${attempt.method} worked!`); + console.log(`Gravity Bridge: [LS] keys: ${Object.keys(res).join(', ')}`); + console.log(`Gravity Bridge: [LS] sample: ${JSON.stringify(res).substring(0, 800)}`); + pollFailCount = 0; + break; + } + } + + if (stepsResult) { + const steps = stepsResult.steps || stepsResult.cortexSteps || stepsResult.cortex_steps || []; + if (Array.isArray(steps) && steps.length > 0) { + const newSteps = steps.slice(-(stepIdx - prev)); + extractAndRelaySteps(newSteps); + } + } else { + // Fallback: relay summary text + const summaryKey = key + '_summary'; + if (summary && summary !== lastStepIndex[summaryKey]) { + writeChatSnapshot(`[AI 응답 감지]\n\n**${summary}**\n\n(step ${prev} → ${stepIdx})`); + lastStepIndex[summaryKey] = summary; + console.log(`Gravity Bridge: [LS] relayed summary: "${summary.substring(0, 80)}"`); + } + pollFailCount++; + } + + lastStepIndex[key] = stepIdx; + } } } catch (e) { console.log(`Gravity Bridge: [LS poll] error: ${e}`); @@ -351,6 +367,7 @@ export function activate(context: vscode.ExtensionContext) { + function extractAndRelaySteps(steps: any[]) { const messages: string[] = [];