erosolar-cli 1.7.148 → 1.7.150

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.
@@ -24,11 +24,8 @@ export class ToolRuntime {
24
24
  // Inefficiency detection: track file operations per session
25
25
  fileWriteCount = new Map();
26
26
  fileReadHistory = new Map();
27
- // Exploration loop detection
28
- readOnlyToolCount = 0; // Count of read-only tools without edits
29
- explorationWarningIssued = false;
30
- // Collect warnings to inject into tool results
31
- pendingWarnings = [];
27
+ // Exploration loop detection (used by checkAndBlockRedundancy)
28
+ readOnlyToolCount = 0;
32
29
  constructor(baseTools = [], options = {}) {
33
30
  this.observer = options.observer ?? null;
34
31
  this.contextManager = options.contextManager ?? null;
@@ -87,28 +84,26 @@ export class ToolRuntime {
87
84
  }
88
85
  // Check if tool is cacheable
89
86
  const isCacheable = record.definition.cacheable ?? CACHEABLE_TOOLS.has(call.name);
90
- // Try to get from cache
87
+ // BLOCK redundant operations before they happen
88
+ const blocked = this.checkAndBlockRedundancy(call);
89
+ if (blocked) {
90
+ this.observer?.onToolResult?.(call, blocked);
91
+ return blocked;
92
+ }
93
+ // VALIDATE Edit operations against read history to prevent hallucinated old_string
94
+ const editValidation = this.validateEditAgainstReadHistory(call);
95
+ if (editValidation) {
96
+ this.observer?.onToolResult?.(call, editValidation);
97
+ return editValidation;
98
+ }
99
+ // Try to get from cache (exact match)
91
100
  if (this.enableCache && isCacheable) {
92
101
  const cacheKey = this.getCacheKey(call);
93
102
  const cached = this.cache.get(cacheKey);
94
103
  if (cached && Date.now() - cached.timestamp < this.cacheTTLMs) {
95
- // Still detect inefficiencies on cache hits - the model is attempting
96
- // to read content that's already in context, which is wasteful
97
- const args = normalizeToolArguments(call.arguments);
98
- this.pendingWarnings = [];
99
- this.detectInefficiencies(call, args, cached.result);
100
- // Inject warnings into cached result so model learns
101
- let output = cached.result;
102
- if (this.pendingWarnings.length > 0) {
103
- const warningBlock = this.pendingWarnings.map(w => `⚠ INEFFICIENCY [${w.type.toUpperCase().replace(/_/g, ' ')}]\n` +
104
- ` ${w.message}\n` +
105
- ` → ${w.suggestion}`).join('\n\n');
106
- output = `${warningBlock}\n\n${output}`;
107
- this.pendingWarnings = [];
108
- }
109
104
  this.observer?.onCacheHit?.(call);
110
- this.observer?.onToolResult?.(call, output);
111
- return output;
105
+ this.observer?.onToolResult?.(call, cached.result);
106
+ return cached.result;
112
107
  }
113
108
  }
114
109
  this.observer?.onToolStart?.(call);
@@ -138,18 +133,22 @@ export class ToolRuntime {
138
133
  // Enforce cache size limit to prevent memory growth
139
134
  this.enforceCacheLimit();
140
135
  }
141
- // Detect inefficient patterns and collect warnings
142
- this.pendingWarnings = [];
143
- this.detectInefficiencies(call, args, output);
144
- // Inject warnings into tool result so model learns from them
145
- if (this.pendingWarnings.length > 0) {
146
- const warningBlock = this.pendingWarnings.map(w => `⚠ INEFFICIENCY [${w.type.toUpperCase().replace(/_/g, ' ')}]\n` +
147
- ` ${w.message}\n` +
148
- ` → ${w.suggestion}`).join('\n\n');
149
- // Prepend warning to output so model sees it first
150
- output = `${warningBlock}\n\n${output}`;
151
- this.pendingWarnings = [];
136
+ // Auto-record successful file reads for redundancy prevention
137
+ if ((call.name === 'Read' || call.name === 'read_file') && !output.startsWith('Error')) {
138
+ const rawPath = String(args['file_path'] ?? args['path'] ?? '');
139
+ if (rawPath) {
140
+ this.recordFileRead(rawPath, output);
141
+ }
152
142
  }
143
+ // Auto-invalidate file cache on edits/writes
144
+ if ((call.name === 'Edit' || call.name === 'edit_file' || call.name === 'Write' || call.name === 'write_file') && !output.startsWith('Error')) {
145
+ const rawPath = String(args['file_path'] ?? args['path'] ?? '');
146
+ if (rawPath) {
147
+ this.invalidateFileRead(rawPath);
148
+ }
149
+ }
150
+ // Track write counts and other inefficiency patterns
151
+ this.detectInefficiencies(call, args, output);
153
152
  this.observer?.onToolResult?.(call, output);
154
153
  return output;
155
154
  }
@@ -169,6 +168,192 @@ export class ToolRuntime {
169
168
  getCacheKey(call) {
170
169
  return `${call.name}:${JSON.stringify(call.arguments)}`;
171
170
  }
171
+ /**
172
+ * Check for redundant operations and BLOCK them before execution.
173
+ * Returns a message if blocked, null if operation should proceed.
174
+ */
175
+ checkAndBlockRedundancy(call) {
176
+ const toolName = call.name;
177
+ const args = normalizeToolArguments(call.arguments);
178
+ // Track read-only vs edit tools
179
+ const readOnlyTools = new Set(['Read', 'read_file', 'Glob', 'glob', 'Grep', 'grep', 'list_files', 'search_files']);
180
+ const editTools = new Set(['Edit', 'edit_file', 'Write', 'write_file', 'Bash', 'bash']);
181
+ // Reset exploration counter on edits
182
+ if (editTools.has(toolName)) {
183
+ this.readOnlyToolCount = 0;
184
+ return null;
185
+ }
186
+ // For read-only tools, check for redundancy
187
+ if (readOnlyTools.has(toolName)) {
188
+ this.readOnlyToolCount++;
189
+ // Soft warning when too many reads happen without edits
190
+ if (this.readOnlyToolCount === 12) {
191
+ this.observer?.onInefficiencyWarning?.({
192
+ type: 'redundant_read',
193
+ message: 'Exploration loop detected: 12 read-only operations without any edits.',
194
+ suggestion: 'Summarize what you have and switch to Edit/Write or plan concrete changes before more reads.',
195
+ });
196
+ }
197
+ // Hard block if the model keeps exploring without editing
198
+ if (this.readOnlyToolCount > 18) {
199
+ return [
200
+ '🚫 Too many read-only tool calls in a row (no edits detected).',
201
+ 'Summarize findings and plan the next edit instead of more reads to avoid context overflow.',
202
+ ].join('\n');
203
+ }
204
+ // Block file reads if we've already read the same file
205
+ if (toolName === 'Read' || toolName === 'read_file') {
206
+ const rawPath = String(args['file_path'] ?? args['path'] ?? '');
207
+ const filePath = rawPath ? resolve(rawPath) : '';
208
+ if (filePath) {
209
+ const history = this.fileReadHistory.get(filePath);
210
+ if (history && history.count >= 1 && history.cachedContent) {
211
+ // Already read this file - return cached content with note
212
+ history.count++;
213
+ this.fileReadHistory.set(filePath, history);
214
+ // Return cached content - no re-read needed
215
+ return `✓ Read ${filePath} (cached)\n\n${history.cachedContent}`;
216
+ }
217
+ }
218
+ }
219
+ }
220
+ return null;
221
+ }
222
+ /**
223
+ * Validate Edit operations against read history to prevent hallucinated old_string values.
224
+ *
225
+ * This catches the root cause of bad edits:
226
+ * 1. Never read the file - AI tries to edit without reading first
227
+ * 2. Stale memory - AI read the file but old_string doesn't match what was read
228
+ * 3. Fabrication - AI generates code that was never in any file
229
+ *
230
+ * Returns error message if validation fails, null if validation passes.
231
+ */
232
+ validateEditAgainstReadHistory(call) {
233
+ const toolName = call.name;
234
+ // Only validate Edit operations
235
+ if (toolName !== 'Edit' && toolName !== 'edit_file') {
236
+ return null;
237
+ }
238
+ const args = normalizeToolArguments(call.arguments);
239
+ const rawPath = String(args['file_path'] ?? args['path'] ?? '');
240
+ const oldString = String(args['old_string'] ?? '');
241
+ // Skip validation for new file creation (empty old_string)
242
+ if (!oldString) {
243
+ return null;
244
+ }
245
+ // Skip validation for very short old_strings (they could be anywhere)
246
+ // Only validate substantial content that should definitely have been read
247
+ if (oldString.length < 50) {
248
+ return null;
249
+ }
250
+ const filePath = rawPath ? resolve(rawPath) : '';
251
+ if (!filePath) {
252
+ return null;
253
+ }
254
+ const history = this.fileReadHistory.get(filePath);
255
+ // Check 1: Was the file read at all?
256
+ if (!history || !history.cachedContent) {
257
+ // File was never read - but we'll let the edit tool handle "file not found"
258
+ // Only warn if the old_string is substantial (likely hallucinated)
259
+ const oldLines = oldString.split('\n').length;
260
+ if (oldLines >= 5) {
261
+ return [
262
+ '🚫 EDIT BLOCKED: File was not read before editing',
263
+ '',
264
+ `File: ${filePath}`,
265
+ `old_string: ${oldLines} lines (${oldString.length} chars)`,
266
+ '',
267
+ 'You are attempting to edit content that you may have fabricated.',
268
+ 'The file was not found in your read history for this session.',
269
+ '',
270
+ 'To fix:',
271
+ '1. Use the Read tool to read the file first',
272
+ '2. Copy the exact content you want to replace from the Read output',
273
+ '3. Then use Edit with the exact old_string from the file',
274
+ '',
275
+ 'This validation prevents edits based on hallucinated or stale content.',
276
+ ].join('\n');
277
+ }
278
+ return null;
279
+ }
280
+ // Check 2: Does old_string appear in what we actually read?
281
+ // This catches hallucinated content that was never in the file
282
+ if (!history.cachedContent.includes(oldString)) {
283
+ // Try normalized match (trim whitespace differences)
284
+ const normalizedOld = oldString.trim();
285
+ const normalizedCache = history.cachedContent;
286
+ // Check if it's just whitespace differences
287
+ if (normalizedOld && normalizedCache.includes(normalizedOld)) {
288
+ // Whitespace issue - let the edit tool's auto-correction handle it
289
+ return null;
290
+ }
291
+ // Check for line-by-line fuzzy match
292
+ const oldLines = oldString.split('\n');
293
+ const cacheLines = history.cachedContent.split('\n');
294
+ let fuzzyMatch = false;
295
+ for (let i = 0; i <= cacheLines.length - oldLines.length; i++) {
296
+ let matches = true;
297
+ for (let j = 0; j < oldLines.length && j < 3; j++) { // Check first 3 lines
298
+ const cacheLine = cacheLines[i + j] || '';
299
+ const oldLine = oldLines[j] || '';
300
+ if (cacheLine.trim() !== oldLine.trim()) {
301
+ matches = false;
302
+ break;
303
+ }
304
+ }
305
+ if (matches) {
306
+ fuzzyMatch = true;
307
+ break;
308
+ }
309
+ }
310
+ if (fuzzyMatch) {
311
+ // Close enough - let edit tool handle it
312
+ return null;
313
+ }
314
+ // old_string was not in what we read - this is likely hallucinated
315
+ const oldLineCount = oldString.split('\n').length;
316
+ const firstLine = oldString.split('\n')[0] || '';
317
+ return [
318
+ '🚫 EDIT BLOCKED: old_string was not found in what you read',
319
+ '',
320
+ `File: ${filePath}`,
321
+ `old_string: ${oldLineCount} lines starting with: ${JSON.stringify(firstLine.substring(0, 60))}${firstLine.length > 60 ? '...' : ''}`,
322
+ '',
323
+ 'The content you are trying to replace does not match what you read from this file.',
324
+ 'This usually means:',
325
+ '• You fabricated or hallucinated the old_string content',
326
+ '• You confused content from a different file',
327
+ '• The file content has changed since you read it',
328
+ '',
329
+ 'To fix:',
330
+ '1. Re-read the file using the Read tool',
331
+ '2. Copy the EXACT text you want to replace from the Read output',
332
+ '3. Use that exact text as old_string',
333
+ '',
334
+ 'Never generate old_string from memory - always copy from Read output.',
335
+ ].join('\n');
336
+ }
337
+ return null;
338
+ }
339
+ /**
340
+ * Record a file read for redundancy tracking.
341
+ * Call this after a successful read to cache the content.
342
+ */
343
+ recordFileRead(filePath, content) {
344
+ const normalizedPath = resolve(filePath);
345
+ const history = this.fileReadHistory.get(normalizedPath) ?? { count: 0 };
346
+ history.count++;
347
+ history.cachedContent = content;
348
+ this.fileReadHistory.set(normalizedPath, history);
349
+ }
350
+ /**
351
+ * Invalidate cached read for a file (call after edit/write).
352
+ */
353
+ invalidateFileRead(filePath) {
354
+ const normalizedPath = resolve(filePath);
355
+ this.fileReadHistory.delete(normalizedPath);
356
+ }
172
357
  clearCache() {
173
358
  this.cache.clear();
174
359
  }
@@ -219,116 +404,26 @@ export class ToolRuntime {
219
404
  }
220
405
  }
221
406
  /**
222
- * Detect inefficient tool usage patterns and emit warnings.
223
- * This helps the model learn to use tools more effectively.
407
+ * Detect write inefficiencies. Read inefficiencies are handled by checkAndBlockRedundancy.
224
408
  */
225
409
  detectInefficiencies(call, args, _output) {
226
410
  const toolName = call.name;
227
- // Track read-only vs edit tools for exploration loop detection
228
- const readOnlyTools = new Set(['Read', 'read_file', 'Glob', 'glob', 'Grep', 'grep', 'list_files', 'search_files']);
229
- const editTools = new Set(['Edit', 'edit_file', 'Write', 'write_file', 'Bash', 'bash']);
230
- if (readOnlyTools.has(toolName)) {
231
- this.readOnlyToolCount++;
232
- // Warn if too many read-only operations without any edits
233
- // Threshold of 25 allows for reasonable exploration of complex codebases
234
- // Only warn once per session to avoid spamming
235
- if (this.readOnlyToolCount >= 25 && !this.explorationWarningIssued) {
236
- this.explorationWarningIssued = true;
237
- const warning = {
238
- type: 'redundant_read',
239
- message: `Exploration loop detected: ${this.readOnlyToolCount} read-only operations without any edits.`,
240
- suggestion: 'Consider starting implementation. You likely have enough context to begin making changes.',
241
- };
242
- this.pendingWarnings.push(warning);
243
- this.observer?.onInefficiencyWarning?.(warning);
244
- }
245
- }
246
- else if (editTools.has(toolName)) {
247
- // Reset exploration counter when an edit happens
248
- this.readOnlyToolCount = 0;
249
- this.explorationWarningIssued = false;
250
- }
251
411
  // Detect multiple writes to the same file
252
412
  if (toolName === 'Write' || toolName === 'write_file') {
253
413
  const rawPath = String(args['file_path'] ?? args['path'] ?? '');
254
- // Normalize path to absolute to catch same file with different path formats
255
414
  const filePath = rawPath ? resolve(rawPath) : '';
256
415
  if (filePath) {
257
416
  const count = (this.fileWriteCount.get(filePath) ?? 0) + 1;
258
417
  this.fileWriteCount.set(filePath, count);
418
+ // Log multiple writes for stats (no warnings needed - just track)
259
419
  if (count > 1) {
260
- const warning = {
420
+ this.observer?.onInefficiencyWarning?.({
261
421
  type: 'multiple_writes',
262
- message: `File "${filePath}" has been written ${count} times in this session.`,
263
- filePath,
264
- suggestion: 'Use Edit tool for modifications instead of rewriting the entire file. ' +
265
- 'Multiple Write calls indicate poor planning - read the file first, plan changes, then use Edit.',
266
- };
267
- this.pendingWarnings.push(warning);
268
- this.observer?.onInefficiencyWarning?.(warning);
269
- }
270
- // Also warn if writing to an existing file (should use Edit)
271
- if (count === 1 && _output.includes('Updated')) {
272
- const warning = {
273
- type: 'should_use_edit',
274
- message: `Write tool used to modify existing file "${filePath}".`,
275
- filePath,
276
- suggestion: 'Use Edit tool for modifying existing files - it makes surgical replacements ' +
277
- 'and prevents accidental content loss. Write tool should only be used for NEW files.',
278
- };
279
- this.pendingWarnings.push(warning);
280
- this.observer?.onInefficiencyWarning?.(warning);
281
- }
282
- }
283
- }
284
- // Detect redundant partial file reads
285
- if (toolName === 'Read' || toolName === 'read_file') {
286
- const rawPath = String(args['file_path'] ?? args['path'] ?? '');
287
- // Normalize path to absolute to catch same file with different path formats
288
- const filePath = rawPath ? resolve(rawPath) : '';
289
- const offset = typeof args['offset'] === 'number' ? args['offset'] : undefined;
290
- const limit = typeof args['limit'] === 'number' ? args['limit'] : undefined;
291
- if (filePath) {
292
- const history = this.fileReadHistory.get(filePath) ?? { count: 0 };
293
- history.count++;
294
- // Only warn on 3+ reads of the same file (2nd read is often legitimate)
295
- // e.g., re-reading after a failed edit or to verify specific details
296
- // Note: We skip the warning entirely for the 2nd read to reduce noise
297
- // Warn if reading the same file multiple times with small limits (chunked reading)
298
- if (history.count > 1 && !history.warnedPartial && (limit !== undefined || offset !== undefined)) {
299
- // Check if this appears to be sequential reads (chunked reading)
300
- const isChunkedRead = history.lastOffset !== undefined &&
301
- offset !== undefined &&
302
- offset > history.lastOffset;
303
- if (isChunkedRead) {
304
- history.warnedPartial = true;
305
- const warning = {
306
- type: 'partial_read',
307
- message: `File "${filePath}" being read in chunks (${history.count} reads).`,
308
- filePath,
309
- suggestion: 'Read the FULL file at once (omit limit/offset) instead of reading in chunks. ' +
310
- 'One full read is more efficient than multiple partial reads. Only use limit/offset for files over 2000 lines.',
311
- };
312
- this.pendingWarnings.push(warning);
313
- this.observer?.onInefficiencyWarning?.(warning);
314
- }
315
- }
316
- // Warn about redundant reads (3+ times for same file)
317
- if (history.count >= 3 && !history.warnedRedundant) {
318
- history.warnedRedundant = true;
319
- const warning = {
320
- type: 'redundant_read',
321
- message: `File "${filePath}" read ${history.count} times in this session.`,
422
+ message: `File "${filePath}" written ${count} times`,
322
423
  filePath,
323
- suggestion: 'This file is already in your context. Consider using your memory of the content ' +
324
- 'instead of re-reading. If the file changed, the cache was already invalidated.',
325
- };
326
- this.pendingWarnings.push(warning);
327
- this.observer?.onInefficiencyWarning?.(warning);
424
+ suggestion: 'Use Edit tool instead of Write for modifications',
425
+ });
328
426
  }
329
- history.lastOffset = offset;
330
- history.lastLimit = limit;
331
- this.fileReadHistory.set(filePath, history);
332
427
  }
333
428
  }
334
429
  }
@@ -339,8 +434,6 @@ export class ToolRuntime {
339
434
  this.fileWriteCount.clear();
340
435
  this.fileReadHistory.clear();
341
436
  this.readOnlyToolCount = 0;
342
- this.explorationWarningIssued = false;
343
- this.pendingWarnings = [];
344
437
  }
345
438
  /**
346
439
  * Invalidate cache entries related to modified files.
@@ -1 +1 @@
1
- {"version":3,"file":"toolRuntime.js","sourceRoot":"","sources":["../../src/core/toolRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toolRuntime.js","sourceRoot":"","sources":["../../src/core/toolRuntime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAkE9B,6CAA6C;AAC7C,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC9B,MAAM;IACN,WAAW;IACX,MAAM;IACN,aAAa;IACb,MAAM;IACN,aAAa;IACb,iBAAiB;IACjB,sBAAsB;IACtB,iBAAiB;CAClB,CAAC,CAAC;AAEH,MAAM,OAAO,WAAW;IACL,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;IACzC,iBAAiB,GAAa,EAAE,CAAC;IACjC,QAAQ,CAA6B;IACrC,cAAc,CAAwB;IACtC,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IACtC,WAAW,CAAU;IACrB,UAAU,CAAS;IACnB,eAAe,CAAS;IAEzC,4DAA4D;IAC3C,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,eAAe,GAAG,IAAI,GAAG,EAQtC,CAAC;IAEL,+DAA+D;IACvD,iBAAiB,GAAG,CAAC,CAAC;IAE9B,YAAY,YAA8B,EAAE,EAAE,UAA8B,EAAE;QAC5E,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;QACzC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,oBAAoB;QAC3E,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC,CAAC,4CAA4C;QACxE,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,IAAI,CAAC,aAAa,CAAC;gBACjB,EAAE,EAAE,cAAc;gBAClB,WAAW,EAAE,6BAA6B;gBAC1C,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,aAAa,CAAC,KAAgB;QAC5B,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/B,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YAC3C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,eAAe,CAAC,EAAU;QACxB,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YACrD,IAAI,MAAM,CAAC,OAAO,KAAK,EAAE,EAAE,CAAC;gBAC1B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,iBAAiB;aAC1B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACtC,MAAM,CAAC,CAAC,MAAM,EAAwB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;aACzD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;YACtB,MAAM,IAAI,GAA2B;gBACnC,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,WAAW,EAAE,UAAU,CAAC,WAAW;aACpC,CAAC;YACF,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;gBAC1B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;YAC1C,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,SAAS,IAAI,CAAC,IAAI,qBAAqB,CAAC;YACxD,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC5C,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,6BAA6B;QAC7B,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAElF,gDAAgD;QAChD,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,mFAAmF;QACnF,MAAM,cAAc,GAAG,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YACpD,OAAO,cAAc,CAAC;QACxB,CAAC;QAED,sCAAsC;QACtC,IAAI,IAAI,CAAC,WAAW,IAAI,WAAW,EAAE,CAAC;YACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAExC,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC9D,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACnD,OAAO,MAAM,CAAC,MAAM,CAAC;YACvB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACpD,qBAAqB,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YAClF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrD,IAAI,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAEnF,kDAAkD;YAClD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5E,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;oBAC3B,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;oBAC3B,+BAA+B;oBAC/B,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;wBACjC,OAAO,CAAC,IAAI,CACV,+BAA+B,IAAI,CAAC,IAAI,YAAY,SAAS,CAAC,cAAc,OAAO,SAAS,CAAC,eAAe,QAAQ,CACrH,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,gCAAgC;YAChC,IAAI,IAAI,CAAC,WAAW,IAAI,WAAW,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE;oBACvB,MAAM,EAAE,MAAM;oBACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;iBACtB,CAAC,CAAC;gBACH,oDAAoD;gBACpD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC;YAED,8DAA8D;YAC9D,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gBAChE,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YAED,6CAA6C;YAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9I,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gBAChE,IAAI,OAAO,EAAE,CAAC;oBACZ,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,qDAAqD;YACrD,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAE9C,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC5C,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,SAAiB,CAAC;YACtB,IAAI,KAAK,YAAY,2BAA2B,EAAE,CAAC;gBACjD,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,SAAS,GAAG,kBAAkB,IAAI,CAAC,IAAI,MAAM,OAAO,EAAE,CAAC;YACzD,CAAC;YACD,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAC9C,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,IAAqB;QACvC,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACK,uBAAuB,CAAC,IAAqB;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3B,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEpD,gCAAgC;QAChC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC;QACnH,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAExF,qCAAqC;QACrC,IAAI,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,4CAA4C;QAC5C,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAEzB,wDAAwD;YACxD,IAAI,IAAI,CAAC,iBAAiB,KAAK,EAAE,EAAE,CAAC;gBAClC,IAAI,CAAC,QAAQ,EAAE,qBAAqB,EAAE,CAAC;oBACrC,IAAI,EAAE,gBAAgB;oBACtB,OAAO,EAAE,uEAAuE;oBAChF,UAAU,EAAE,8FAA8F;iBAC3G,CAAC,CAAC;YACL,CAAC;YAED,0DAA0D;YAC1D,IAAI,IAAI,CAAC,iBAAiB,GAAG,EAAE,EAAE,CAAC;gBAChC,OAAO;oBACL,gEAAgE;oBAChE,4FAA4F;iBAC7F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;YAED,uDAAuD;YACvD,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;gBACpD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gBAChE,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAEjD,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAEnD,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;wBAC3D,2DAA2D;wBAC3D,OAAO,CAAC,KAAK,EAAE,CAAC;wBAChB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;wBAE5C,4CAA4C;wBAC5C,OAAO,UAAU,QAAQ,gBAAgB,OAAO,CAAC,aAAa,EAAE,CAAC;oBACnE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACK,8BAA8B,CAAC,IAAqB;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAE3B,gCAAgC;QAChC,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAEnD,2DAA2D;QAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;QAED,sEAAsE;QACtE,0EAA0E;QAC1E,IAAI,SAAS,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEnD,qCAAqC;QACrC,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YACvC,4EAA4E;YAC5E,mEAAmE;YACnE,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;YAC9C,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;gBAClB,OAAO;oBACL,mDAAmD;oBACnD,EAAE;oBACF,SAAS,QAAQ,EAAE;oBACnB,eAAe,QAAQ,WAAW,SAAS,CAAC,MAAM,SAAS;oBAC3D,EAAE;oBACF,kEAAkE;oBAClE,+DAA+D;oBAC/D,EAAE;oBACF,SAAS;oBACT,6CAA6C;oBAC7C,oEAAoE;oBACpE,0DAA0D;oBAC1D,EAAE;oBACF,wEAAwE;iBACzE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACf,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,4DAA4D;QAC5D,+DAA+D;QAC/D,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/C,qDAAqD;YACrD,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC;YAE9C,4CAA4C;YAC5C,IAAI,aAAa,IAAI,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC7D,mEAAmE;gBACnE,OAAO,IAAI,CAAC;YACd,CAAC;YAED,qCAAqC;YACrC,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrD,IAAI,UAAU,GAAG,KAAK,CAAC;YAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9D,IAAI,OAAO,GAAG,IAAI,CAAC;gBACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,sBAAsB;oBACzE,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAClC,IAAI,SAAS,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;wBACxC,OAAO,GAAG,KAAK,CAAC;wBAChB,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC;oBACZ,UAAU,GAAG,IAAI,CAAC;oBAClB,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAI,UAAU,EAAE,CAAC;gBACf,yCAAyC;gBACzC,OAAO,IAAI,CAAC;YACd,CAAC;YAED,mEAAmE;YACnE,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;YAClD,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAEjD,OAAO;gBACL,4DAA4D;gBAC5D,EAAE;gBACF,SAAS,QAAQ,EAAE;gBACnB,eAAe,YAAY,yBAAyB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;gBACrI,EAAE;gBACF,oFAAoF;gBACpF,qBAAqB;gBACrB,yDAAyD;gBACzD,8CAA8C;gBAC9C,kDAAkD;gBAClD,EAAE;gBACF,SAAS;gBACT,yCAAyC;gBACzC,iEAAiE;gBACjE,sCAAsC;gBACtC,EAAE;gBACF,uEAAuE;aACxE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,QAAgB,EAAE,OAAe;QAC9C,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QACzE,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC;QAChC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,QAAgB;QACjC,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC9C,CAAC;IAED,UAAU;QACR,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe;YAAE,OAAO;QAEpD,qDAAqD;QACrD,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;QAC/E,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI,OAAO,IAAI,eAAe;gBAAE,MAAM;YACtC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,aAAa;QACX,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YACxC,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QACnC,CAAC;QACD,OAAO;YACL,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;SACzB,CAAC;IACJ,CAAC;IAEO,OAAO,CAAC,UAA0B,EAAE,OAAe;QACzD,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,sCAAsC,OAAO,KAAK,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,IAAI,SAAS,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,SAAS,UAAU,CAAC,IAAI,kCAAkC,KAAK,IAAI,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE;YACjC,OAAO;YACP,UAAU;SACX,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAEO,eAAe,CAAC,IAAY;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,IAAqB,EAAE,IAA6B,EAAE,OAAe;QAChG,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAE3B,0CAA0C;QAC1C,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;YACtD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAChE,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC3D,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBAEzC,kEAAkE;gBAClE,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBACd,IAAI,CAAC,QAAQ,EAAE,qBAAqB,EAAE,CAAC;wBACrC,IAAI,EAAE,iBAAiB;wBACvB,OAAO,EAAE,SAAS,QAAQ,aAAa,KAAK,QAAQ;wBACpD,QAAQ;wBACR,UAAU,EAAE,kDAAkD;qBAC/D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,yBAAyB;QACvB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,SAAmB;QACxC,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAExD,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,KAAK,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACpC,0DAA0D;YAC1D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;oBAC/E,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC5B,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,uBAAuB,YAAY,CAAC,MAAM,gCAAgC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,MAAM,cAAc,GAAa,EAAE,CAAC;QAEpC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAChD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACd,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI,KAAK,KAAK,UAAU,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACnD,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;gBACtB,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI,KAAK,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;IAC5C,CAAC;CACF;AAED,MAAM,UAAU,wBAAwB,CACtC,OAA6B,EAC7B,aAA0B,EAAE,EAC5B,UAA8B,EAAE;IAEhC,MAAM,OAAO,GAAG,IAAI,WAAW,CAC7B;QACE,wBAAwB,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAClD,qBAAqB,CAAC,OAAO,CAAC;QAC9B,yBAAyB,CAAC,OAAO,CAAC;KACnC,EACD,OAAO,CACR,CAAC;IAEF,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,wBAAwB,CAAC,gBAAgC;IAChE,OAAO;QACL,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,gKAAgK;QAC7K,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4DAA4D;oBACzE,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC;iBAC5B;aACF;SACF;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,IAAI,CAAC,gBAAgB,EAAE,IAAI,EAAE,EAAE,CAAC;gBAC9B,OAAO,mCAAmC,CAAC;YAC7C,CAAC;YAED,+DAA+D;YAC/D,2CAA2C;YAC3C,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClD,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC;YAEhC,uCAAuC;YACvC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9C,MAAM,OAAO,GAAG;gBACd,OAAO;gBACP,EAAE;gBACF,uBAAuB,UAAU,eAAe;gBAChD,4FAA4F;aAC7F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEb,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;YACpE,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC1B,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChD,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,OAA6B;IAC1D,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,mFAAmF;QACrF,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC;oBAC5B,WAAW,EAAE,sCAAsC;iBACpD;aACF;SACF;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;YAClC,MAAM,SAAS,GAAG,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,cAAc,CAAC;YAChF,OAAO;gBACL,GAAG,SAAS,wBAAwB;gBACpC,wDAAwD;gBACxD,yDAAyD;gBACzD,8CAA8C;gBAC9C,2EAA2E;gBAC3E,6DAA6D;gBAC7D,sBAAsB,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,KAAK,IAAI;aAC7D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,OAA6B;IAC9D,OAAO;QACL,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,sDAAsD;QACnE,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,uBAAuB,EAAE;oBACvB,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,iEAAiE;iBAC/E;aACF;YACD,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,OAAO,GAAG;gBACd,OAAO,EAAE,OAAO,CAAC,WAAW;gBAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,gBAAgB,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI;aAC5F,CAAC;YACF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1C,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACnC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/shell/interactiveShell.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactiveShell.d.ts","sourceRoot":"","sources":["../../src/shell/interactiveShell.ts"],"names":[],"mappings":"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"}
@@ -2727,6 +2727,7 @@ export class InteractiveShell {
2727
2727
  this.pinnedChatBox.clearInput();
2728
2728
  this.uiAdapter.startProcessing('Working on your request');
2729
2729
  this.setProcessingStatus();
2730
+ let renderInterval = null;
2730
2731
  try {
2731
2732
  // Add visual separator between user prompt and AI response
2732
2733
  display.newLine();
@@ -2735,6 +2736,12 @@ export class InteractiveShell {
2735
2736
  this.pinnedChatBox.enableScrollRegion();
2736
2737
  // Suppress readline echo so typed characters only appear in persistent input box
2737
2738
  this.suppressReadlineOutput();
2739
+ // Set up periodic render timer to ensure pinned chat box stays visible during streaming
2740
+ renderInterval = setInterval(() => {
2741
+ if (this.isProcessing && this.pinnedChatBox.isActive()) {
2742
+ this.pinnedChatBox.forceRender();
2743
+ }
2744
+ }, 2000); // Render every 2 seconds during streaming
2738
2745
  // Enable streaming for real-time text output (Claude Code style)
2739
2746
  await agent.send(request, true);
2740
2747
  await this.awaitPendingCleanup();
@@ -2774,6 +2781,11 @@ export class InteractiveShell {
2774
2781
  this.rl.prompt();
2775
2782
  this.scheduleQueueProcessing();
2776
2783
  this.refreshQueueIndicators();
2784
+ // Ensure any periodic render timer is cleaned up
2785
+ if (renderInterval) {
2786
+ clearInterval(renderInterval);
2787
+ renderInterval = null;
2788
+ }
2777
2789
  }
2778
2790
  }
2779
2791
  /**
@@ -2822,6 +2834,8 @@ export class InteractiveShell {
2822
2834
  this.pinnedChatBox.enableScrollRegion();
2823
2835
  // Suppress readline echo so typed characters only appear in persistent input box
2824
2836
  this.suppressReadlineOutput();
2837
+ // Periodically refresh the pinned chat box while streaming
2838
+ let renderInterval = null;
2825
2839
  let iteration = 0;
2826
2840
  let lastResponse = '';
2827
2841
  let consecutiveNoProgress = 0;
@@ -2844,6 +2858,11 @@ IMPORTANT: You have full git access. After making improvements:
2844
2858
  Commit frequently with descriptive messages. Push when ready.
2845
2859
  When truly finished with ALL tasks, explicitly state "TASK_FULLY_COMPLETE".`;
2846
2860
  }
2861
+ renderInterval = setInterval(() => {
2862
+ if (this.isProcessing && this.pinnedChatBox.isActive()) {
2863
+ this.pinnedChatBox.forceRender();
2864
+ }
2865
+ }, 2000);
2847
2866
  while (iteration < MAX_ITERATIONS) {
2848
2867
  iteration++;
2849
2868
  display.showSystemMessage(`\n📍 Iteration ${iteration}/${MAX_ITERATIONS}`);
@@ -2981,6 +3000,10 @@ What's the next action?`;
2981
3000
  const minutes = Math.floor(totalElapsed / 60000);
2982
3001
  const seconds = Math.floor((totalElapsed % 60000) / 1000);
2983
3002
  display.showSystemMessage(`\n🏁 Continuous execution completed: ${iteration} iterations, ${minutes}m ${seconds}s total`);
3003
+ if (renderInterval) {
3004
+ clearInterval(renderInterval);
3005
+ renderInterval = null;
3006
+ }
2984
3007
  // Reset completion detector for next task
2985
3008
  resetTaskCompletionDetector();
2986
3009
  // Restore readline echo before other cleanup