@vybestack/llxprt-code-core 0.5.0-nightly.251121.9dcb43714 → 0.5.0-nightly.251121.bd93fe760

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.
Files changed (120) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.js +1 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/src/config/config.d.ts +9 -0
  5. package/dist/src/config/config.js +16 -0
  6. package/dist/src/config/config.js.map +1 -1
  7. package/dist/src/confirmation-bus/index.d.ts +2 -0
  8. package/dist/src/confirmation-bus/index.js +3 -0
  9. package/dist/src/confirmation-bus/index.js.map +1 -0
  10. package/dist/src/confirmation-bus/message-bus.d.ts +60 -0
  11. package/dist/src/confirmation-bus/message-bus.js +141 -0
  12. package/dist/src/confirmation-bus/message-bus.js.map +1 -0
  13. package/dist/src/confirmation-bus/types.d.ts +59 -0
  14. package/dist/src/confirmation-bus/types.js +10 -0
  15. package/dist/src/confirmation-bus/types.js.map +1 -0
  16. package/dist/src/core/client.d.ts +1 -1
  17. package/dist/src/core/client.js +24 -11
  18. package/dist/src/core/client.js.map +1 -1
  19. package/dist/src/core/coreToolScheduler.d.ts +18 -1
  20. package/dist/src/core/coreToolScheduler.js +133 -13
  21. package/dist/src/core/coreToolScheduler.js.map +1 -1
  22. package/dist/src/core/geminiChat.js +2 -0
  23. package/dist/src/core/geminiChat.js.map +1 -1
  24. package/dist/src/ide/detect-ide.d.ts +44 -14
  25. package/dist/src/ide/detect-ide.js +35 -75
  26. package/dist/src/ide/detect-ide.js.map +1 -1
  27. package/dist/src/ide/ide-client.d.ts +4 -4
  28. package/dist/src/ide/ide-client.js +25 -24
  29. package/dist/src/ide/ide-client.js.map +1 -1
  30. package/dist/src/ide/ide-installer.d.ts +2 -2
  31. package/dist/src/ide/ide-installer.js +7 -9
  32. package/dist/src/ide/ide-installer.js.map +1 -1
  33. package/dist/src/index.d.ts +7 -1
  34. package/dist/src/index.js +9 -1
  35. package/dist/src/index.js.map +1 -1
  36. package/dist/src/mcp/oauth-provider.d.ts +4 -1
  37. package/dist/src/mcp/oauth-provider.js +30 -27
  38. package/dist/src/mcp/oauth-provider.js.map +1 -1
  39. package/dist/src/policy/config.d.ts +51 -0
  40. package/dist/src/policy/config.js +102 -0
  41. package/dist/src/policy/config.js.map +1 -0
  42. package/dist/src/policy/index.d.ts +5 -0
  43. package/dist/src/policy/index.js +6 -0
  44. package/dist/src/policy/index.js.map +1 -0
  45. package/dist/src/policy/policies/discovered.toml +9 -0
  46. package/dist/src/policy/policies/read-only.toml +68 -0
  47. package/dist/src/policy/policies/write.toml +69 -0
  48. package/dist/src/policy/policies/yolo.toml +8 -0
  49. package/dist/src/policy/policy-engine.d.ts +55 -0
  50. package/dist/src/policy/policy-engine.js +126 -0
  51. package/dist/src/policy/policy-engine.js.map +1 -0
  52. package/dist/src/policy/stable-stringify.d.ts +29 -0
  53. package/dist/src/policy/stable-stringify.js +111 -0
  54. package/dist/src/policy/stable-stringify.js.map +1 -0
  55. package/dist/src/policy/toml-loader.d.ts +37 -0
  56. package/dist/src/policy/toml-loader.js +183 -0
  57. package/dist/src/policy/toml-loader.js.map +1 -0
  58. package/dist/src/policy/types.d.ts +16 -0
  59. package/dist/src/policy/types.js +7 -0
  60. package/dist/src/policy/types.js.map +1 -0
  61. package/dist/src/telemetry/uiTelemetry.d.ts +1 -1
  62. package/dist/src/telemetry/uiTelemetry.js +2 -3
  63. package/dist/src/telemetry/uiTelemetry.js.map +1 -1
  64. package/dist/src/tools/edit.d.ts +3 -2
  65. package/dist/src/tools/edit.js +23 -10
  66. package/dist/src/tools/edit.js.map +1 -1
  67. package/dist/src/tools/glob.d.ts +3 -2
  68. package/dist/src/tools/glob.js +2 -2
  69. package/dist/src/tools/glob.js.map +1 -1
  70. package/dist/src/tools/grep.d.ts +3 -2
  71. package/dist/src/tools/grep.js +2 -2
  72. package/dist/src/tools/grep.js.map +1 -1
  73. package/dist/src/tools/ls.d.ts +3 -2
  74. package/dist/src/tools/ls.js +2 -2
  75. package/dist/src/tools/ls.js.map +1 -1
  76. package/dist/src/tools/mcp-tool.js +7 -1
  77. package/dist/src/tools/mcp-tool.js.map +1 -1
  78. package/dist/src/tools/memoryTool.d.ts +5 -2
  79. package/dist/src/tools/memoryTool.js +12 -4
  80. package/dist/src/tools/memoryTool.js.map +1 -1
  81. package/dist/src/tools/read-file.d.ts +3 -2
  82. package/dist/src/tools/read-file.js +2 -2
  83. package/dist/src/tools/read-file.js.map +1 -1
  84. package/dist/src/tools/read-many-files.d.ts +3 -2
  85. package/dist/src/tools/read-many-files.js +2 -2
  86. package/dist/src/tools/read-many-files.js.map +1 -1
  87. package/dist/src/tools/ripGrep.d.ts +3 -2
  88. package/dist/src/tools/ripGrep.js +2 -2
  89. package/dist/src/tools/ripGrep.js.map +1 -1
  90. package/dist/src/tools/shell.d.ts +3 -2
  91. package/dist/src/tools/shell.js +10 -6
  92. package/dist/src/tools/shell.js.map +1 -1
  93. package/dist/src/tools/smart-edit.d.ts +3 -2
  94. package/dist/src/tools/smart-edit.js +13 -9
  95. package/dist/src/tools/smart-edit.js.map +1 -1
  96. package/dist/src/tools/tool-confirmation-types.d.ts +20 -0
  97. package/dist/src/tools/tool-confirmation-types.js +15 -0
  98. package/dist/src/tools/tool-confirmation-types.js.map +1 -0
  99. package/dist/src/tools/tool-error.d.ts +1 -0
  100. package/dist/src/tools/tool-error.js +1 -0
  101. package/dist/src/tools/tool-error.js.map +1 -1
  102. package/dist/src/tools/tool-registry.d.ts +8 -1
  103. package/dist/src/tools/tool-registry.js +18 -4
  104. package/dist/src/tools/tool-registry.js.map +1 -1
  105. package/dist/src/tools/tools.d.ts +52 -14
  106. package/dist/src/tools/tools.js +71 -15
  107. package/dist/src/tools/tools.js.map +1 -1
  108. package/dist/src/tools/web-fetch.d.ts +3 -2
  109. package/dist/src/tools/web-fetch.js +11 -6
  110. package/dist/src/tools/web-fetch.js.map +1 -1
  111. package/dist/src/tools/web-search-invocation.d.ts +3 -1
  112. package/dist/src/tools/web-search-invocation.js +5 -2
  113. package/dist/src/tools/web-search-invocation.js.map +1 -1
  114. package/dist/src/tools/web-search.d.ts +3 -2
  115. package/dist/src/tools/web-search.js +6 -4
  116. package/dist/src/tools/web-search.js.map +1 -1
  117. package/dist/src/tools/write-file.d.ts +3 -2
  118. package/dist/src/tools/write-file.js +11 -6
  119. package/dist/src/tools/write-file.js.map +1 -1
  120. package/package.json +4 -2
