@defai.digital/ax-cli 3.7.2 → 3.8.2
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/README.md +148 -53
- package/dist/agent/context-manager.d.ts +15 -1
- package/dist/agent/context-manager.js +50 -19
- package/dist/agent/context-manager.js.map +1 -1
- package/dist/agent/dependency-resolver.js +13 -7
- package/dist/agent/dependency-resolver.js.map +1 -1
- package/dist/agent/llm-agent.d.ts +37 -0
- package/dist/agent/llm-agent.js +318 -98
- package/dist/agent/llm-agent.js.map +1 -1
- package/dist/agent/status-reporter.d.ts +114 -0
- package/dist/agent/status-reporter.js +335 -0
- package/dist/agent/status-reporter.js.map +1 -0
- package/dist/analyzers/best-practices/rules/typescript/no-magic-numbers.js +8 -2
- package/dist/analyzers/best-practices/rules/typescript/no-magic-numbers.js.map +1 -1
- package/dist/analyzers/best-practices/rules/typescript/no-unused-vars.js +3 -1
- package/dist/analyzers/best-practices/rules/typescript/no-unused-vars.js.map +1 -1
- package/dist/analyzers/best-practices/rules/typescript/prefer-const.js +3 -1
- package/dist/analyzers/best-practices/rules/typescript/prefer-const.js.map +1 -1
- package/dist/analyzers/best-practices/rules/typescript/prefer-readonly.js +3 -1
- package/dist/analyzers/best-practices/rules/typescript/prefer-readonly.js.map +1 -1
- package/dist/analyzers/code-smells/detectors/duplicate-code-detector.js +9 -3
- package/dist/analyzers/code-smells/detectors/duplicate-code-detector.js.map +1 -1
- package/dist/analyzers/git/churn-calculator.d.ts +2 -0
- package/dist/analyzers/git/churn-calculator.js +42 -8
- package/dist/analyzers/git/churn-calculator.js.map +1 -1
- package/dist/analyzers/git/hotspot-detector.js +2 -2
- package/dist/analyzers/git/hotspot-detector.js.map +1 -1
- package/dist/analyzers/metrics/metrics-analyzer.js +1 -1
- package/dist/analyzers/metrics/metrics-analyzer.js.map +1 -1
- package/dist/analyzers/security/security-analyzer.js +1 -1
- package/dist/analyzers/security/security-analyzer.js.map +1 -1
- package/dist/checkpoint/manager.d.ts +1 -0
- package/dist/checkpoint/manager.js +49 -9
- package/dist/checkpoint/manager.js.map +1 -1
- package/dist/checkpoint/storage.js +2 -2
- package/dist/checkpoint/storage.js.map +1 -1
- package/dist/commands/mcp-migrate.d.ts +9 -0
- package/dist/commands/mcp-migrate.js +172 -0
- package/dist/commands/mcp-migrate.js.map +1 -0
- package/dist/commands/status.d.ts +7 -0
- package/dist/commands/status.js +211 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/vscode.d.ts +7 -0
- package/dist/commands/vscode.js +363 -0
- package/dist/commands/vscode.js.map +1 -0
- package/dist/index.js +79 -30
- package/dist/index.js.map +1 -1
- package/dist/llm/client.js +33 -4
- package/dist/llm/client.js.map +1 -1
- package/dist/mcp/automatosx-loader.d.ts +84 -0
- package/dist/mcp/automatosx-loader.js +238 -0
- package/dist/mcp/automatosx-loader.js.map +1 -0
- package/dist/mcp/client-mutex-patch.d.ts +36 -0
- package/dist/mcp/client-mutex-patch.js +75 -0
- package/dist/mcp/client-mutex-patch.js.map +1 -0
- package/dist/mcp/client-v2.d.ts +229 -0
- package/dist/mcp/client-v2.js +740 -0
- package/dist/mcp/client-v2.js.map +1 -0
- package/dist/mcp/client.d.ts +111 -13
- package/dist/mcp/client.js +168 -253
- package/dist/mcp/client.js.map +1 -1
- package/dist/mcp/config-detector-v2.d.ts +83 -0
- package/dist/mcp/config-detector-v2.js +328 -0
- package/dist/mcp/config-detector-v2.js.map +1 -0
- package/dist/mcp/config-detector.d.ts +90 -0
- package/dist/mcp/config-detector.js +242 -0
- package/dist/mcp/config-detector.js.map +1 -0
- package/dist/mcp/config-migrator-v2.d.ts +89 -0
- package/dist/mcp/config-migrator-v2.js +288 -0
- package/dist/mcp/config-migrator-v2.js.map +1 -0
- package/dist/mcp/config-migrator.d.ts +63 -0
- package/dist/mcp/config-migrator.js +269 -0
- package/dist/mcp/config-migrator.js.map +1 -0
- package/dist/mcp/config-v2.d.ts +106 -0
- package/dist/mcp/config-v2.js +417 -0
- package/dist/mcp/config-v2.js.map +1 -0
- package/dist/mcp/config.d.ts +12 -1
- package/dist/mcp/config.js +95 -10
- package/dist/mcp/config.js.map +1 -1
- package/dist/mcp/error-formatter.d.ts +46 -0
- package/dist/mcp/error-formatter.js +244 -0
- package/dist/mcp/error-formatter.js.map +1 -0
- package/dist/mcp/health.d.ts +5 -0
- package/dist/mcp/health.js +22 -2
- package/dist/mcp/health.js.map +1 -1
- package/dist/mcp/invariants.d.ts +141 -0
- package/dist/mcp/invariants.js +243 -0
- package/dist/mcp/invariants.js.map +1 -0
- package/dist/mcp/mutex-safe.d.ts +153 -0
- package/dist/mcp/mutex-safe.js +260 -0
- package/dist/mcp/mutex-safe.js.map +1 -0
- package/dist/mcp/mutex.d.ts +73 -0
- package/dist/mcp/mutex.js +137 -0
- package/dist/mcp/mutex.js.map +1 -0
- package/dist/mcp/reconnection.d.ts +4 -0
- package/dist/mcp/reconnection.js +25 -1
- package/dist/mcp/reconnection.js.map +1 -1
- package/dist/mcp/transports-v2.d.ts +152 -0
- package/dist/mcp/transports-v2.js +481 -0
- package/dist/mcp/transports-v2.js.map +1 -0
- package/dist/mcp/type-safety.d.ts +231 -0
- package/dist/mcp/type-safety.js +273 -0
- package/dist/mcp/type-safety.js.map +1 -0
- package/dist/planner/task-planner.js +13 -0
- package/dist/planner/task-planner.js.map +1 -1
- package/dist/planner/types.d.ts +6 -6
- package/dist/schemas/confirmation-schemas.d.ts +2 -2
- package/dist/schemas/settings-schemas.d.ts +196 -0
- package/dist/schemas/settings-schemas.js +146 -5
- package/dist/schemas/settings-schemas.js.map +1 -1
- package/dist/sdk/index.d.ts +118 -2
- package/dist/sdk/index.js +146 -4
- package/dist/sdk/index.js.map +1 -1
- package/dist/sdk/testing.d.ts +182 -0
- package/dist/sdk/testing.js +231 -0
- package/dist/sdk/testing.js.map +1 -1
- package/dist/sdk/version.d.ts +114 -15
- package/dist/sdk/version.js +137 -15
- package/dist/sdk/version.js.map +1 -1
- package/dist/tools/bash.js +54 -9
- package/dist/tools/bash.js.map +1 -1
- package/dist/tools/registry.d.ts +146 -0
- package/dist/tools/registry.js +170 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/search.js +12 -2
- package/dist/tools/search.js.map +1 -1
- package/dist/tools/text-editor.js +84 -26
- package/dist/tools/text-editor.js.map +1 -1
- package/dist/ui/components/chat-history.js +6 -1
- package/dist/ui/components/chat-history.js.map +1 -1
- package/dist/ui/components/chat-input.d.ts +2 -1
- package/dist/ui/components/chat-input.js +5 -2
- package/dist/ui/components/chat-input.js.map +1 -1
- package/dist/ui/components/chat-interface.js +187 -5
- package/dist/ui/components/chat-interface.js.map +1 -1
- package/dist/ui/components/context-breakdown.d.ts +23 -0
- package/dist/ui/components/context-breakdown.js +124 -0
- package/dist/ui/components/context-breakdown.js.map +1 -0
- package/dist/ui/components/keyboard-help.d.ts +17 -0
- package/dist/ui/components/keyboard-help.js +116 -0
- package/dist/ui/components/keyboard-help.js.map +1 -0
- package/dist/ui/components/keyboard-hints.js +2 -2
- package/dist/ui/components/keyboard-hints.js.map +1 -1
- package/dist/ui/components/quick-actions.js +43 -7
- package/dist/ui/components/quick-actions.js.map +1 -1
- package/dist/ui/components/status-bar.d.ts +3 -0
- package/dist/ui/components/status-bar.js +25 -16
- package/dist/ui/components/status-bar.js.map +1 -1
- package/dist/ui/components/toast-notification.d.ts +42 -0
- package/dist/ui/components/toast-notification.js +30 -2
- package/dist/ui/components/toast-notification.js.map +1 -1
- package/dist/ui/components/tool-group-display.js +34 -4
- package/dist/ui/components/tool-group-display.js.map +1 -1
- package/dist/ui/components/welcome-panel.js +2 -2
- package/dist/ui/components/welcome-panel.js.map +1 -1
- package/dist/ui/hooks/use-enhanced-input.d.ts +9 -1
- package/dist/ui/hooks/use-enhanced-input.js +901 -90
- package/dist/ui/hooks/use-enhanced-input.js.map +1 -1
- package/dist/ui/hooks/use-input-handler.d.ts +11 -1
- package/dist/ui/hooks/use-input-handler.js +67 -3
- package/dist/ui/hooks/use-input-handler.js.map +1 -1
- package/dist/ui/hooks/use-input-history.d.ts +1 -1
- package/dist/ui/hooks/use-input-history.js +50 -14
- package/dist/ui/hooks/use-input-history.js.map +1 -1
- package/dist/ui/utils/bracketed-paste-handler.d.ts +97 -0
- package/dist/ui/utils/bracketed-paste-handler.js +322 -0
- package/dist/ui/utils/bracketed-paste-handler.js.map +1 -0
- package/dist/ui/utils/change-summarizer.js +16 -6
- package/dist/ui/utils/change-summarizer.js.map +1 -1
- package/dist/ui/utils/tool-grouper.d.ts +10 -1
- package/dist/ui/utils/tool-grouper.js +143 -30
- package/dist/ui/utils/tool-grouper.js.map +1 -1
- package/dist/utils/auto-accept-logger.d.ts +173 -0
- package/dist/utils/auto-accept-logger.js +420 -0
- package/dist/utils/auto-accept-logger.js.map +1 -0
- package/dist/utils/background-task-manager.d.ts +11 -0
- package/dist/utils/background-task-manager.js +124 -38
- package/dist/utils/background-task-manager.js.map +1 -1
- package/dist/utils/confirmation-service.d.ts +1 -0
- package/dist/utils/confirmation-service.js +6 -1
- package/dist/utils/confirmation-service.js.map +1 -1
- package/dist/utils/encryption.d.ts +8 -0
- package/dist/utils/encryption.js +44 -27
- package/dist/utils/encryption.js.map +1 -1
- package/dist/utils/enhanced-error-messages.d.ts +33 -0
- package/dist/utils/enhanced-error-messages.js +420 -0
- package/dist/utils/enhanced-error-messages.js.map +1 -0
- package/dist/utils/error-handler.d.ts +13 -3
- package/dist/utils/error-handler.js +16 -4
- package/dist/utils/error-handler.js.map +1 -1
- package/dist/utils/external-editor.d.ts +47 -0
- package/dist/utils/external-editor.js +179 -0
- package/dist/utils/external-editor.js.map +1 -0
- package/dist/utils/history-migration.d.ts +9 -0
- package/dist/utils/history-migration.js +36 -0
- package/dist/utils/history-migration.js.map +1 -0
- package/dist/utils/paste-utils.js +12 -11
- package/dist/utils/paste-utils.js.map +1 -1
- package/dist/utils/rate-limiter.js +20 -1
- package/dist/utils/rate-limiter.js.map +1 -1
- package/dist/utils/safety-rules.d.ts +64 -0
- package/dist/utils/safety-rules.js +225 -0
- package/dist/utils/safety-rules.js.map +1 -0
- package/dist/utils/settings-manager.d.ts +89 -1
- package/dist/utils/settings-manager.js +359 -3
- package/dist/utils/settings-manager.js.map +1 -1
- package/dist/utils/token-counter.d.ts +2 -0
- package/dist/utils/token-counter.js +32 -9
- package/dist/utils/token-counter.js.map +1 -1
- package/dist/utils/version.d.ts +11 -2
- package/dist/utils/version.js +54 -21
- package/dist/utils/version.js.map +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# AX CLI - Enterprise-Class CLI for GenAI coding
|
|
2
2
|
|
|
3
3
|
[](https://npm-stat.com/charts.html?package=%40defai.digital%2Fax-cli)
|
|
4
|
-
[](https://github.com/defai-digital/ax-cli/actions/workflows/test.yml)
|
|
5
5
|
[](https://github.com/defai-digital/ax-cli)
|
|
6
6
|
[](https://www.typescriptlang.org/)
|
|
7
7
|
[](https://nodejs.org/)
|
|
@@ -16,24 +16,47 @@
|
|
|
16
16
|
<strong>GLM-Optimized CLI • Enterprise Architecture • 98%+ Test Coverage • TypeScript & Zod</strong>
|
|
17
17
|
</p>
|
|
18
18
|
|
|
19
|
+
## 📋 Table of Contents
|
|
20
|
+
|
|
21
|
+
- [🚀 Quick Start](#-quick-start)
|
|
22
|
+
- [✨ Features](#-features)
|
|
23
|
+
- [🎉 What's New](#-whats-new-in-v380)
|
|
24
|
+
- [📦 Installation](#-installation)
|
|
25
|
+
- [⚙️ Configuration](#️-configuration)
|
|
26
|
+
- [🔒 Security](#-security--api-key-handling)
|
|
27
|
+
- [🎯 Usage Examples](#-usage-examples)
|
|
28
|
+
- [🌐 Web Search](#-web-search)
|
|
29
|
+
- [🔌 MCP Integration](#-mcp-model-context-protocol)
|
|
30
|
+
- [🧠 Project Memory](#-project-memory)
|
|
31
|
+
- [🎯 Multi-Phase Planner](#-multi-phase-task-planner-v300)
|
|
32
|
+
- [🏗️ Architecture](#️-architecture)
|
|
33
|
+
- [📚 Documentation](#-documentation)
|
|
34
|
+
- [📋 Changelog](#-changelog)
|
|
35
|
+
|
|
19
36
|
---
|
|
20
37
|
|
|
21
38
|
## 🚀 Quick Start
|
|
22
39
|
|
|
40
|
+
Get up and running in under 2 minutes:
|
|
41
|
+
|
|
23
42
|
```bash
|
|
24
|
-
# Install globally
|
|
43
|
+
# 1️⃣ Install globally
|
|
25
44
|
npm install -g @defai.digital/ax-cli
|
|
26
45
|
|
|
27
|
-
# Configure
|
|
46
|
+
# 2️⃣ Configure (secure API key setup)
|
|
28
47
|
ax-cli setup
|
|
29
48
|
|
|
30
|
-
# Initialize your project
|
|
49
|
+
# 3️⃣ Initialize your project
|
|
31
50
|
ax-cli init
|
|
32
51
|
|
|
33
|
-
# Start
|
|
52
|
+
# 4️⃣ Start coding!
|
|
34
53
|
ax-cli
|
|
35
54
|
```
|
|
36
55
|
|
|
56
|
+
**That's it!** 🎉 AX CLI is now ready to help you build, debug, and ship code faster.
|
|
57
|
+
|
|
58
|
+
**Need help?** Run `ax-cli --help` or check the [Usage Guide](#-usage-examples).
|
|
59
|
+
|
|
37
60
|
## ✨ Features
|
|
38
61
|
|
|
39
62
|
- **🤖 GLM-Focused AI CLI**: Optimized for Z.AI's GLM models (glm-4.6, glm-4-air, glm-4-airx)
|
|
@@ -101,7 +124,7 @@ ax-cli
|
|
|
101
124
|
- **Memory Leak Fixes**: Process pool management for long-running operations
|
|
102
125
|
- **Security Audit Logging**: Basic JSON logging with 30-day retention
|
|
103
126
|
- **Rate Limiting**: Token bucket algorithm to prevent API abuse (100 req/min)
|
|
104
|
-
- **
|
|
127
|
+
- **1517+ tests passing** with **98.29% coverage** - Production-ready security
|
|
105
128
|
- **User-friendly defaults**: Full functionality with enterprise-grade security for everyone
|
|
106
129
|
- **🏢 Enterprise Features**: Advanced capabilities for teams and compliance
|
|
107
130
|
- **Compliance Report Generation**: SOC2, HIPAA, PCI-DSS automated reporting
|
|
@@ -141,63 +164,61 @@ AX CLI uses **industry-standard max tokens** based on research of leading AI cod
|
|
|
141
164
|
|
|
142
165
|
[View all features →](docs/features.md)
|
|
143
166
|
|
|
144
|
-
## 🎉 What's New in v3.
|
|
167
|
+
## 🎉 What's New in v3.8.2
|
|
145
168
|
|
|
146
|
-
**
|
|
169
|
+
**Deep Bug Fixes** - Comprehensive stability improvements for enhanced input handling:
|
|
147
170
|
|
|
148
|
-
###
|
|
171
|
+
### 🐛 Bug Fixes
|
|
149
172
|
|
|
150
|
-
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
case SDKErrorCode.SETUP_NOT_RUN:
|
|
158
|
-
console.log('Run: ax-cli setup');
|
|
159
|
-
break;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
```
|
|
173
|
+
- **Fixed external editor paste buffer race condition** - External editor callback now properly clears pending paste accumulation to prevent content overwrite
|
|
174
|
+
- **Fixed `pastedBlocks` stale closure in submit** - Added `pastedBlocksRef` to ensure `expandPlaceholdersForSubmit` always has current paste block data during rapid paste + submit sequences
|
|
175
|
+
- **Synchronized paste block refs** - All `setPastedBlocks` calls now sync `pastedBlocksRef` immediately to prevent race conditions
|
|
176
|
+
- **Fixed async iterator cleanup** - Proper cleanup for async iterators in LLM agent
|
|
177
|
+
- **Fixed cache eviction improvements** - Better memory management for token counter cache
|
|
178
|
+
- **Fixed state validation and race conditions** - Improved state handling in MCP reconnection logic
|
|
179
|
+
- **Fixed event listener error handling** - Better error boundaries for edge cases
|
|
164
180
|
|
|
165
|
-
|
|
166
|
-
- Validates `maxToolRounds` (1-1000, must be integer)
|
|
167
|
-
- Rejects NaN, negative values, unknown properties
|
|
168
|
-
- Clear validation error messages
|
|
181
|
+
### ✅ Quality
|
|
169
182
|
|
|
170
|
-
-
|
|
171
|
-
|
|
172
|
-
|
|
183
|
+
- All tests passing
|
|
184
|
+
- 98%+ test coverage maintained
|
|
185
|
+
- Zero breaking changes
|
|
186
|
+
- Improved stability for paste operations
|
|
173
187
|
|
|
174
|
-
|
|
175
|
-
const result = await agent.processUserMessage('Test');
|
|
176
|
-
```
|
|
188
|
+
---
|
|
177
189
|
|
|
178
|
-
|
|
179
|
-
- Throws `AGENT_DISPOSED` error if agent used after `dispose()`
|
|
180
|
-
- Idempotent disposal (safe to call multiple times)
|
|
190
|
+
## 🎉 What's New in v3.8.0
|
|
181
191
|
|
|
182
|
-
|
|
183
|
-
```typescript
|
|
184
|
-
import { SDK_VERSION, getSDKInfo } from '@defai.digital/ax-cli/sdk';
|
|
192
|
+
**UI/UX Refinements & Bug Fixes** - Polish and stability improvements:
|
|
185
193
|
|
|
186
|
-
|
|
187
|
-
```
|
|
194
|
+
### ✨ Improvements
|
|
188
195
|
|
|
189
|
-
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
+
- **🎨 Unified Terminology**: Consistent "Auto-Edit" naming across entire UI
|
|
197
|
+
- Changed "Auto-apply" to "Auto-Edit" throughout all components
|
|
198
|
+
- Unified color scheme: Yellow for active, gray for inactive
|
|
199
|
+
- Consistent display in status bar, keyboard help, welcome panel, and toast messages
|
|
200
|
+
|
|
201
|
+
- **🎨 Color Consistency**: Fixed UI color inconsistencies
|
|
202
|
+
- Auto-edit mode now consistently shows yellow when enabled (was mixed green/yellow)
|
|
203
|
+
- Verbosity mode properly shows yellow when active (Concise/Verbose), gray when Quiet
|
|
204
|
+
- All keyboard shortcuts and status indicators use matching colors
|
|
196
205
|
|
|
197
|
-
###
|
|
206
|
+
### 🐛 Bug Fixes
|
|
198
207
|
|
|
199
|
-
- **
|
|
200
|
-
- **
|
|
208
|
+
- **Fixed ModePill component** - Empty string values now display correctly
|
|
209
|
+
- **Fixed ContextBar crashes** - Added bounds checking for invalid percentage values (NaN, Infinity, negative)
|
|
210
|
+
- **Fixed formatTokenCount** - Handles invalid token counts gracefully (NaN, Infinity, negative)
|
|
211
|
+
- **Fixed Verbosity display** - Pills now correctly highlight yellow when not in Quiet mode
|
|
212
|
+
- **Fixed keyboard help colors** - Auto-edit status matches status bar coloring
|
|
213
|
+
|
|
214
|
+
### ✅ Quality
|
|
215
|
+
|
|
216
|
+
- All 1,517 tests passing (9 skipped)
|
|
217
|
+
- 98.29% test coverage maintained
|
|
218
|
+
- Zero breaking changes
|
|
219
|
+
- Improved UI/UX consistency
|
|
220
|
+
|
|
221
|
+
---
|
|
201
222
|
- **Type Safety**: Full TypeScript support with proper type exports
|
|
202
223
|
|
|
203
224
|
### 📦 Breaking Changes
|
|
@@ -271,6 +292,57 @@ ax-cli
|
|
|
271
292
|
|
|
272
293
|
[Configuration Guide →](docs/configuration.md)
|
|
273
294
|
|
|
295
|
+
---
|
|
296
|
+
|
|
297
|
+
## 🔒 Security & API Key Handling
|
|
298
|
+
|
|
299
|
+
🛡️ **Enterprise-Grade Security** - Your API keys and data are protected with multiple layers of security:
|
|
300
|
+
|
|
301
|
+
### 🔐 API Key Encryption
|
|
302
|
+
|
|
303
|
+
- **AES-256-GCM Encryption**: Military-grade authenticated encryption at rest
|
|
304
|
+
- **PBKDF2 Key Derivation**: 600,000 iterations (OWASP 2024 standard)
|
|
305
|
+
- **Secure File Permissions**: Config files automatically set to `0600` (owner-only)
|
|
306
|
+
- **Auto-Migration**: Existing plain-text keys are automatically encrypted
|
|
307
|
+
|
|
308
|
+
### 🎯 What's Protected
|
|
309
|
+
|
|
310
|
+
✅ **Casual file browsing** - Prevents accidental exposure in editors
|
|
311
|
+
✅ **Config backups** - Keys unreadable in plain-text backups
|
|
312
|
+
✅ **Accidental commits** - Encrypted keys are useless without machine context
|
|
313
|
+
✅ **Data at rest** - Never stored in plain-text on disk
|
|
314
|
+
|
|
315
|
+
### ⚠️ Limitations (Transparent)
|
|
316
|
+
|
|
317
|
+
❌ **Determined attackers** with machine access can derive encryption keys
|
|
318
|
+
❌ **Open-source analysis** - Implementation is publicly visible
|
|
319
|
+
|
|
320
|
+
> **Trade-off**: Like AWS CLI, kubectl, and GitHub CLI, we balance security with usability and portability.
|
|
321
|
+
|
|
322
|
+
### 🛡️ Security Best Practices
|
|
323
|
+
|
|
324
|
+
1. **CI/CD**: Use environment variables (`export API_KEY=...`)
|
|
325
|
+
2. **File Permissions**: Verify `ls -la ~/.ax-cli/config.json` shows `-rw-------`
|
|
326
|
+
3. **Git Safety**: Add `.ax-cli/` to `.gitignore`
|
|
327
|
+
4. **Key Rotation**: Update regularly via `ax-cli setup`
|
|
328
|
+
5. **Scoped Keys**: Use minimal permissions and spending limits
|
|
329
|
+
6. **Monitoring**: Check provider dashboards for unusual activity
|
|
330
|
+
|
|
331
|
+
### 📊 Privacy & Logging
|
|
332
|
+
|
|
333
|
+
- ✅ **API keys**: NEVER logged
|
|
334
|
+
- ✅ **Prompts**: Stored locally (encrypted if keys present)
|
|
335
|
+
- ✅ **Errors**: Sanitized to remove sensitive data
|
|
336
|
+
- ✅ **Telemetry**: NONE collected
|
|
337
|
+
|
|
338
|
+
### 🚨 Report Security Issues
|
|
339
|
+
|
|
340
|
+
Email: **security@defai.digital** (private, not public issues)
|
|
341
|
+
|
|
342
|
+
Include: vulnerability description, reproduction steps, impact, and suggested fix. Response within 48 hours.
|
|
343
|
+
|
|
344
|
+
---
|
|
345
|
+
|
|
274
346
|
## 🎯 Usage Examples
|
|
275
347
|
|
|
276
348
|
### Interactive Mode
|
|
@@ -1083,7 +1155,7 @@ AX CLI implements enterprise-grade architecture with:
|
|
|
1083
1155
|
|
|
1084
1156
|
- **Single Source of Truth (SSOT)** type system via `@ax-cli/schemas`
|
|
1085
1157
|
- **TypeScript strict mode** with Zod runtime validation
|
|
1086
|
-
- **98%+ test coverage** (
|
|
1158
|
+
- **98%+ test coverage** (1517 tests passing)
|
|
1087
1159
|
- **Modular design** with clean separation of concerns
|
|
1088
1160
|
- **Enterprise security** with AES-256-GCM encryption for sensitive data
|
|
1089
1161
|
|
|
@@ -1094,6 +1166,7 @@ AX CLI implements enterprise-grade architecture with:
|
|
|
1094
1166
|
- [Features](docs/features.md) - Complete feature list and capabilities
|
|
1095
1167
|
- [Installation](docs/installation.md) - Detailed installation guide
|
|
1096
1168
|
- [Configuration](docs/configuration.md) - Configuration options and settings
|
|
1169
|
+
- [Security & API Key Handling](#-security--api-key-handling) - Security model, encryption details, and best practices
|
|
1097
1170
|
- [Usage](docs/usage.md) - Comprehensive usage guide
|
|
1098
1171
|
- [CLI Reference](docs/cli-reference.md) - Command-line interface reference
|
|
1099
1172
|
- [MCP Integration](docs/mcp.md) - Model Context Protocol guide
|
|
@@ -1104,6 +1177,28 @@ AX CLI implements enterprise-grade architecture with:
|
|
|
1104
1177
|
|
|
1105
1178
|
## 📋 Changelog
|
|
1106
1179
|
|
|
1180
|
+
### v3.8.0 (2025-11-23)
|
|
1181
|
+
|
|
1182
|
+
**🎨 UI/UX Refinements & Bug Fixes:**
|
|
1183
|
+
|
|
1184
|
+
**✨ Improvements:**
|
|
1185
|
+
- Unified "Auto-Edit" terminology throughout entire UI (was inconsistently "Auto-apply")
|
|
1186
|
+
- Consistent yellow color scheme for Auto-Edit mode when enabled
|
|
1187
|
+
- Fixed Verbosity mode color display (yellow when active, gray when Quiet)
|
|
1188
|
+
- Improved visual consistency across status bar, keyboard help, and welcome panel
|
|
1189
|
+
|
|
1190
|
+
**🐛 Bug Fixes:**
|
|
1191
|
+
- Fixed ModePill component handling of empty string values
|
|
1192
|
+
- Fixed ContextBar crashes with invalid percentage values (NaN, Infinity, negative)
|
|
1193
|
+
- Fixed formatTokenCount handling of invalid inputs
|
|
1194
|
+
- Fixed Verbosity pill not highlighting when not in Quiet mode
|
|
1195
|
+
- Fixed keyboard help color inconsistencies
|
|
1196
|
+
|
|
1197
|
+
**✅ Quality:**
|
|
1198
|
+
- All 1,517 tests passing (9 skipped)
|
|
1199
|
+
- 98.29% test coverage maintained
|
|
1200
|
+
- Zero breaking changes
|
|
1201
|
+
|
|
1107
1202
|
### v3.7.2 (2025-11-23)
|
|
1108
1203
|
|
|
1109
1204
|
**🐛 Bug Fixes - Test Stability:**
|
|
@@ -1156,7 +1251,7 @@ AX CLI implements enterprise-grade architecture with:
|
|
|
1156
1251
|
- **Memory Leak Fixes**: Process pool management for long-running operations
|
|
1157
1252
|
|
|
1158
1253
|
**✅ Test Quality:**
|
|
1159
|
-
- **
|
|
1254
|
+
- **1517+ tests passing** with 98.29% coverage
|
|
1160
1255
|
- All security modules fully tested and validated
|
|
1161
1256
|
- Production-ready security implementation
|
|
1162
1257
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Context management for handling long conversations
|
|
3
3
|
* Prevents context window overflow through intelligent pruning
|
|
4
4
|
*/
|
|
5
|
+
import { EventEmitter } from 'events';
|
|
5
6
|
import type { LLMMessage } from '../llm/client.js';
|
|
6
7
|
import type { TokenCounter } from '../utils/token-counter.js';
|
|
7
8
|
export interface ContextManagerOptions {
|
|
@@ -18,7 +19,19 @@ export interface ContextManagerOptions {
|
|
|
18
19
|
/** Reserved tokens for system message (default: 3000) */
|
|
19
20
|
reservedTokens?: number;
|
|
20
21
|
}
|
|
21
|
-
export
|
|
22
|
+
export interface ContextManagerEvents {
|
|
23
|
+
'before_prune': (data: {
|
|
24
|
+
messageCount: number;
|
|
25
|
+
tokenCount: number;
|
|
26
|
+
messages: LLMMessage[];
|
|
27
|
+
}) => void;
|
|
28
|
+
'after_prune': (data: {
|
|
29
|
+
beforeCount: number;
|
|
30
|
+
afterCount: number;
|
|
31
|
+
tokensSaved: number;
|
|
32
|
+
}) => void;
|
|
33
|
+
}
|
|
34
|
+
export declare class ContextManager extends EventEmitter {
|
|
22
35
|
private model;
|
|
23
36
|
private contextWindow;
|
|
24
37
|
private pruneThreshold;
|
|
@@ -30,6 +43,7 @@ export declare class ContextManager {
|
|
|
30
43
|
private readonly CACHE_TTL;
|
|
31
44
|
private readonly MAX_CACHE_SIZE;
|
|
32
45
|
private cleanupTimer;
|
|
46
|
+
private cleanupInProgress;
|
|
33
47
|
constructor(options: ContextManagerOptions);
|
|
34
48
|
/**
|
|
35
49
|
* Memoized token counting with cache and lazy cleanup
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
* Context management for handling long conversations
|
|
3
3
|
* Prevents context window overflow through intelligent pruning
|
|
4
4
|
*/
|
|
5
|
+
import { EventEmitter } from 'events';
|
|
5
6
|
import { GLM_MODELS } from '../constants.js';
|
|
6
7
|
import * as crypto from 'crypto';
|
|
7
|
-
export class ContextManager {
|
|
8
|
+
export class ContextManager extends EventEmitter {
|
|
8
9
|
model;
|
|
9
10
|
contextWindow;
|
|
10
11
|
pruneThreshold;
|
|
@@ -18,7 +19,9 @@ export class ContextManager {
|
|
|
18
19
|
CACHE_TTL = 60000; // 1 minute TTL
|
|
19
20
|
MAX_CACHE_SIZE = 100; // Maximum cache entries before cleanup
|
|
20
21
|
cleanupTimer = null;
|
|
22
|
+
cleanupInProgress = false; // RACE CONDITION FIX: Lock to prevent concurrent cleanup
|
|
21
23
|
constructor(options) {
|
|
24
|
+
super(); // Initialize EventEmitter
|
|
22
25
|
this.model = options.model;
|
|
23
26
|
const modelConfig = GLM_MODELS[this.model];
|
|
24
27
|
this.contextWindow = modelConfig?.contextWindow || 128000;
|
|
@@ -56,20 +59,28 @@ export class ContextManager {
|
|
|
56
59
|
}
|
|
57
60
|
// Perform incremental cache cleanup if cache is getting too large
|
|
58
61
|
// Instead of sorting all entries, just remove oldest 10-20% incrementally
|
|
59
|
-
if (this.tokenCache.size
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
62
|
+
if (this.tokenCache.size >= this.MAX_CACHE_SIZE) {
|
|
63
|
+
// RACE CONDITION FIX: Skip if cleanup already in progress
|
|
64
|
+
if (!this.cleanupInProgress) {
|
|
65
|
+
this.cleanupInProgress = true;
|
|
66
|
+
try {
|
|
67
|
+
this.cleanupCache();
|
|
68
|
+
// If still over limit after cleanup, evict oldest entries to 90% capacity
|
|
69
|
+
if (this.tokenCache.size >= this.MAX_CACHE_SIZE) {
|
|
70
|
+
// Remove entries to get back to 90% capacity for headroom
|
|
71
|
+
const targetSize = Math.floor(this.MAX_CACHE_SIZE * 0.9);
|
|
72
|
+
// CONCURRENCY FIX: Snapshot entries before calculating removals
|
|
73
|
+
// to prevent iterator invalidation from concurrent modifications
|
|
74
|
+
const entries = Array.from(this.tokenCache.entries());
|
|
75
|
+
const entriesToRemove = entries.length - targetSize;
|
|
76
|
+
// Delete using snapshot to avoid race conditions
|
|
77
|
+
for (let i = 0; i < Math.min(entriesToRemove, entries.length); i++) {
|
|
78
|
+
this.tokenCache.delete(entries[i][0]);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
finally {
|
|
83
|
+
this.cleanupInProgress = false;
|
|
73
84
|
}
|
|
74
85
|
}
|
|
75
86
|
}
|
|
@@ -189,6 +200,13 @@ export class ContextManager {
|
|
|
189
200
|
if (!this.shouldPrune(messages, tokenCounter)) {
|
|
190
201
|
return messages;
|
|
191
202
|
}
|
|
203
|
+
// NEW: Emit event before pruning (so agent can generate summary)
|
|
204
|
+
const currentTokens = this.getCachedTokenCount(messages, tokenCounter);
|
|
205
|
+
this.emit('before_prune', {
|
|
206
|
+
messageCount: messages.length,
|
|
207
|
+
tokenCount: currentTokens,
|
|
208
|
+
messages: [...messages], // Provide copy for summary generation
|
|
209
|
+
});
|
|
192
210
|
const systemMessage = messages[0];
|
|
193
211
|
let workingMessages = messages.slice(1);
|
|
194
212
|
// Step 1: Identify and keep important messages
|
|
@@ -220,12 +238,25 @@ export class ContextManager {
|
|
|
220
238
|
}
|
|
221
239
|
}
|
|
222
240
|
// Step 5: Check if still over threshold
|
|
223
|
-
|
|
241
|
+
const tokensAfterPruning = tokenCounter.countMessageTokens(prunedMessages);
|
|
224
242
|
// If still over threshold, apply sliding window
|
|
225
|
-
|
|
226
|
-
|
|
243
|
+
let finalMessages;
|
|
244
|
+
if (tokensAfterPruning > this.contextWindow * this.pruneThreshold) {
|
|
245
|
+
finalMessages = this.applySlidingWindow(prunedMessages, tokenCounter);
|
|
246
|
+
}
|
|
247
|
+
else {
|
|
248
|
+
finalMessages = prunedMessages;
|
|
227
249
|
}
|
|
228
|
-
|
|
250
|
+
// NEW: Emit event after pruning
|
|
251
|
+
const afterTokens = tokenCounter.countMessageTokens(finalMessages);
|
|
252
|
+
const beforeCount = messages.length;
|
|
253
|
+
const tokensBefore = currentTokens; // Use the variable from before pruning
|
|
254
|
+
this.emit('after_prune', {
|
|
255
|
+
beforeCount,
|
|
256
|
+
afterCount: finalMessages.length,
|
|
257
|
+
tokensSaved: tokensBefore - afterTokens,
|
|
258
|
+
});
|
|
259
|
+
return finalMessages;
|
|
229
260
|
}
|
|
230
261
|
/**
|
|
231
262
|
* Identify important messages to preserve
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-manager.js","sourceRoot":"","sources":["../../src/agent/context-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-manager.js","sourceRoot":"","sources":["../../src/agent/context-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAsBjC,MAAM,OAAO,cAAe,SAAQ,YAAY;IACtC,KAAK,CAAS;IACd,aAAa,CAAS;IACtB,cAAc,CAAS;IACvB,SAAS,CAAS;IAClB,oBAAoB,CAAS;IAC7B,iBAAiB,CAAS;IAC1B,cAAc,CAAS;IAE/B,uCAAuC;IACvC,gEAAgE;IACxD,UAAU,GAAG,IAAI,GAAG,EAAgD,CAAC;IAC5D,SAAS,GAAG,KAAK,CAAC,CAAC,eAAe;IAClC,cAAc,GAAG,GAAG,CAAC,CAAC,uCAAuC;IACtE,YAAY,GAA0B,IAAI,CAAC;IAC3C,iBAAiB,GAAG,KAAK,CAAC,CAAC,yDAAyD;IAE5F,YAAY,OAA8B;QACxC,KAAK,EAAE,CAAC,CAAC,0BAA0B;QACnC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,KAAgC,CAAC,CAAC;QACtE,IAAI,CAAC,aAAa,GAAG,WAAW,EAAE,aAAa,IAAI,MAAM,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;QACrD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;QAC3C,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,CAAC,CAAC;QAC9D,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;QAErD,0DAA0D;QAC1D,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;YACnC,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAElB,4CAA4C;QAC5C,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACK,mBAAmB,CAAC,QAAsB,EAAE,YAA0B;QAC5E,sCAAsC;QACtC,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAEtD,0DAA0D;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE7C,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,GAAG,GAAG,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC5C,OAAO,MAAM,CAAC,KAAK,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACN,qBAAqB;gBACrB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QAED,kEAAkE;QAClE,0EAA0E;QAC1E,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAChD,0DAA0D;YAC1D,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC5B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAC9B,IAAI,CAAC;oBACH,IAAI,CAAC,YAAY,EAAE,CAAC;oBACpB,0EAA0E;oBAC1E,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;wBAChD,0DAA0D;wBAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC;wBACzD,gEAAgE;wBAChE,iEAAiE;wBACjE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;wBACtD,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;wBAEpD,iDAAiD;wBACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;4BACnE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACxC,CAAC;oBACH,CAAC;gBACH,CAAC;wBAAS,CAAC;oBACT,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;gBACjC,CAAC;YACH,CAAC;QACH,CAAC;QAED,gCAAgC;QAChC,MAAM,KAAK,GAAG,YAAY,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QAEzD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACK,qBAAqB,CAAC,QAAsB;QAClD,uDAAuD;QACvD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACxC,mBAAmB;YACnB,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ;gBAC3C,CAAC,CAAC,CAAC,CAAC,OAAO;gBACX,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;oBACxB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBACvE,CAAC,CAAC,EAAE,CAAC;YAET,gCAAgC;YAChC,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,YAAY,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU;gBAClG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;gBAC9B,CAAC,CAAC,EAAE,CAAC;YAEP,+CAA+C;YAC/C,OAAO,GAAG,CAAC,CAAC,IAAI,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;QAC7C,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,gDAAgD;QAChD,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED;;OAEG;IACK,YAAY;QAClB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;YACrD,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC3C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,QAAsB,EAAE,YAA0B;QAC5D,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvE,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3D,OAAO,aAAa,GAAG,SAAS,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,QAAsB,EAAE,YAA0B;QAChE,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC;QAClD,OAAO,aAAa,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,QAAsB,EAAE,YAA0B;QACzD,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvE,+DAA+D;QAC/D,MAAM,UAAU,GAAG,GAAG,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC;QACpE,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAErD,OAAO;YACL,aAAa;YACb,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,UAAU,EAAE,UAAU,EAAE,+CAA+C;YACvE,SAAS;YACT,WAAW,EAAE,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;YACvE,WAAW,EAAE,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC;SACnE,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,aAAa,CAAC,QAAsB,EAAE,YAA0B;QAC9D,8CAA8C;QAC9C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,6DAA6D;YAC7D,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;YACnE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,2CAA2C;QAC3C,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClC,4EAA4E;YAC5E,OAAO,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;YAC9F,gFAAgF;YAChF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,wCAAwC;QACxC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,CAAC;YAC9C,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,iEAAiE;QACjE,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,YAAY,EAAE,QAAQ,CAAC,MAAM;YAC7B,UAAU,EAAE,aAAa;YACzB,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,sCAAsC;SAChE,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAExC,+CAA+C;QAC/C,MAAM,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,CAAC,eAAe,CAAC,CAAC;QAE1E,+BAA+B;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC;QAE5D,kCAAkC;QAClC,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAClE,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAE1D,oCAAoC;QACpC,MAAM,cAAc,GAAiB,CAAC,aAAa,CAAC,CAAC;QAErD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YAEnC,8BAA8B;YAC9B,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;YACD,wDAAwD;iBACnD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACjC,wBAAwB;gBACxB,SAAS;YACX,CAAC;YACD,2DAA2D;iBACtD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACjE,yCAAyC;gBACzC,IAAI,CAAC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,MAAM,kBAAkB,GAAG,YAAY,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;QAE3E,gDAAgD;QAChD,IAAI,aAA2B,CAAC;QAChC,IAAI,kBAAkB,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAClE,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QACxE,CAAC;aAAM,CAAC;YACN,aAAa,GAAG,cAAc,CAAC;QACjC,CAAC;QAED,gCAAgC;QAChC,MAAM,WAAW,GAAG,YAAY,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;QACnE,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC;QACpC,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,uCAAuC;QAC3E,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,WAAW;YACX,UAAU,EAAE,aAAa,CAAC,MAAM;YAChC,WAAW,EAAE,YAAY,GAAG,WAAW;SACxC,CAAC,CAAC;QAEH,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,yBAAyB,CAAC,QAAsB;QACtD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QAEpC,yDAAyD;QACzD,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAChC,IAAI,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC9C,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACjB,gBAAgB,EAAE,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACK,kBAAkB,CAAC,QAAsB;QAC/C,MAAM,MAAM,GAAe,EAAE,CAAC;QAC9B,IAAI,YAAY,GAAa,EAAE,CAAC;QAChC,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAE5B,4CAA4C;YAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,YAAY,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnH,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC5B,CAAC;gBACD,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC;gBACnB,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;YACD,wBAAwB;iBACnB,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC5C,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YACD,sDAAsD;iBACjD,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC3I,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC1B,YAAY,GAAG,EAAE,CAAC;gBAClB,OAAO,GAAG,KAAK,CAAC;YAClB,CAAC;YACD,0BAA0B;iBACrB,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC5C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC5B,CAAC;gBACD,YAAY,GAAG,EAAE,CAAC;gBAClB,OAAO,GAAG,KAAK,CAAC;YAClB,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,QAAsB,EAAE,YAA0B;QAC3E,2DAA2D;QAC3D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE1C,oDAAoD;QACpD,MAAM,aAAa,GAAiB,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,eAAe,GAAG,CAAC,CAAC;QAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChD,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACvC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvC,SAAS,EAAE,CAAC;gBACZ,eAAe,GAAG,CAAC,CAAC;gBACpB,IAAI,SAAS,IAAI,IAAI,CAAC,iBAAiB;oBAAE,MAAM;YACjD,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,MAAM,WAAW,GAAG,YAAY,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;QACnE,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAChC,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,WAAW,GAAG,IAAI,CAAC,cAAc,CAC/E,CAAC;QAEF,0EAA0E;QAC1E,IAAI,eAAe,IAAI,CAAC,EAAE,CAAC;YACzB,OAAO,aAAa,CAAC,CAAC,+CAA+C;QACvE,CAAC;QAED,mCAAmC;QACnC,MAAM,cAAc,GAAiB,EAAE,CAAC;QACxC,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,KAAK,IAAI,CAAC,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;YAClE,MAAM,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,SAAS,GAAG,YAAY,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAEzD,IAAI,YAAY,GAAG,SAAS,IAAI,eAAe,EAAE,CAAC;gBAChD,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC5B,YAAY,IAAI,SAAS,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACN,MAAM;YACR,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,MAAM,MAAM,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;QAElC,4CAA4C;QAC5C,oEAAoE;QACpE,MAAM,QAAQ,GAAG,eAAe,GAAG,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;QAC9D,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,GAAG,MAAM,EAAE,CAAC;YACnD,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,+DAA+D;aACzE,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;QAE/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAGD;;;OAGG;IACH,oBAAoB,CAAC,KAAuC;QAC1D,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,gBAAgB,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,IAAI,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,YAAY,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;kEAC9E,CAAC;QAC/D,CAAC;QAED,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,gBAAgB,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,IAAI,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,YAAY,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;mDAC7F,CAAC;QAChD,CAAC;QAED,OAAO,eAAe,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,IAAI,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,YAAY,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;IAC1J,CAAC;CACF"}
|
|
@@ -120,14 +120,19 @@ export class DependencyResolver {
|
|
|
120
120
|
const result = [];
|
|
121
121
|
// Create task lookup map for O(1) access
|
|
122
122
|
const taskMap = new Map(tasks.map(t => [t.id, t]));
|
|
123
|
+
let needsResorting = true; // PERFORMANCE FIX: Only resort when new nodes added
|
|
123
124
|
while (queue.length > 0) {
|
|
124
|
-
//
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
125
|
+
// PERFORMANCE FIX: Only sort when new elements were added, not every iteration
|
|
126
|
+
// This reduces complexity from O(n²log n) to O(n log n)
|
|
127
|
+
if (needsResorting) {
|
|
128
|
+
queue.sort((a, b) => {
|
|
129
|
+
const taskA = taskMap.get(a);
|
|
130
|
+
const taskB = taskMap.get(b);
|
|
131
|
+
// Default to 0 priority if task not found (shouldn't happen in valid input)
|
|
132
|
+
return (taskB?.priority ?? 0) - (taskA?.priority ?? 0);
|
|
133
|
+
});
|
|
134
|
+
needsResorting = false;
|
|
135
|
+
}
|
|
131
136
|
const nodeId = queue.shift();
|
|
132
137
|
result.push(nodeId);
|
|
133
138
|
const node = graph.get(nodeId);
|
|
@@ -136,6 +141,7 @@ export class DependencyResolver {
|
|
|
136
141
|
inDegree.set(dependentId, newDegree);
|
|
137
142
|
if (newDegree === 0) {
|
|
138
143
|
queue.push(dependentId);
|
|
144
|
+
needsResorting = true; // PERFORMANCE FIX: Mark for resorting after adding elements
|
|
139
145
|
}
|
|
140
146
|
}
|
|
141
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependency-resolver.js","sourceRoot":"","sources":["../../src/agent/dependency-resolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,OAAO,kBAAkB;IAC7B;;;;;;OAMG;IACH,mBAAmB,CAAC,KAAqB;QACvC,yBAAyB;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAE/C,mBAAmB;QACnB,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QAED,2BAA2B;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAElD,8BAA8B;QAC9B,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,KAAqB;QACxC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,oDAAoD;YACpD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,KAAqB;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEvC,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC7C,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,cAAc,EAAE,EAAE;gBAClB,SAAS,EAAE,IAAI;gBACf,MAAM;aACP,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAClD,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAEnE,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,cAAc;YACd,SAAS,EAAE,KAAK;SACjB,CAAC;IACJ,CAAC;IAED,4DAA4D;IAE5D;;OAEG;IACK,oBAAoB,CAAC,KAAqB;QAChD,MAAM,KAAK,GAAG,IAAI,GAAG,EAA0B,CAAC;QAEhD,uBAAuB;QACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;gBACjB,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;gBACrC,UAAU,EAAE,EAAE;gBACd,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;QACL,CAAC;QAED,gCAAgC;QAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBACtC,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACjC,IAAI,OAAO,EAAE,CAAC;wBACZ,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACnC,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,EAAE,iCAAiC,KAAK,EAAE,CAAC,CAAC;oBAC3E,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,eAAe,CACrB,KAAkC,EAClC,KAAqB;QAErB,uBAAuB;QACvB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC3C,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;YACnC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACjD,CAAC;QAED,8BAA8B;QAC9B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACxC,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;QAED,gBAAgB;QAChB,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,yCAAyC;QACzC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,
|
|
1
|
+
{"version":3,"file":"dependency-resolver.js","sourceRoot":"","sources":["../../src/agent/dependency-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -70,6 +70,11 @@ export declare class LLMAgent extends EventEmitter {
|
|
|
70
70
|
private thinkingConfig;
|
|
71
71
|
/** Track if agent has been disposed */
|
|
72
72
|
private disposed;
|
|
73
|
+
/** Tool approval system for VSCode integration */
|
|
74
|
+
private requireToolApproval;
|
|
75
|
+
private toolApprovalCallbacks;
|
|
76
|
+
/** BUG FIX: Track approval timeouts for cleanup to prevent memory leaks */
|
|
77
|
+
private toolApprovalTimeouts;
|
|
73
78
|
constructor(apiKey: string, baseURL?: string, model?: string, maxToolRounds?: number);
|
|
74
79
|
private initializeCheckpointManager;
|
|
75
80
|
private initializeMCP;
|
|
@@ -96,6 +101,38 @@ export declare class LLMAgent extends EventEmitter {
|
|
|
96
101
|
* Get current sampling configuration
|
|
97
102
|
*/
|
|
98
103
|
getSamplingConfig(): SamplingConfig | undefined;
|
|
104
|
+
/**
|
|
105
|
+
* Enable or disable tool approval requirement
|
|
106
|
+
* When enabled, text_editor operations will emit 'tool:approval_required' events
|
|
107
|
+
* and wait for approval before executing
|
|
108
|
+
*
|
|
109
|
+
* This is used by VSCode extension to show diff previews
|
|
110
|
+
*
|
|
111
|
+
* @param enabled - Whether to require approval for text_editor operations
|
|
112
|
+
*/
|
|
113
|
+
setRequireToolApproval(enabled: boolean): void;
|
|
114
|
+
/**
|
|
115
|
+
* Approve or reject a pending tool call
|
|
116
|
+
* Called by external integrations (e.g., VSCode extension) in response to
|
|
117
|
+
* 'tool:approval_required' events
|
|
118
|
+
*
|
|
119
|
+
* @param toolCallId - The ID of the tool call to approve/reject
|
|
120
|
+
* @param approved - true to execute the tool, false to reject it
|
|
121
|
+
*/
|
|
122
|
+
approveToolCall(toolCallId: string, approved: boolean): void;
|
|
123
|
+
/**
|
|
124
|
+
* Wait for external approval of a tool call
|
|
125
|
+
* Emits 'tool:approval_required' event and waits for approveToolCall() to be called
|
|
126
|
+
*
|
|
127
|
+
* @param toolCall - The tool call awaiting approval
|
|
128
|
+
* @returns Promise<boolean> - true if approved, false if rejected or timeout
|
|
129
|
+
*/
|
|
130
|
+
private waitForToolApproval;
|
|
131
|
+
/**
|
|
132
|
+
* Handle context overflow by generating a summary
|
|
133
|
+
* Called when context manager is about to prune messages
|
|
134
|
+
*/
|
|
135
|
+
private handleContextOverflow;
|
|
99
136
|
/**
|
|
100
137
|
* Apply context pruning to both messages and chatHistory
|
|
101
138
|
* BUGFIX: Prevents chatHistory from growing unbounded
|