From 41f90b3b15da73fdbc4fc3cab6f2be8686bfa3e7 Mon Sep 17 00:00:00 2001 From: CD Date: Sat, 7 Mar 2026 19:55:34 +0900 Subject: [PATCH] fix: track ALL trajectories, detect new conversations, summary fallback per-traj --- extension/gravity-bridge-0.2.0.vsix | Bin 29285 -> 29773 bytes extension/out/extension.js | 122 ++++++++++++++------------ extension/out/extension.js.map | 2 +- extension/src/extension.ts | 127 ++++++++++++++++------------ 4 files changed, 142 insertions(+), 109 deletions(-) diff --git a/extension/gravity-bridge-0.2.0.vsix b/extension/gravity-bridge-0.2.0.vsix index aa0672f1b4527148c168b05e9a4c4fed6a9bf8e0..9581599425ec7dec0cb102a2206088a4700bf19b 100644 GIT binary patch delta 27415 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

bt9D@^rbf6^y1I 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 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[] = [];