package/dist/index.d.ts CHANGED
@@ -8,6 +8,7 @@ export { DEFAULT_GEMINI_MODEL, DEFAULT_GEMINI_FLASH_MODEL, DEFAULT_GEMINI_FLASH_
8
8
  export { QwenDeviceFlow, DeviceFlowConfig, } from './src/auth/qwen-device-flow.js';
9
9
  export { MultiProviderTokenStore } from './src/auth/token-store.js';
10
10
  export { openBrowserSecurely, shouldLaunchBrowser, } from './src/utils/secure-browser-launcher.js';
11
+ export { IDE_DEFINITIONS, detectIdeFromEnv } from './src/ide/detect-ide.js';
11
12
  export { SettingsService } from './src/settings/SettingsService.js';
12
13
  export type { ISettingsService, GlobalSettings, SettingsChangeEvent, ProviderSettings, UISettings, AdvancedSettings, EventListener, EventUnsubscribe, } from './src/settings/types.js';
13
14
  export type { TelemetrySettings as SettingsTelemetrySettings } from './src/settings/types.js';
package/dist/index.js CHANGED
@@ -8,6 +8,7 @@ export { DEFAULT_GEMINI_MODEL, DEFAULT_GEMINI_FLASH_MODEL, DEFAULT_GEMINI_FLASH_
8
8
  export { QwenDeviceFlow, } from './src/auth/qwen-device-flow.js';
9
9
  export { MultiProviderTokenStore } from './src/auth/token-store.js';
10
10
  export { openBrowserSecurely, shouldLaunchBrowser, } from './src/utils/secure-browser-launcher.js';
11
+ export { IDE_DEFINITIONS, detectIdeFromEnv } from './src/ide/detect-ide.js';
11
12
  // Re-export settings system for explicit access
12
13
  export { SettingsService } from './src/settings/SettingsService.js';
13
14
  // IDE connection telemetry exports removed - telemetry disabled in llxprt
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,cAAc,GAEf,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EACL,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,wCAAwC,CAAC;AAEhD,gDAAgD;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAYpE,0EAA0E;AAC1E,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,cAAc,GAEf,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EACL,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE5E,gDAAgD;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAYpE,0EAA0E;AAC1E,OAAO,EACL,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,cAAc,2BAA2B,CAAC"}
@@ -25,6 +25,9 @@ import { WorkspaceContext } from '../utils/workspaceContext.js';
25
25
  import { Storage } from './storage.js';
26
26
  import { FileExclusions } from '../utils/ignorePatterns.js';
27
27
  import type { EventEmitter } from 'node:events';
28
+ import { MessageBus } from '../confirmation-bus/message-bus.js';
29
+ import { PolicyEngine } from '../policy/policy-engine.js';
30
+ import type { PolicyEngineConfig } from '../policy/types.js';
28
31
  export interface RedactionConfig {
29
32
  redactApiKeys: boolean;
30
33
  redactCredentials: boolean;
@@ -205,6 +208,7 @@ export interface ConfigParameters {
205
208
  eventEmitter?: EventEmitter;
206
209
  useSmartEdit?: boolean;
207
210
  settingsService?: SettingsService;
211
+ policyEngineConfig?: PolicyEngineConfig;
208
212
  }
209
213
  export declare class Config {
210
214
  private toolRegistry;
@@ -291,6 +295,8 @@ export declare class Config {
291
295
  private readonly fileExclusions;
292
296
  private readonly eventEmitter?;
293
297
  private readonly useSmartEdit;
298
+ private readonly messageBus;
299
+ private readonly policyEngine;
294
300
  constructor(params: ConfigParameters);
295
301
  /**
296
302
  * Must only be called once, throws if called again.
@@ -330,6 +336,8 @@ export declare class Config {
330
336
  setLlxprtMdFileCount(count: number): void;
331
337
  getApprovalMode(): ApprovalMode;
332
338
  setApprovalMode(mode: ApprovalMode): void;
339
+ getMessageBus(): MessageBus;
340
+ getPolicyEngine(): PolicyEngine;
333
341
  getShowMemoryUsage(): boolean;
334
342
  getAccessibility(): AccessibilitySettings;
335
343
  getTelemetryEnabled(): boolean;
@@ -430,6 +438,7 @@ export declare class Config {
430
438
  getScreenReader(): boolean;
431
439
  getEnablePromptCompletion(): boolean;
432
440
  getUseSmartEdit(): boolean;
441
+ getNonInteractive(): boolean;
433
442
  getGitService(): Promise<GitService>;
434
443
  /**
435
444
  * Get the SettingsService instance
@@ -51,6 +51,8 @@ import { SubagentManager } from './subagentManager.js';
51
51
  import { WorkspaceContext } from '../utils/workspaceContext.js';
52
52
  import { Storage } from './storage.js';
53
53
  import { FileExclusions } from '../utils/ignorePatterns.js';
54
+ import { MessageBus } from '../confirmation-bus/message-bus.js';
55
+ import { PolicyEngine } from '../policy/policy-engine.js';
54
56
  export var ApprovalMode;
55
57
  (function (ApprovalMode) {
56
58
  ApprovalMode["DEFAULT"] = "default";
@@ -223,6 +225,8 @@ export class Config {
223
225
  fileExclusions;
224
226
  eventEmitter;
225
227
  useSmartEdit;
228
+ messageBus;
229
+ policyEngine;
226
230
  constructor(params) {
227
231
  const providedSettingsService = params.settingsService;
228
232
  if (providedSettingsService) {
@@ -342,6 +346,9 @@ export class Config {
342
346
  this.enablePromptCompletion = params.enablePromptCompletion ?? false;
343
347
  this.fileExclusions = new FileExclusions(this);
344
348
  this.eventEmitter = params.eventEmitter;
349
+ // Initialize policy engine and message bus
350
+ this.policyEngine = new PolicyEngine(params.policyEngineConfig);
351
+ this.messageBus = new MessageBus(this.policyEngine, this.debugMode);
345
352
  this.runtimeState = createAgentRuntimeStateFromConfig(this);
346
353
  if (params.contextFileName) {
347
354
  setLlxprtMdFilename(params.contextFileName);
@@ -625,6 +632,12 @@ export class Config {
625
632
  }
626
633
  this.approvalMode = mode;
627
634
  }
635
+ getMessageBus() {
636
+ return this.messageBus;
637
+ }
638
+ getPolicyEngine() {
639
+ return this.policyEngine;
640
+ }
628
641
  getShowMemoryUsage() {
629
642
  return this.showMemoryUsage;
630
643
  }
@@ -1051,6 +1064,9 @@ export class Config {
1051
1064
  getUseSmartEdit() {
1052
1065
  return this.useSmartEdit;
1053
1066
  }
1067
+ getNonInteractive() {
1068
+ return !this.interactive;
1069
+ }
1054
1070
  async getGitService() {
1055
1071
  if (!this.gitService) {
1056
1072
  this.gitService = new GitService(this.targetDir, this.storage);
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './types.js';
2
+ export * from './message-bus.js';
@@ -0,0 +1,3 @@
1
+ export * from './types.js';
2
+ export * from './message-bus.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/confirmation-bus/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,60 @@
1
+ import type { FunctionCall } from '@google/genai';
2
+ import { PolicyEngine } from '../policy/policy-engine.js';
3
+ import { MessageBusType, type MessageBusMessage } from './types.js';
4
+ import { ToolConfirmationOutcome, ToolConfirmationPayload } from '../tools/tool-confirmation-types.js';
5
+ type MessageHandler<T extends MessageBusMessage = MessageBusMessage> = (message: T) => void;
6
+ /**
7
+ * MessageBus provides event-driven communication for tool confirmations and policy decisions.
8
+ * Uses EventEmitter for pub/sub pattern and integrates with PolicyEngine for authorization.
9
+ */
10
+ export declare class MessageBus {
11
+ private readonly emitter;
12
+ private readonly policyEngine;
13
+ private readonly debugMode;
14
+ constructor(policyEngine: PolicyEngine, debugMode?: boolean);
15
+ /**
16
+ * Publishes a message to all subscribers of the message type.
17
+ *
18
+ * @param message - The message to publish
19
+ */
20
+ publish(message: MessageBusMessage): void;
21
+ /**
22
+ * Subscribes to messages of a specific type.
23
+ *
24
+ * @param type - The message type to subscribe to
25
+ * @param handler - The handler function to call when a message is received
26
+ * @returns Unsubscribe function
27
+ */
28
+ subscribe<T extends MessageBusMessage>(type: MessageBusType, handler: MessageHandler<T>): () => void;
29
+ /**
30
+ * Requests confirmation for a tool execution through the policy engine.
31
+ * If policy allows, returns immediately. If policy asks user, publishes confirmation request.
32
+ *
33
+ * @param toolCall - The tool call to evaluate
34
+ * @param args - The tool arguments
35
+ * @param serverName - Optional MCP server name
36
+ * @returns Promise<boolean> - true if approved, false if denied
37
+ */
38
+ requestConfirmation(toolCall: FunctionCall, args: Record<string, unknown>, serverName?: string): Promise<boolean>;
39
+ /**
40
+ * Responds to a confirmation request.
41
+ *
42
+ * @param correlationId - The correlation ID from the request
43
+ * @param outcome - The ToolConfirmationOutcome to apply
44
+ * @param payload - Optional payload for inline modifications
45
+ * @param requiresUserConfirmation - Whether legacy UI should be used
46
+ */
47
+ respondToConfirmation(correlationId: string, outcome: ToolConfirmationOutcome, payload?: ToolConfirmationPayload, requiresUserConfirmation?: boolean): void;
48
+ /**
49
+ * Removes all event listeners (for cleanup).
50
+ */
51
+ removeAllListeners(): void;
52
+ /**
53
+ * Returns the number of listeners for a specific message type.
54
+ *
55
+ * @param type - The message type
56
+ * @returns Number of listeners
57
+ */
58
+ listenerCount(type: MessageBusType): number;
59
+ }
60
+ export {};
@@ -0,0 +1,141 @@
1
+ import { EventEmitter } from 'node:events';
2
+ import { randomUUID } from 'node:crypto';
3
+ import { PolicyDecision } from '../policy/types.js';
4
+ import { MessageBusType, } from './types.js';
5
+ import { ToolConfirmationOutcome, } from '../tools/tool-confirmation-types.js';
6
+ /**
7
+ * MessageBus provides event-driven communication for tool confirmations and policy decisions.
8
+ * Uses EventEmitter for pub/sub pattern and integrates with PolicyEngine for authorization.
9
+ */
10
+ export class MessageBus {
11
+ emitter;
12
+ policyEngine;
13
+ debugMode;
14
+ constructor(policyEngine, debugMode = false) {
15
+ this.emitter = new EventEmitter();
16
+ this.policyEngine = policyEngine;
17
+ this.debugMode = debugMode;
18
+ // Increase max listeners to prevent warnings in complex flows
19
+ this.emitter.setMaxListeners(50);
20
+ }
21
+ /**
22
+ * Publishes a message to all subscribers of the message type.
23
+ *
24
+ * @param message - The message to publish
25
+ */
26
+ publish(message) {
27
+ if (this.debugMode) {
28
+ console.log(`[MessageBus] Publishing: ${message.type}`, message);
29
+ }
30
+ this.emitter.emit(message.type, message);
31
+ }
32
+ /**
33
+ * Subscribes to messages of a specific type.
34
+ *
35
+ * @param type - The message type to subscribe to
36
+ * @param handler - The handler function to call when a message is received
37
+ * @returns Unsubscribe function
38
+ */
39
+ subscribe(type, handler) {
40
+ this.emitter.on(type, handler);
41
+ return () => {
42
+ this.emitter.off(type, handler);
43
+ };
44
+ }
45
+ /**
46
+ * Requests confirmation for a tool execution through the policy engine.
47
+ * If policy allows, returns immediately. If policy asks user, publishes confirmation request.
48
+ *
49
+ * @param toolCall - The tool call to evaluate
50
+ * @param args - The tool arguments
51
+ * @param serverName - Optional MCP server name
52
+ * @returns Promise<boolean> - true if approved, false if denied
53
+ */
54
+ async requestConfirmation(toolCall, args, serverName) {
55
+ const correlationId = randomUUID();
56
+ // Tool name is required
57
+ if (!toolCall.name) {
58
+ throw new Error('Tool call must have a name');
59
+ }
60
+ // Evaluate policy
61
+ const decision = this.policyEngine.evaluate(toolCall.name, args, serverName);
62
+ if (this.debugMode) {
63
+ console.log(`[MessageBus] Policy decision for ${toolCall.name}: ${decision}`);
64
+ }
65
+ // Handle immediate decisions
66
+ if (decision === PolicyDecision.ALLOW) {
67
+ return true;
68
+ }
69
+ if (decision === PolicyDecision.DENY) {
70
+ this.publish({
71
+ type: MessageBusType.TOOL_POLICY_REJECTION,
72
+ toolCall,
73
+ correlationId,
74
+ reason: 'Policy denied execution',
75
+ });
76
+ return false;
77
+ }
78
+ // ASK_USER - wait for confirmation response
79
+ return new Promise((resolve) => {
80
+ const timeout = setTimeout(() => {
81
+ unsubscribe();
82
+ resolve(false); // Timeout = deny
83
+ }, 300000); // 5 minute timeout
84
+ const unsubscribe = this.subscribe(MessageBusType.TOOL_CONFIRMATION_RESPONSE, (response) => {
85
+ if (response.correlationId === correlationId) {
86
+ clearTimeout(timeout);
87
+ unsubscribe();
88
+ const resolvedConfirmation = response.confirmed ??
89
+ (response.outcome !== undefined
90
+ ? response.outcome !== ToolConfirmationOutcome.Cancel &&
91
+ response.outcome !== ToolConfirmationOutcome.ModifyWithEditor
92
+ : false);
93
+ resolve(resolvedConfirmation);
94
+ }
95
+ });
96
+ // Publish confirmation request
97
+ this.publish({
98
+ type: MessageBusType.TOOL_CONFIRMATION_REQUEST,
99
+ toolCall,
100
+ correlationId,
101
+ serverName,
102
+ });
103
+ });
104
+ }
105
+ /**
106
+ * Responds to a confirmation request.
107
+ *
108
+ * @param correlationId - The correlation ID from the request
109
+ * @param outcome - The ToolConfirmationOutcome to apply
110
+ * @param payload - Optional payload for inline modifications
111
+ * @param requiresUserConfirmation - Whether legacy UI should be used
112
+ */
113
+ respondToConfirmation(correlationId, outcome, payload, requiresUserConfirmation) {
114
+ const confirmed = outcome !== ToolConfirmationOutcome.Cancel &&
115
+ outcome !== ToolConfirmationOutcome.ModifyWithEditor;
116
+ this.publish({
117
+ type: MessageBusType.TOOL_CONFIRMATION_RESPONSE,
118
+ correlationId,
119
+ outcome,
120
+ payload,
121
+ confirmed,
122
+ requiresUserConfirmation,
123
+ });
124
+ }
125
+ /**
126
+ * Removes all event listeners (for cleanup).
127
+ */
128
+ removeAllListeners() {
129
+ this.emitter.removeAllListeners();
130
+ }
131
+ /**
132
+ * Returns the number of listeners for a specific message type.
133
+ *
134
+ * @param type - The message type
135
+ * @returns Number of listeners
136
+ */
137
+ listenerCount(type) {
138
+ return this.emitter.listenerCount(type);
139
+ }
140
+ }
141
+ //# sourceMappingURL=message-bus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-bus.js","sourceRoot":"","sources":["../../../src/confirmation-bus/message-bus.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import type { FunctionCall } from '@google/genai';
2
+ import type { ToolConfirmationOutcome, ToolConfirmationPayload } from '../tools/tool-confirmation-types.js';
3
+ export declare enum MessageBusType {
4
+ TOOL_CONFIRMATION_REQUEST = "tool-confirmation-request",
5
+ TOOL_CONFIRMATION_RESPONSE = "tool-confirmation-response",
6
+ TOOL_POLICY_REJECTION = "tool-policy-rejection",
7
+ TOOL_EXECUTION_SUCCESS = "tool-execution-success",
8
+ TOOL_EXECUTION_FAILURE = "tool-execution-failure",
9
+ UPDATE_POLICY = "update-policy"
10
+ }
11
+ export interface ToolConfirmationRequest {
12
+ type: MessageBusType.TOOL_CONFIRMATION_REQUEST;
13
+ toolCall: FunctionCall;
14
+ correlationId: string;
15
+ serverName?: string;
16
+ }
17
+ export interface ToolConfirmationResponse {
18
+ type: MessageBusType.TOOL_CONFIRMATION_RESPONSE;
19
+ correlationId: string;
20
+ /**
21
+ * Complete enum outcome preferred for consumers. When omitted, fall back to
22
+ * the legacy `confirmed` boolean semantics.
23
+ */
24
+ outcome?: ToolConfirmationOutcome;
25
+ /**
26
+ * Optional payload used by inline modify flows.
27
+ */
28
+ payload?: ToolConfirmationPayload;
29
+ /**
30
+ * Legacy flag maintained for compatibility. New publishers should send a
31
+ * concrete outcome instead.
32
+ */
33
+ confirmed?: boolean;
34
+ requiresUserConfirmation?: boolean;
35
+ }
36
+ export interface ToolPolicyRejection {
37
+ type: MessageBusType.TOOL_POLICY_REJECTION;
38
+ toolCall: FunctionCall;
39
+ correlationId: string;
40
+ reason: string;
41
+ serverName?: string;
42
+ }
43
+ export interface ToolExecutionSuccess {
44
+ type: MessageBusType.TOOL_EXECUTION_SUCCESS;
45
+ toolCall: FunctionCall;
46
+ correlationId: string;
47
+ result: unknown;
48
+ }
49
+ export interface ToolExecutionFailure {
50
+ type: MessageBusType.TOOL_EXECUTION_FAILURE;
51
+ toolCall: FunctionCall;
52
+ correlationId: string;
53
+ error: Error;
54
+ }
55
+ export interface UpdatePolicy {
56
+ type: MessageBusType.UPDATE_POLICY;
57
+ toolName: string;
58
+ }
59
+ export type MessageBusMessage = ToolConfirmationRequest | ToolConfirmationResponse | ToolPolicyRejection | ToolExecutionSuccess | ToolExecutionFailure | UpdatePolicy;
@@ -0,0 +1,10 @@
1
+ export var MessageBusType;
2
+ (function (MessageBusType) {
3
+ MessageBusType["TOOL_CONFIRMATION_REQUEST"] = "tool-confirmation-request";
4
+ MessageBusType["TOOL_CONFIRMATION_RESPONSE"] = "tool-confirmation-response";
5
+ MessageBusType["TOOL_POLICY_REJECTION"] = "tool-policy-rejection";
6
+ MessageBusType["TOOL_EXECUTION_SUCCESS"] = "tool-execution-success";
7
+ MessageBusType["TOOL_EXECUTION_FAILURE"] = "tool-execution-failure";
8
+ MessageBusType["UPDATE_POLICY"] = "update-policy";
9
+ })(MessageBusType || (MessageBusType = {}));
10
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/confirmation-bus/types.ts"],"names":[],"mappings":"AAMA,MAAM,CAAN,IAAY,cAOX;AAPD,WAAY,cAAc;IACxB,yEAAuD,CAAA;IACvD,2EAAyD,CAAA;IACzD,iEAA+C,CAAA;IAC/C,mEAAiD,CAAA;IACjD,mEAAiD,CAAA;IACjD,iDAA+B,CAAA;AACjC,CAAC,EAPW,cAAc,KAAd,cAAc,QAOzB"}
@@ -17,7 +17,7 @@ import type { AgentRuntimeState } from '../runtime/AgentRuntimeState.js';
17
17
  *
18
18
  * Exported for testing purposes.
19
19
  */
20
- export declare function findIndexAfterFraction(history: Content[], fraction: number): number;
20
+ export declare function findCompressSplitPoint(contents: Content[], fraction: number): number;
21
21
  export declare class GeminiClient {
22
22
  private readonly config;
23
23
  private chat?;