@google/gemini-cli-a2a-server 0.42.0-nightly.20260505.g8f0edcd64 → 0.42.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/a2a-server.mjs +43 -24
- package/dist/src/agent/task-event-driven.test.js +46 -8
- package/dist/src/agent/task-event-driven.test.js.map +1 -1
- package/dist/src/agent/task.d.ts +1 -0
- package/dist/src/agent/task.js +21 -8
- package/dist/src/agent/task.js.map +1 -1
- package/dist/src/agent/task.test.js +123 -1
- package/dist/src/agent/task.test.js.map +1 -1
- package/dist/src/http/app.test.js +76 -37
- package/dist/src/http/app.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
package/dist/a2a-server.mjs
CHANGED
|
@@ -209438,8 +209438,8 @@ var GIT_COMMIT_INFO, CLI_VERSION;
|
|
|
209438
209438
|
var init_git_commit = __esm({
|
|
209439
209439
|
"packages/core/dist/src/generated/git-commit.js"() {
|
|
209440
209440
|
"use strict";
|
|
209441
|
-
GIT_COMMIT_INFO = "
|
|
209442
|
-
CLI_VERSION = "0.42.0-
|
|
209441
|
+
GIT_COMMIT_INFO = "246f98459";
|
|
209442
|
+
CLI_VERSION = "0.42.0-preview.1";
|
|
209443
209443
|
}
|
|
209444
209444
|
});
|
|
209445
209445
|
|
|
@@ -329508,7 +329508,7 @@ function getVersion() {
|
|
|
329508
329508
|
}
|
|
329509
329509
|
versionPromise = (async () => {
|
|
329510
329510
|
const pkgJson = await getPackageJson(__dirname4);
|
|
329511
|
-
return "0.42.0-
|
|
329511
|
+
return "0.42.0-preview.1";
|
|
329512
329512
|
})();
|
|
329513
329513
|
return versionPromise;
|
|
329514
329514
|
}
|
|
@@ -331091,7 +331091,8 @@ var init_retry = __esm({
|
|
|
331091
331091
|
// Generic protocol error (often SSL-related)
|
|
331092
331092
|
"UND_ERR_HEADERS_TIMEOUT",
|
|
331093
331093
|
"UND_ERR_BODY_TIMEOUT",
|
|
331094
|
-
"UND_ERR_CONNECT_TIMEOUT"
|
|
331094
|
+
"UND_ERR_CONNECT_TIMEOUT",
|
|
331095
|
+
"ERR_STREAM_PREMATURE_CLOSE"
|
|
331095
331096
|
];
|
|
331096
331097
|
RETRYABLE_SSL_ERROR_PATTERN = /^ERR_SSL_.*BAD_RECORD_MAC/i;
|
|
331097
331098
|
FETCH_FAILED_MESSAGE = "fetch failed";
|
|
@@ -364475,7 +364476,7 @@ var init_geminiChat = __esm({
|
|
|
364475
364476
|
*/
|
|
364476
364477
|
getHistory(curated = false) {
|
|
364477
364478
|
const history = curated ? extractCuratedHistory2([...this.agentHistory.get()]) : this.agentHistory.get();
|
|
364478
|
-
return [...history];
|
|
364479
|
+
return this.context.config.isContextManagementEnabled() ? scrubHistory([...history]) : [...history];
|
|
364479
364480
|
}
|
|
364480
364481
|
/**
|
|
364481
364482
|
* Clears the chat history.
|
|
@@ -379628,9 +379629,9 @@ var init_snapshotGenerator = __esm({
|
|
|
379628
379629
|
}
|
|
379629
379630
|
async synthesizeSnapshot(nodes, systemInstruction) {
|
|
379630
379631
|
const systemPrompt = systemInstruction ?? `You are an expert Context Memory Manager. You will be provided with a raw transcript of older conversation turns between a user and an AI assistant.
|
|
379631
|
-
Your task is to synthesize these turns into a single, dense, factual snapshot that preserves all critical context, preferences, active tasks, and factual knowledge
|
|
379632
|
+
Your task is to synthesize these turns into a single, dense, factual snapshot that preserves all critical context, preferences, active tasks, and factual knowledge.
|
|
379632
379633
|
|
|
379633
|
-
Output ONLY the raw factual snapshot, formatted compactly. Do not include markdown wrappers, prefixes like "Here is the snapshot", or conversational elements.`;
|
|
379634
|
+
Discard conversational filler, pleasantries, and redundant back-and-forth iterations. Output ONLY the raw factual snapshot, formatted compactly. Do not include markdown wrappers, prefixes like "Here is the snapshot", or conversational elements.`;
|
|
379634
379635
|
let userPromptText = "TRANSCRIPT TO SNAPSHOT:\n\n";
|
|
379635
379636
|
for (const node of nodes) {
|
|
379636
379637
|
const payload = node.payload;
|
|
@@ -379880,7 +379881,8 @@ var init_profiles = __esm({
|
|
|
379880
379881
|
config: {
|
|
379881
379882
|
budget: {
|
|
379882
379883
|
retainedTokens: 65e3,
|
|
379883
|
-
maxTokens: 15e4
|
|
379884
|
+
maxTokens: 15e4,
|
|
379885
|
+
coalescingThresholdTokens: 5e3
|
|
379884
379886
|
}
|
|
379885
379887
|
},
|
|
379886
379888
|
buildPipelines: (env, config3) => (
|
|
@@ -379906,10 +379908,10 @@ var init_profiles = __esm({
|
|
|
379906
379908
|
triggers: ["retained_exceeded"],
|
|
379907
379909
|
processors: [
|
|
379908
379910
|
createNodeDistillationProcessor("NodeDistillation", env, resolveProcessorOptions(config3, "NodeDistillation", {
|
|
379909
|
-
nodeThresholdTokens:
|
|
379911
|
+
nodeThresholdTokens: 3e3
|
|
379910
379912
|
})),
|
|
379911
379913
|
createNodeTruncationProcessor("NodeTruncation", env, resolveProcessorOptions(config3, "NodeTruncation", {
|
|
379912
|
-
maxTokensPerNode:
|
|
379914
|
+
maxTokensPerNode: 4e3
|
|
379913
379915
|
}))
|
|
379914
379916
|
]
|
|
379915
379917
|
},
|
|
@@ -380000,6 +380002,10 @@ function getContextManagementConfigSchema(registry2) {
|
|
|
380000
380002
|
maxTokens: {
|
|
380001
380003
|
type: "number",
|
|
380002
380004
|
description: "The absolute maximum token count allowed before synchronous truncation kicks in."
|
|
380005
|
+
},
|
|
380006
|
+
coalescingThresholdTokens: {
|
|
380007
|
+
type: "number",
|
|
380008
|
+
description: 'Only trigger background consolidation (snapshots) when at least this many tokens have aged out. Prevents "turn-by-turn" utility model churn.'
|
|
380003
380009
|
}
|
|
380004
380010
|
}
|
|
380005
380011
|
},
|
|
@@ -381319,12 +381325,16 @@ var init_contextManager = __esm({
|
|
|
381319
381325
|
}
|
|
381320
381326
|
}
|
|
381321
381327
|
if (agedOutNodes.size > 0) {
|
|
381322
|
-
|
|
381323
|
-
this.
|
|
381324
|
-
|
|
381325
|
-
|
|
381326
|
-
|
|
381327
|
-
|
|
381328
|
+
const targetDeficit = currentTokens - this.sidecar.config.budget.retainedTokens;
|
|
381329
|
+
const threshold = this.sidecar.config.budget.coalescingThresholdTokens || 0;
|
|
381330
|
+
if (targetDeficit >= threshold) {
|
|
381331
|
+
this.env.tokenCalculator.garbageCollectCache(new Set(this.buffer.nodes.map((n2) => n2.id)));
|
|
381332
|
+
this.eventBus.emitConsolidationNeeded({
|
|
381333
|
+
nodes: this.buffer.nodes,
|
|
381334
|
+
targetDeficit,
|
|
381335
|
+
targetNodeIds: agedOutNodes
|
|
381336
|
+
});
|
|
381337
|
+
}
|
|
381328
381338
|
}
|
|
381329
381339
|
}
|
|
381330
381340
|
}
|
|
@@ -396685,8 +396695,7 @@ var init_policy_engine = __esm({
|
|
|
396685
396695
|
return false;
|
|
396686
396696
|
if (!hasRedirection(command))
|
|
396687
396697
|
return false;
|
|
396688
|
-
|
|
396689
|
-
if (sandboxEnabled && (this.approvalMode === ApprovalMode.AUTO_EDIT || this.approvalMode === ApprovalMode.YOLO)) {
|
|
396698
|
+
if (this.approvalMode === ApprovalMode.AUTO_EDIT || this.approvalMode === ApprovalMode.YOLO) {
|
|
396690
396699
|
return false;
|
|
396691
396700
|
}
|
|
396692
396701
|
return true;
|
|
@@ -446740,6 +446749,8 @@ var Task4 = class _Task {
|
|
|
446740
446749
|
// For tool waiting logic
|
|
446741
446750
|
pendingToolCalls = /* @__PURE__ */ new Map();
|
|
446742
446751
|
//toolCallId --> status
|
|
446752
|
+
pendingOutcomes = /* @__PURE__ */ new Map();
|
|
446753
|
+
// toolCallId --> outcome
|
|
446743
446754
|
toolsAlreadyConfirmed = /* @__PURE__ */ new Set();
|
|
446744
446755
|
toolCompletionPromise;
|
|
446745
446756
|
toolCompletionNotifier;
|
|
@@ -446977,7 +446988,7 @@ var Task4 = class _Task {
|
|
|
446977
446988
|
this.scheduler.dispose();
|
|
446978
446989
|
}
|
|
446979
446990
|
handleEventDrivenToolCallsUpdate(event) {
|
|
446980
|
-
if (event.type !== MessageBusType.TOOL_CALLS_UPDATE) {
|
|
446991
|
+
if (event.type !== MessageBusType.TOOL_CALLS_UPDATE || event.schedulerId !== this.id) {
|
|
446981
446992
|
return;
|
|
446982
446993
|
}
|
|
446983
446994
|
const toolCalls = event.toolCalls;
|
|
@@ -446989,15 +447000,18 @@ var Task4 = class _Task {
|
|
|
446989
447000
|
handleEventDrivenToolCall(tc) {
|
|
446990
447001
|
const callId = tc.request.callId;
|
|
446991
447002
|
if (this.processedToolCallIds.has(callId) || this.completedToolCalls.some((c2) => c2.request.callId === callId)) {
|
|
446992
|
-
return;
|
|
447003
|
+
return false;
|
|
446993
447004
|
}
|
|
446994
447005
|
const previousStatus = this.pendingToolCalls.get(callId);
|
|
446995
|
-
const
|
|
447006
|
+
const previousOutcome = this.pendingOutcomes.get(callId);
|
|
447007
|
+
const hasChanged = previousStatus !== tc.status || previousOutcome !== tc.outcome;
|
|
447008
|
+
this.pendingOutcomes.set(callId, tc.outcome);
|
|
446996
447009
|
if (tc.status === "executing" && tc.liveOutput) {
|
|
446997
447010
|
this._schedulerOutputUpdate(callId, tc.liveOutput);
|
|
446998
447011
|
}
|
|
446999
447012
|
if (tc.status === "success" || tc.status === "error" || tc.status === "cancelled") {
|
|
447000
447013
|
this.toolsAlreadyConfirmed.delete(callId);
|
|
447014
|
+
this.pendingOutcomes.delete(callId);
|
|
447001
447015
|
if (hasChanged) {
|
|
447002
447016
|
logger.info(
|
|
447003
447017
|
`[Task] Tool call ${callId} completed with status: ${tc.status}`
|
|
@@ -447030,6 +447044,7 @@ var Task4 = class _Task {
|
|
|
447030
447044
|
);
|
|
447031
447045
|
this.eventBus?.publish(statusUpdate);
|
|
447032
447046
|
}
|
|
447047
|
+
return hasChanged;
|
|
447033
447048
|
}
|
|
447034
447049
|
checkInputRequiredState() {
|
|
447035
447050
|
if (this.isYoloMatch) {
|
|
@@ -447038,9 +447053,9 @@ var Task4 = class _Task {
|
|
|
447038
447053
|
let isAwaitingApproval = false;
|
|
447039
447054
|
let isExecuting = false;
|
|
447040
447055
|
for (const [callId, status2] of this.pendingToolCalls.entries()) {
|
|
447041
|
-
if (status2 ===
|
|
447056
|
+
if (status2 === CoreToolCallStatus.Executing || status2 === CoreToolCallStatus.Scheduled || status2 === CoreToolCallStatus.Validating || this.toolsAlreadyConfirmed.has(callId)) {
|
|
447042
447057
|
isExecuting = true;
|
|
447043
|
-
} else if (status2 ===
|
|
447058
|
+
} else if (status2 === CoreToolCallStatus.AwaitingApproval) {
|
|
447044
447059
|
isAwaitingApproval = true;
|
|
447045
447060
|
}
|
|
447046
447061
|
}
|
|
@@ -447077,8 +447092,12 @@ var Task4 = class _Task {
|
|
|
447077
447092
|
"status",
|
|
447078
447093
|
"confirmationDetails",
|
|
447079
447094
|
"liveOutput",
|
|
447080
|
-
"response"
|
|
447095
|
+
"response",
|
|
447096
|
+
"outcome"
|
|
447081
447097
|
);
|
|
447098
|
+
if (serializableToolCall.status === CoreToolCallStatus.Validating) {
|
|
447099
|
+
serializableToolCall.status = CoreToolCallStatus.Scheduled;
|
|
447100
|
+
}
|
|
447082
447101
|
if (tc.tool) {
|
|
447083
447102
|
const toolFields = this._pickFields(
|
|
447084
447103
|
tc.tool,
|
|
@@ -48,6 +48,7 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
48
48
|
handler({
|
|
49
49
|
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
50
50
|
toolCalls: [toolCall],
|
|
51
|
+
schedulerId: 'task-id',
|
|
51
52
|
});
|
|
52
53
|
expect(mockEventBus.publish).toHaveBeenCalledWith(expect.objectContaining({
|
|
53
54
|
status: expect.objectContaining({
|
|
@@ -78,6 +79,7 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
78
79
|
handler({
|
|
79
80
|
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
80
81
|
toolCalls: [toolCall],
|
|
82
|
+
schedulerId: 'task-id',
|
|
81
83
|
});
|
|
82
84
|
// Simulate A2A client confirmation
|
|
83
85
|
const part = {
|
|
@@ -106,7 +108,11 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
106
108
|
confirmationDetails: { type: 'info', title: 'test', prompt: 'test' },
|
|
107
109
|
};
|
|
108
110
|
const handler = messageBus.subscribe.mock.calls.find((call) => call[0] === MessageBusType.TOOL_CALLS_UPDATE)?.[1];
|
|
109
|
-
handler({
|
|
111
|
+
handler({
|
|
112
|
+
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
113
|
+
toolCalls: [toolCall],
|
|
114
|
+
schedulerId: 'task-id',
|
|
115
|
+
});
|
|
110
116
|
// Simulate Rejection (Cancel)
|
|
111
117
|
const handled = await task._handleToolConfirmationPart({
|
|
112
118
|
kind: 'data',
|
|
@@ -124,7 +130,11 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
124
130
|
correlationId: 'corr-2',
|
|
125
131
|
confirmationDetails: { type: 'info', title: 'test', prompt: 'test' },
|
|
126
132
|
};
|
|
127
|
-
handler({
|
|
133
|
+
handler({
|
|
134
|
+
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
135
|
+
toolCalls: [toolCall2],
|
|
136
|
+
schedulerId: 'task-id',
|
|
137
|
+
});
|
|
128
138
|
// Simulate ModifyWithEditor
|
|
129
139
|
const handled2 = await task._handleToolConfirmationPart({
|
|
130
140
|
kind: 'data',
|
|
@@ -153,7 +163,11 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
153
163
|
},
|
|
154
164
|
};
|
|
155
165
|
const handler = messageBus.subscribe.mock.calls.find((call) => call[0] === MessageBusType.TOOL_CALLS_UPDATE)?.[1];
|
|
156
|
-
handler({
|
|
166
|
+
handler({
|
|
167
|
+
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
168
|
+
toolCalls: [toolCall],
|
|
169
|
+
schedulerId: 'task-id',
|
|
170
|
+
});
|
|
157
171
|
// Simulate ProceedOnce for MCP
|
|
158
172
|
const handled = await task._handleToolConfirmationPart({
|
|
159
173
|
kind: 'data',
|
|
@@ -181,7 +195,11 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
181
195
|
},
|
|
182
196
|
};
|
|
183
197
|
const handler = messageBus.subscribe.mock.calls.find((call) => call[0] === MessageBusType.TOOL_CALLS_UPDATE)?.[1];
|
|
184
|
-
handler({
|
|
198
|
+
handler({
|
|
199
|
+
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
200
|
+
toolCalls: [toolCall],
|
|
201
|
+
schedulerId: 'task-id',
|
|
202
|
+
});
|
|
185
203
|
const handled = await task._handleToolConfirmationPart({
|
|
186
204
|
kind: 'data',
|
|
187
205
|
data: { callId: '1', outcome: 'proceed_always_server' },
|
|
@@ -208,7 +226,11 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
208
226
|
},
|
|
209
227
|
};
|
|
210
228
|
const handler = messageBus.subscribe.mock.calls.find((call) => call[0] === MessageBusType.TOOL_CALLS_UPDATE)?.[1];
|
|
211
|
-
handler({
|
|
229
|
+
handler({
|
|
230
|
+
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
231
|
+
toolCalls: [toolCall],
|
|
232
|
+
schedulerId: 'task-id',
|
|
233
|
+
});
|
|
212
234
|
const handled = await task._handleToolConfirmationPart({
|
|
213
235
|
kind: 'data',
|
|
214
236
|
data: { callId: '1', outcome: 'proceed_always_tool' },
|
|
@@ -235,7 +257,11 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
235
257
|
},
|
|
236
258
|
};
|
|
237
259
|
const handler = messageBus.subscribe.mock.calls.find((call) => call[0] === MessageBusType.TOOL_CALLS_UPDATE)?.[1];
|
|
238
|
-
handler({
|
|
260
|
+
handler({
|
|
261
|
+
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
262
|
+
toolCalls: [toolCall],
|
|
263
|
+
schedulerId: 'task-id',
|
|
264
|
+
});
|
|
239
265
|
const handled = await task._handleToolConfirmationPart({
|
|
240
266
|
kind: 'data',
|
|
241
267
|
data: { callId: '1', outcome: 'proceed_always_and_save' },
|
|
@@ -265,7 +291,11 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
265
291
|
confirmationDetails: { type: 'info', title: 'test', prompt: 'test' },
|
|
266
292
|
};
|
|
267
293
|
const handler = yoloMessageBus.subscribe.mock.calls.find((call) => call[0] === MessageBusType.TOOL_CALLS_UPDATE)?.[1];
|
|
268
|
-
handler({
|
|
294
|
+
handler({
|
|
295
|
+
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
296
|
+
toolCalls: [toolCall],
|
|
297
|
+
schedulerId: 'task-id',
|
|
298
|
+
});
|
|
269
299
|
// Should NOT auto-publish ProceedOnce anymore, because PolicyEngine handles it directly
|
|
270
300
|
expect(yoloMessageBus.publish).not.toHaveBeenCalledWith(expect.objectContaining({
|
|
271
301
|
type: MessageBusType.TOOL_CONFIRMATION_RESPONSE,
|
|
@@ -291,6 +321,7 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
291
321
|
handler({
|
|
292
322
|
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
293
323
|
toolCalls: [toolCall],
|
|
324
|
+
schedulerId: 'task-id',
|
|
294
325
|
});
|
|
295
326
|
// Should publish artifact update for output
|
|
296
327
|
expect(mockEventBus.publish).toHaveBeenCalledWith(expect.objectContaining({
|
|
@@ -316,7 +347,11 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
316
347
|
result: { ok: true },
|
|
317
348
|
};
|
|
318
349
|
const handler = messageBus.subscribe.mock.calls.find((call) => call[0] === MessageBusType.TOOL_CALLS_UPDATE)?.[1];
|
|
319
|
-
handler({
|
|
350
|
+
handler({
|
|
351
|
+
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
352
|
+
toolCalls: [toolCall],
|
|
353
|
+
schedulerId: 'task-id',
|
|
354
|
+
});
|
|
320
355
|
// The tool should be complete and registered appropriately, eventually
|
|
321
356
|
// triggering the toolCompletionPromise resolution when all clear.
|
|
322
357
|
const internalTask = task;
|
|
@@ -370,6 +405,7 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
370
405
|
handler({
|
|
371
406
|
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
372
407
|
toolCalls: [toolCall1, toolCall2],
|
|
408
|
+
schedulerId: 'task-id',
|
|
373
409
|
});
|
|
374
410
|
// Confirm first tool call
|
|
375
411
|
const handled1 = await task._handleToolConfirmationPart({
|
|
@@ -414,6 +450,7 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
414
450
|
handler({
|
|
415
451
|
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
416
452
|
toolCalls: [toolCall1, toolCall2],
|
|
453
|
+
schedulerId: 'task-id',
|
|
417
454
|
});
|
|
418
455
|
// Should NOT transition to input-required yet
|
|
419
456
|
expect(task.setTaskStateAndPublishUpdate).not.toHaveBeenCalledWith('input-required', expect.anything(), undefined, undefined, true);
|
|
@@ -426,6 +463,7 @@ describe('Task Event-Driven Scheduler', () => {
|
|
|
426
463
|
handler({
|
|
427
464
|
type: MessageBusType.TOOL_CALLS_UPDATE,
|
|
428
465
|
toolCalls: [toolCall1Complete, toolCall2],
|
|
466
|
+
schedulerId: 'task-id',
|
|
429
467
|
});
|
|
430
468
|
// Now it should transition
|
|
431
469
|
expect(task.setTaskStateAndPublishUpdate).toHaveBeenCalledWith('input-required', expect.anything(), undefined, undefined, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-event-driven.test.js","sourceRoot":"","sources":["../../../src/agent/task-event-driven.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"task-event-driven.test.js","sourceRoot":"","sources":["../../../src/agent/task-event-driven.test.ts"],"names":[],"mappings":"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"}
|
package/dist/src/agent/task.d.ts
CHANGED
package/dist/src/agent/task.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2025 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { Scheduler, GeminiEventType, ToolConfirmationOutcome, ApprovalMode, getAllMCPServerStatuses, MCPServerStatus, isNodeError, getErrorMessage, parseAndFormatApiError, safeLiteralReplace, DEFAULT_GUI_EDITOR, isSubagentProgress, EDIT_TOOL_NAMES, processRestorableToolCalls, MessageBusType, } from '@google/gemini-cli-core';
|
|
6
|
+
import { Scheduler, GeminiEventType, ToolConfirmationOutcome, ApprovalMode, CoreToolCallStatus, getAllMCPServerStatuses, MCPServerStatus, isNodeError, getErrorMessage, parseAndFormatApiError, safeLiteralReplace, DEFAULT_GUI_EDITOR, isSubagentProgress, EDIT_TOOL_NAMES, processRestorableToolCalls, MessageBusType, } from '@google/gemini-cli-core';
|
|
7
7
|
import {} from '@a2a-js/sdk/server';
|
|
8
8
|
import { v4 as uuidv4 } from 'uuid';
|
|
9
9
|
import { logger } from '../utils/logger.js';
|
|
@@ -33,6 +33,7 @@ export class Task {
|
|
|
33
33
|
}
|
|
34
34
|
// For tool waiting logic
|
|
35
35
|
pendingToolCalls = new Map(); //toolCallId --> status
|
|
36
|
+
pendingOutcomes = new Map(); // toolCallId --> outcome
|
|
36
37
|
toolsAlreadyConfirmed = new Set();
|
|
37
38
|
toolCompletionPromise;
|
|
38
39
|
toolCompletionNotifier;
|
|
@@ -254,7 +255,8 @@ export class Task {
|
|
|
254
255
|
this.scheduler.dispose();
|
|
255
256
|
}
|
|
256
257
|
handleEventDrivenToolCallsUpdate(event) {
|
|
257
|
-
if (event.type !== MessageBusType.TOOL_CALLS_UPDATE
|
|
258
|
+
if (event.type !== MessageBusType.TOOL_CALLS_UPDATE ||
|
|
259
|
+
event.schedulerId !== this.id) {
|
|
258
260
|
return;
|
|
259
261
|
}
|
|
260
262
|
const toolCalls = event.toolCalls;
|
|
@@ -270,10 +272,13 @@ export class Task {
|
|
|
270
272
|
// already resolved tools whose IDs were removed from pendingToolCalls.
|
|
271
273
|
if (this.processedToolCallIds.has(callId) ||
|
|
272
274
|
this.completedToolCalls.some((c) => c.request.callId === callId)) {
|
|
273
|
-
return;
|
|
275
|
+
return false;
|
|
274
276
|
}
|
|
275
277
|
const previousStatus = this.pendingToolCalls.get(callId);
|
|
276
|
-
const
|
|
278
|
+
const previousOutcome = this.pendingOutcomes.get(callId);
|
|
279
|
+
const hasChanged = previousStatus !== tc.status || previousOutcome !== tc.outcome;
|
|
280
|
+
// Update outcome tracking
|
|
281
|
+
this.pendingOutcomes.set(callId, tc.outcome);
|
|
277
282
|
// 1. Handle Output
|
|
278
283
|
if (tc.status === 'executing' && tc.liveOutput) {
|
|
279
284
|
this._schedulerOutputUpdate(callId, tc.liveOutput);
|
|
@@ -283,6 +288,7 @@ export class Task {
|
|
|
283
288
|
tc.status === 'error' ||
|
|
284
289
|
tc.status === 'cancelled') {
|
|
285
290
|
this.toolsAlreadyConfirmed.delete(callId);
|
|
291
|
+
this.pendingOutcomes.delete(callId);
|
|
286
292
|
if (hasChanged) {
|
|
287
293
|
logger.info(`[Task] Tool call ${callId} completed with status: ${tc.status}`);
|
|
288
294
|
this.completedToolCalls.push(tc);
|
|
@@ -313,6 +319,7 @@ export class Task {
|
|
|
313
319
|
const statusUpdate = this._createStatusUpdateEvent(this.taskState, coderAgentMessage, message, false);
|
|
314
320
|
this.eventBus?.publish(statusUpdate);
|
|
315
321
|
}
|
|
322
|
+
return hasChanged;
|
|
316
323
|
}
|
|
317
324
|
checkInputRequiredState() {
|
|
318
325
|
if (this.isYoloMatch) {
|
|
@@ -322,11 +329,13 @@ export class Task {
|
|
|
322
329
|
let isAwaitingApproval = false;
|
|
323
330
|
let isExecuting = false;
|
|
324
331
|
for (const [callId, status] of this.pendingToolCalls.entries()) {
|
|
325
|
-
if (status ===
|
|
332
|
+
if (status === CoreToolCallStatus.Executing ||
|
|
333
|
+
status === CoreToolCallStatus.Scheduled ||
|
|
334
|
+
status === CoreToolCallStatus.Validating ||
|
|
335
|
+
this.toolsAlreadyConfirmed.has(callId)) {
|
|
326
336
|
isExecuting = true;
|
|
327
337
|
}
|
|
328
|
-
else if (status ===
|
|
329
|
-
!this.toolsAlreadyConfirmed.has(callId)) {
|
|
338
|
+
else if (status === CoreToolCallStatus.AwaitingApproval) {
|
|
330
339
|
isAwaitingApproval = true;
|
|
331
340
|
}
|
|
332
341
|
}
|
|
@@ -358,7 +367,11 @@ export class Task {
|
|
|
358
367
|
// Create a serializable version of the ToolCall (pick necessary
|
|
359
368
|
// properties/avoid methods causing circular reference errors).
|
|
360
369
|
// Type allows tool to be Partial<AnyDeclarativeTool> for serialization.
|
|
361
|
-
const serializableToolCall = this._pickFields(tc, 'request', 'status', 'confirmationDetails', 'liveOutput', 'response');
|
|
370
|
+
const serializableToolCall = this._pickFields(tc, 'request', 'status', 'confirmationDetails', 'liveOutput', 'response', 'outcome');
|
|
371
|
+
// Map internal 'validating' status to 'scheduled' for the client
|
|
372
|
+
if (serializableToolCall.status === CoreToolCallStatus.Validating) {
|
|
373
|
+
serializableToolCall.status = CoreToolCallStatus.Scheduled;
|
|
374
|
+
}
|
|
362
375
|
if (tc.tool) {
|
|
363
376
|
const toolFields = this._pickFields(tc.tool, 'name', 'displayName', 'description', 'kind', 'isOutputMarkdown', 'canUpdateOutput', 'schema', 'parameterSchema');
|
|
364
377
|
serializableToolCall.tool = toolFields;
|