@litmers/cursorflow-orchestrator 0.1.20 → 0.1.28

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 (224) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/commands/cursorflow-clean.md +19 -0
  3. package/commands/cursorflow-runs.md +59 -0
  4. package/commands/cursorflow-stop.md +55 -0
  5. package/dist/cli/clean.js +171 -0
  6. package/dist/cli/clean.js.map +1 -1
  7. package/dist/cli/index.js +7 -0
  8. package/dist/cli/index.js.map +1 -1
  9. package/dist/cli/init.js +1 -1
  10. package/dist/cli/init.js.map +1 -1
  11. package/dist/cli/logs.js +83 -42
  12. package/dist/cli/logs.js.map +1 -1
  13. package/dist/cli/monitor.d.ts +7 -0
  14. package/dist/cli/monitor.js +1007 -189
  15. package/dist/cli/monitor.js.map +1 -1
  16. package/dist/cli/prepare.js +87 -3
  17. package/dist/cli/prepare.js.map +1 -1
  18. package/dist/cli/resume.js +188 -236
  19. package/dist/cli/resume.js.map +1 -1
  20. package/dist/cli/run.js +125 -3
  21. package/dist/cli/run.js.map +1 -1
  22. package/dist/cli/runs.d.ts +5 -0
  23. package/dist/cli/runs.js +214 -0
  24. package/dist/cli/runs.js.map +1 -0
  25. package/dist/cli/setup-commands.js +0 -0
  26. package/dist/cli/signal.js +1 -1
  27. package/dist/cli/signal.js.map +1 -1
  28. package/dist/cli/stop.d.ts +5 -0
  29. package/dist/cli/stop.js +215 -0
  30. package/dist/cli/stop.js.map +1 -0
  31. package/dist/cli/tasks.d.ts +10 -0
  32. package/dist/cli/tasks.js +165 -0
  33. package/dist/cli/tasks.js.map +1 -0
  34. package/dist/core/auto-recovery.d.ts +212 -0
  35. package/dist/core/auto-recovery.js +737 -0
  36. package/dist/core/auto-recovery.js.map +1 -0
  37. package/dist/core/failure-policy.d.ts +156 -0
  38. package/dist/core/failure-policy.js +488 -0
  39. package/dist/core/failure-policy.js.map +1 -0
  40. package/dist/core/orchestrator.d.ts +15 -2
  41. package/dist/core/orchestrator.js +397 -15
  42. package/dist/core/orchestrator.js.map +1 -1
  43. package/dist/core/reviewer.d.ts +2 -0
  44. package/dist/core/reviewer.js +2 -0
  45. package/dist/core/reviewer.js.map +1 -1
  46. package/dist/core/runner.d.ts +33 -10
  47. package/dist/core/runner.js +321 -146
  48. package/dist/core/runner.js.map +1 -1
  49. package/dist/services/logging/buffer.d.ts +67 -0
  50. package/dist/services/logging/buffer.js +309 -0
  51. package/dist/services/logging/buffer.js.map +1 -0
  52. package/dist/services/logging/console.d.ts +89 -0
  53. package/dist/services/logging/console.js +169 -0
  54. package/dist/services/logging/console.js.map +1 -0
  55. package/dist/services/logging/file-writer.d.ts +71 -0
  56. package/dist/services/logging/file-writer.js +516 -0
  57. package/dist/services/logging/file-writer.js.map +1 -0
  58. package/dist/services/logging/formatter.d.ts +39 -0
  59. package/dist/services/logging/formatter.js +227 -0
  60. package/dist/services/logging/formatter.js.map +1 -0
  61. package/dist/services/logging/index.d.ts +11 -0
  62. package/dist/services/logging/index.js +30 -0
  63. package/dist/services/logging/index.js.map +1 -0
  64. package/dist/services/logging/parser.d.ts +31 -0
  65. package/dist/services/logging/parser.js +222 -0
  66. package/dist/services/logging/parser.js.map +1 -0
  67. package/dist/services/process/index.d.ts +59 -0
  68. package/dist/services/process/index.js +257 -0
  69. package/dist/services/process/index.js.map +1 -0
  70. package/dist/types/agent.d.ts +20 -0
  71. package/dist/types/agent.js +6 -0
  72. package/dist/types/agent.js.map +1 -0
  73. package/dist/types/config.d.ts +65 -0
  74. package/dist/types/config.js +6 -0
  75. package/dist/types/config.js.map +1 -0
  76. package/dist/types/events.d.ts +125 -0
  77. package/dist/types/events.js +6 -0
  78. package/dist/types/events.js.map +1 -0
  79. package/dist/types/index.d.ts +12 -0
  80. package/dist/types/index.js +37 -0
  81. package/dist/types/index.js.map +1 -0
  82. package/dist/types/lane.d.ts +43 -0
  83. package/dist/types/lane.js +6 -0
  84. package/dist/types/lane.js.map +1 -0
  85. package/dist/types/logging.d.ts +71 -0
  86. package/dist/types/logging.js +16 -0
  87. package/dist/types/logging.js.map +1 -0
  88. package/dist/types/review.d.ts +17 -0
  89. package/dist/types/review.js +6 -0
  90. package/dist/types/review.js.map +1 -0
  91. package/dist/types/run.d.ts +32 -0
  92. package/dist/types/run.js +6 -0
  93. package/dist/types/run.js.map +1 -0
  94. package/dist/types/task.d.ts +71 -0
  95. package/dist/types/task.js +6 -0
  96. package/dist/types/task.js.map +1 -0
  97. package/dist/ui/components.d.ts +134 -0
  98. package/dist/ui/components.js +389 -0
  99. package/dist/ui/components.js.map +1 -0
  100. package/dist/ui/log-viewer.d.ts +49 -0
  101. package/dist/ui/log-viewer.js +449 -0
  102. package/dist/ui/log-viewer.js.map +1 -0
  103. package/dist/utils/checkpoint.d.ts +87 -0
  104. package/dist/utils/checkpoint.js +317 -0
  105. package/dist/utils/checkpoint.js.map +1 -0
  106. package/dist/utils/config.d.ts +4 -0
  107. package/dist/utils/config.js +11 -2
  108. package/dist/utils/config.js.map +1 -1
  109. package/dist/utils/cursor-agent.js.map +1 -1
  110. package/dist/utils/dependency.d.ts +74 -0
  111. package/dist/utils/dependency.js +420 -0
  112. package/dist/utils/dependency.js.map +1 -0
  113. package/dist/utils/doctor.js +10 -5
  114. package/dist/utils/doctor.js.map +1 -1
  115. package/dist/utils/enhanced-logger.d.ts +10 -33
  116. package/dist/utils/enhanced-logger.js +94 -9
  117. package/dist/utils/enhanced-logger.js.map +1 -1
  118. package/dist/utils/git.d.ts +121 -0
  119. package/dist/utils/git.js +322 -2
  120. package/dist/utils/git.js.map +1 -1
  121. package/dist/utils/health.d.ts +91 -0
  122. package/dist/utils/health.js +556 -0
  123. package/dist/utils/health.js.map +1 -0
  124. package/dist/utils/lock.d.ts +95 -0
  125. package/dist/utils/lock.js +332 -0
  126. package/dist/utils/lock.js.map +1 -0
  127. package/dist/utils/log-buffer.d.ts +17 -0
  128. package/dist/utils/log-buffer.js +14 -0
  129. package/dist/utils/log-buffer.js.map +1 -0
  130. package/dist/utils/log-constants.d.ts +23 -0
  131. package/dist/utils/log-constants.js +28 -0
  132. package/dist/utils/log-constants.js.map +1 -0
  133. package/dist/utils/log-formatter.d.ts +9 -0
  134. package/dist/utils/log-formatter.js +113 -70
  135. package/dist/utils/log-formatter.js.map +1 -1
  136. package/dist/utils/log-service.d.ts +19 -0
  137. package/dist/utils/log-service.js +47 -0
  138. package/dist/utils/log-service.js.map +1 -0
  139. package/dist/utils/logger.d.ts +46 -27
  140. package/dist/utils/logger.js +82 -60
  141. package/dist/utils/logger.js.map +1 -1
  142. package/dist/utils/process-manager.d.ts +21 -0
  143. package/dist/utils/process-manager.js +138 -0
  144. package/dist/utils/process-manager.js.map +1 -0
  145. package/dist/utils/retry.d.ts +121 -0
  146. package/dist/utils/retry.js +374 -0
  147. package/dist/utils/retry.js.map +1 -0
  148. package/dist/utils/run-service.d.ts +88 -0
  149. package/dist/utils/run-service.js +412 -0
  150. package/dist/utils/run-service.js.map +1 -0
  151. package/dist/utils/state.d.ts +58 -2
  152. package/dist/utils/state.js +306 -3
  153. package/dist/utils/state.js.map +1 -1
  154. package/dist/utils/task-service.d.ts +82 -0
  155. package/dist/utils/task-service.js +348 -0
  156. package/dist/utils/task-service.js.map +1 -0
  157. package/dist/utils/types.d.ts +2 -272
  158. package/dist/utils/types.js +16 -0
  159. package/dist/utils/types.js.map +1 -1
  160. package/package.json +38 -23
  161. package/scripts/ai-security-check.js +0 -1
  162. package/scripts/local-security-gate.sh +0 -0
  163. package/scripts/monitor-lanes.sh +94 -0
  164. package/scripts/patches/test-cursor-agent.js +0 -1
  165. package/scripts/release.sh +0 -0
  166. package/scripts/setup-security.sh +0 -0
  167. package/scripts/stream-logs.sh +72 -0
  168. package/scripts/verify-and-fix.sh +0 -0
  169. package/src/cli/clean.ts +180 -0
  170. package/src/cli/index.ts +7 -0
  171. package/src/cli/init.ts +1 -1
  172. package/src/cli/logs.ts +79 -42
  173. package/src/cli/monitor.ts +1815 -899
  174. package/src/cli/prepare.ts +97 -3
  175. package/src/cli/resume.ts +220 -277
  176. package/src/cli/run.ts +154 -3
  177. package/src/cli/runs.ts +212 -0
  178. package/src/cli/setup-commands.ts +0 -0
  179. package/src/cli/signal.ts +1 -1
  180. package/src/cli/stop.ts +209 -0
  181. package/src/cli/tasks.ts +154 -0
  182. package/src/core/auto-recovery.ts +909 -0
  183. package/src/core/failure-policy.ts +592 -0
  184. package/src/core/orchestrator.ts +1136 -675
  185. package/src/core/reviewer.ts +4 -0
  186. package/src/core/runner.ts +1443 -1217
  187. package/src/services/logging/buffer.ts +326 -0
  188. package/src/services/logging/console.ts +193 -0
  189. package/src/services/logging/file-writer.ts +526 -0
  190. package/src/services/logging/formatter.ts +268 -0
  191. package/src/services/logging/index.ts +16 -0
  192. package/src/services/logging/parser.ts +232 -0
  193. package/src/services/process/index.ts +261 -0
  194. package/src/types/agent.ts +24 -0
  195. package/src/types/config.ts +79 -0
  196. package/src/types/events.ts +156 -0
  197. package/src/types/index.ts +29 -0
  198. package/src/types/lane.ts +56 -0
  199. package/src/types/logging.ts +96 -0
  200. package/src/types/review.ts +20 -0
  201. package/src/types/run.ts +37 -0
  202. package/src/types/task.ts +79 -0
  203. package/src/ui/components.ts +430 -0
  204. package/src/ui/log-viewer.ts +485 -0
  205. package/src/utils/checkpoint.ts +374 -0
  206. package/src/utils/config.ts +11 -2
  207. package/src/utils/cursor-agent.ts +1 -1
  208. package/src/utils/dependency.ts +482 -0
  209. package/src/utils/doctor.ts +11 -5
  210. package/src/utils/enhanced-logger.ts +108 -49
  211. package/src/utils/git.ts +871 -499
  212. package/src/utils/health.ts +596 -0
  213. package/src/utils/lock.ts +346 -0
  214. package/src/utils/log-buffer.ts +28 -0
  215. package/src/utils/log-constants.ts +26 -0
  216. package/src/utils/log-formatter.ts +120 -37
  217. package/src/utils/log-service.ts +49 -0
  218. package/src/utils/logger.ts +100 -51
  219. package/src/utils/process-manager.ts +100 -0
  220. package/src/utils/retry.ts +413 -0
  221. package/src/utils/run-service.ts +433 -0
  222. package/src/utils/state.ts +369 -3
  223. package/src/utils/task-service.ts +370 -0
  224. package/src/utils/types.ts +2 -315
@@ -11,8 +11,8 @@
11
11
  * - Streaming output support for real-time capture
12
12
  */
13
13
  import { Transform, TransformCallback } from 'stream';
14
- import { EnhancedLogConfig } from './types';
15
- export { EnhancedLogConfig } from './types';
14
+ import { EnhancedLogConfig, ParsedMessage, JsonLogEntry, LogSession } from '../types';
15
+ export { EnhancedLogConfig, ParsedMessage, JsonLogEntry, LogSession };
16
16
  export declare const DEFAULT_LOG_CONFIG: EnhancedLogConfig;
17
17
  /**
18
18
  * Streaming JSON Parser - Parses cursor-agent stream-json output
@@ -35,13 +35,6 @@ export declare class StreamingMessageParser {
35
35
  flush(): void;
36
36
  private emitMessage;
37
37
  }
38
- export interface ParsedMessage {
39
- type: 'system' | 'user' | 'assistant' | 'tool' | 'tool_result' | 'result' | 'thinking';
40
- role: string;
41
- content: string;
42
- timestamp: number;
43
- metadata?: Record<string, any>;
44
- }
45
38
  /**
46
39
  * Strip ANSI escape sequences from text
47
40
  */
@@ -50,30 +43,6 @@ export declare function stripAnsi(text: string): string;
50
43
  * Format timestamp based on format preference
51
44
  */
52
45
  export declare function formatTimestamp(format: 'iso' | 'relative' | 'short', startTime?: number): string;
53
- /**
54
- * JSON log entry structure
55
- */
56
- export interface JsonLogEntry {
57
- timestamp: string;
58
- level: 'stdout' | 'stderr' | 'info' | 'error' | 'debug' | 'session';
59
- source?: string;
60
- task?: string;
61
- lane?: string;
62
- message: string;
63
- raw?: string;
64
- metadata?: Record<string, any>;
65
- }
66
- /**
67
- * Session context for logging
68
- */
69
- export interface LogSession {
70
- id: string;
71
- laneName: string;
72
- taskName?: string;
73
- model?: string;
74
- startTime: number;
75
- metadata?: Record<string, any>;
76
- }
77
46
  /**
78
47
  * Transform stream that strips ANSI and adds timestamps
79
48
  */
@@ -94,14 +63,17 @@ export declare class EnhancedLogManager {
94
63
  private logDir;
95
64
  private cleanLogPath;
96
65
  private rawLogPath;
66
+ private absoluteRawLogPath;
97
67
  private jsonLogPath;
98
68
  private readableLogPath;
99
69
  private cleanLogFd;
100
70
  private rawLogFd;
71
+ private absoluteRawLogFd;
101
72
  private jsonLogFd;
102
73
  private readableLogFd;
103
74
  private cleanLogSize;
104
75
  private rawLogSize;
76
+ private absoluteRawLogSize;
105
77
  private cleanTransform;
106
78
  private streamingParser;
107
79
  private lineBuffer;
@@ -139,6 +111,10 @@ export declare class EnhancedLogManager {
139
111
  * Write to raw log with size tracking
140
112
  */
141
113
  private writeToRawLog;
114
+ /**
115
+ * Write to absolute raw log with size tracking
116
+ */
117
+ private writeToAbsoluteRawLog;
142
118
  /**
143
119
  * Write a JSON log entry
144
120
  */
@@ -177,6 +153,7 @@ export declare class EnhancedLogManager {
177
153
  getLogPaths(): {
178
154
  clean: string;
179
155
  raw?: string;
156
+ absoluteRaw?: string;
180
157
  json?: string;
181
158
  readable: string;
182
159
  };
@@ -54,6 +54,7 @@ exports.exportLogs = exportLogs;
54
54
  const fs = __importStar(require("fs"));
55
55
  const path = __importStar(require("path"));
56
56
  const stream_1 = require("stream");
57
+ const logger = __importStar(require("./logger"));
57
58
  const path_1 = require("./path");
58
59
  exports.DEFAULT_LOG_CONFIG = {
59
60
  enabled: true,
@@ -62,6 +63,8 @@ exports.DEFAULT_LOG_CONFIG = {
62
63
  maxFileSize: 50 * 1024 * 1024, // 50MB
63
64
  maxFiles: 5,
64
65
  keepRawLogs: true,
66
+ keepAbsoluteRawLogs: false,
67
+ raw: false,
65
68
  writeJsonLog: true,
66
69
  timestampFormat: 'iso',
67
70
  };
@@ -282,9 +285,12 @@ function formatTimestamp(format, startTime) {
282
285
  }
283
286
  }
284
287
  /**
285
- * Regex to detect if a line already has an ISO timestamp at the start
288
+ * Regex to detect if a line already has a timestamp at the start
289
+ * Matches:
290
+ * - ISO format: [2024-01-01T12:34:56...]
291
+ * - Short format: [12:34:56]
286
292
  */
287
- const EXISTING_TIMESTAMP_REGEX = /^\[\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}/;
293
+ const EXISTING_TIMESTAMP_REGEX = /^\[(\d{4}-\d{2}-\d{2}T)?\d{2}:\d{2}:\d{2}/;
288
294
  /**
289
295
  * Check if a line already has a timestamp
290
296
  */
@@ -351,20 +357,27 @@ class EnhancedLogManager {
351
357
  logDir;
352
358
  cleanLogPath;
353
359
  rawLogPath;
360
+ absoluteRawLogPath;
354
361
  jsonLogPath;
355
362
  readableLogPath;
356
363
  cleanLogFd = null;
357
364
  rawLogFd = null;
365
+ absoluteRawLogFd = null;
358
366
  jsonLogFd = null;
359
367
  readableLogFd = null;
360
368
  cleanLogSize = 0;
361
369
  rawLogSize = 0;
370
+ absoluteRawLogSize = 0;
362
371
  cleanTransform = null;
363
372
  streamingParser = null;
364
373
  lineBuffer = '';
365
374
  onParsedMessage;
366
375
  constructor(logDir, session, config = {}, onParsedMessage) {
367
376
  this.config = { ...exports.DEFAULT_LOG_CONFIG, ...config };
377
+ // Support 'raw' as alias for 'keepAbsoluteRawLogs'
378
+ if (this.config.raw) {
379
+ this.config.keepAbsoluteRawLogs = true;
380
+ }
368
381
  this.session = session;
369
382
  this.logDir = logDir;
370
383
  this.onParsedMessage = onParsedMessage;
@@ -373,8 +386,12 @@ class EnhancedLogManager {
373
386
  // Set up log file paths
374
387
  this.cleanLogPath = (0, path_1.safeJoin)(logDir, 'terminal.log');
375
388
  this.rawLogPath = (0, path_1.safeJoin)(logDir, 'terminal-raw.log');
389
+ this.absoluteRawLogPath = (0, path_1.safeJoin)(logDir, 'terminal-absolute-raw.log');
376
390
  this.jsonLogPath = (0, path_1.safeJoin)(logDir, 'terminal.jsonl');
377
391
  this.readableLogPath = (0, path_1.safeJoin)(logDir, 'terminal-readable.log');
392
+ if (this.config.raw) {
393
+ logger.info(`[${session.laneName}] 📄 Raw data capture enabled: ${this.absoluteRawLogPath}`);
394
+ }
378
395
  // Initialize log files
379
396
  this.initLogFiles();
380
397
  }
@@ -387,11 +404,17 @@ class EnhancedLogManager {
387
404
  if (this.config.keepRawLogs) {
388
405
  this.rotateIfNeeded(this.rawLogPath, 'raw');
389
406
  }
407
+ if (this.config.keepAbsoluteRawLogs) {
408
+ this.rotateIfNeeded(this.absoluteRawLogPath, 'raw');
409
+ }
390
410
  // Open file descriptors
391
411
  this.cleanLogFd = fs.openSync(this.cleanLogPath, 'a');
392
412
  if (this.config.keepRawLogs) {
393
413
  this.rawLogFd = fs.openSync(this.rawLogPath, 'a');
394
414
  }
415
+ if (this.config.keepAbsoluteRawLogs) {
416
+ this.absoluteRawLogFd = fs.openSync(this.absoluteRawLogPath, 'a');
417
+ }
395
418
  if (this.config.writeJsonLog) {
396
419
  this.jsonLogFd = fs.openSync(this.jsonLogPath, 'a');
397
420
  }
@@ -403,10 +426,14 @@ class EnhancedLogManager {
403
426
  if (this.config.keepRawLogs) {
404
427
  this.rawLogSize = fs.statSync(this.rawLogPath).size;
405
428
  }
429
+ if (this.config.keepAbsoluteRawLogs) {
430
+ this.absoluteRawLogSize = fs.statSync(this.absoluteRawLogPath).size;
431
+ }
406
432
  }
407
433
  catch {
408
434
  this.cleanLogSize = 0;
409
435
  this.rawLogSize = 0;
436
+ this.absoluteRawLogSize = 0;
410
437
  }
411
438
  // Write session header
412
439
  this.writeSessionHeader();
@@ -601,6 +628,23 @@ class EnhancedLogManager {
601
628
  this.rawLogSize = 0;
602
629
  }
603
630
  }
631
+ /**
632
+ * Write to absolute raw log with size tracking
633
+ */
634
+ writeToAbsoluteRawLog(data) {
635
+ if (this.absoluteRawLogFd === null)
636
+ return;
637
+ const buffer = typeof data === 'string' ? Buffer.from(data) : data;
638
+ fs.writeSync(this.absoluteRawLogFd, buffer);
639
+ this.absoluteRawLogSize += buffer.length;
640
+ // Check if rotation needed
641
+ if (this.absoluteRawLogSize >= this.config.maxFileSize) {
642
+ fs.closeSync(this.absoluteRawLogFd);
643
+ this.rotateLog(this.absoluteRawLogPath);
644
+ this.absoluteRawLogFd = fs.openSync(this.absoluteRawLogPath, 'a');
645
+ this.absoluteRawLogSize = 0;
646
+ }
647
+ }
604
648
  /**
605
649
  * Write a JSON log entry
606
650
  */
@@ -615,6 +659,10 @@ class EnhancedLogManager {
615
659
  */
616
660
  writeStdout(data) {
617
661
  const text = data.toString();
662
+ // Write absolute raw log
663
+ if (this.config.keepAbsoluteRawLogs) {
664
+ this.writeToAbsoluteRawLog(data);
665
+ }
618
666
  // Write raw log
619
667
  if (this.config.keepRawLogs) {
620
668
  this.writeToRawLog(text);
@@ -631,7 +679,7 @@ class EnhancedLogManager {
631
679
  const cleanLine = stripAnsi(line).trim();
632
680
  if (!cleanLine)
633
681
  continue;
634
- // Handle streaming JSON messages (for boxes, etc. in readable log)
682
+ // Handle streaming JSON messages
635
683
  if (cleanLine.startsWith('{')) {
636
684
  if (this.streamingParser) {
637
685
  this.streamingParser.parseLine(cleanLine);
@@ -687,6 +735,24 @@ class EnhancedLogManager {
687
735
  }
688
736
  }
689
737
  }
738
+ else {
739
+ // Parse standard text logs into ParsedMessage
740
+ // Format: [HH:MM:SS] [LANE] ℹ️ INFO message
741
+ const textLogRegex = /^\[(\d{2}:\d{2}:\d{2})\]\s+\[(.*?)\]\s+(.*?)\s+(INFO|WARN|ERROR|SUCCESS|DONE|PROGRESS)\s+(.*)/;
742
+ const match = cleanLine.match(textLogRegex);
743
+ if (match && this.onParsedMessage) {
744
+ const [, time, , emoji, level, content] = match;
745
+ // Convert HH:MM:SS to a timestamp for today
746
+ const [h, m, s] = time.split(':').map(Number);
747
+ const timestamp = new Date().setHours(h, m, s, 0);
748
+ this.onParsedMessage({
749
+ type: level.toLowerCase().replace('done', 'result').replace('success', 'result'),
750
+ role: 'system',
751
+ content: `${emoji} ${content}`,
752
+ timestamp,
753
+ });
754
+ }
755
+ }
690
756
  // Also include significant info/status lines in readable log (compact)
691
757
  if (this.readableLogFd !== null) {
692
758
  // Look for log lines: [ISO_DATE] [LEVEL] ...
@@ -732,6 +798,10 @@ class EnhancedLogManager {
732
798
  */
733
799
  writeStderr(data) {
734
800
  const text = data.toString();
801
+ // Write absolute raw log
802
+ if (this.config.keepAbsoluteRawLogs) {
803
+ this.writeToAbsoluteRawLog(data);
804
+ }
735
805
  // Write raw log
736
806
  if (this.config.keepRawLogs) {
737
807
  this.writeToRawLog(text);
@@ -773,12 +843,15 @@ class EnhancedLogManager {
773
843
  */
774
844
  log(level, message, metadata) {
775
845
  const ts = formatTimestamp(this.config.timestampFormat, this.session.startTime);
776
- const prefix = level.toUpperCase().padEnd(5);
846
+ const prefix = level.toUpperCase().padEnd(8);
777
847
  const line = `[${ts}] [${prefix}] ${message}\n`;
778
848
  this.writeToCleanLog(line);
779
849
  if (this.config.keepRawLogs) {
780
850
  this.writeToRawLog(line);
781
851
  }
852
+ if (this.config.keepAbsoluteRawLogs) {
853
+ this.writeToAbsoluteRawLog(line);
854
+ }
782
855
  // Write to readable log (compact)
783
856
  if (this.readableLogFd !== null) {
784
857
  const typeLabel = level === 'error' ? '❌ ERROR' : level === 'info' ? 'ℹ️ INFO' : '🔍 DEBUG';
@@ -809,6 +882,9 @@ class EnhancedLogManager {
809
882
  if (this.config.keepRawLogs) {
810
883
  this.writeToRawLog(line);
811
884
  }
885
+ if (this.config.keepAbsoluteRawLogs) {
886
+ this.writeToAbsoluteRawLog(line);
887
+ }
812
888
  // Write to readable log (compact)
813
889
  if (this.readableLogFd !== null) {
814
890
  const ts = new Date().toISOString();
@@ -864,6 +940,7 @@ class EnhancedLogManager {
864
940
  return {
865
941
  clean: this.cleanLogPath,
866
942
  raw: this.config.keepRawLogs ? this.rawLogPath : undefined,
943
+ absoluteRaw: this.config.keepAbsoluteRawLogs ? this.absoluteRawLogPath : undefined,
867
944
  json: this.config.writeJsonLog ? this.jsonLogPath : undefined,
868
945
  readable: this.readableLogPath,
869
946
  };
@@ -910,6 +987,10 @@ class EnhancedLogManager {
910
987
  fs.closeSync(this.rawLogFd);
911
988
  this.rawLogFd = null;
912
989
  }
990
+ if (this.absoluteRawLogFd !== null) {
991
+ fs.closeSync(this.absoluteRawLogFd);
992
+ this.absoluteRawLogFd = null;
993
+ }
913
994
  if (this.jsonLogFd !== null) {
914
995
  this.writeJsonEntry({
915
996
  timestamp: new Date().toISOString(),
@@ -1044,8 +1125,10 @@ function exportToMarkdown(jsonLogPath, cleanLogPath) {
1044
1125
  md += `### Task: ${task}\n\n`;
1045
1126
  md += '```\n';
1046
1127
  for (const entry of taskEntries) {
1047
- if (entry.level !== 'session') {
1048
- md += `[${entry.timestamp}] [${entry.level.toUpperCase()}] ${entry.message}\n`;
1128
+ const level = entry.level || 'info';
1129
+ const message = entry.message || '';
1130
+ if (level !== 'session') {
1131
+ md += `[${entry.timestamp}] [${level.toUpperCase()}] ${message}\n`;
1049
1132
  }
1050
1133
  }
1051
1134
  md += '```\n\n';
@@ -1080,11 +1163,13 @@ function exportToHtml(jsonLogPath, cleanLogPath) {
1080
1163
  <h1>CursorFlow Session Log</h1>
1081
1164
  `;
1082
1165
  for (const entry of entries) {
1083
- html += ` <div class="entry ${entry.level}">
1166
+ const level = entry.level || 'info';
1167
+ const message = entry.message || '';
1168
+ html += ` <div class="entry ${level}">
1084
1169
  <span class="timestamp">${entry.timestamp}</span>
1085
- <span class="level">[${entry.level}]</span>
1170
+ <span class="level">[${level}]</span>
1086
1171
  ${entry.task ? `<span class="task">[${entry.task}]</span>` : ''}
1087
- <pre>${escapeHtml(entry.message)}</pre>
1172
+ <pre>${escapeHtml(message)}</pre>
1088
1173
  </div>\n`;
1089
1174
  }
1090
1175
  html += '</body></html>';
@@ -1 +1 @@
1
- {"version":3,"file":"enhanced-logger.js","sourceRoot":"","sources":["../../src/utils/enhanced-logger.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgOH,8BAQC;AAKD,0CA2BC;AA8wBD,4CAaC;AAKD,kCAqBC;AAKD,gCAoCC;AApmCD,uCAAyB;AACzB,2CAA6B;AAC7B,mCAAsD;AAEtD,iCAAkC;AAKrB,QAAA,kBAAkB,GAAsB;IACnD,OAAO,EAAE,IAAI;IACb,SAAS,EAAE,IAAI;IACf,aAAa,EAAE,IAAI;IACnB,WAAW,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO;IACtC,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,IAAI;IACjB,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,KAAK;CACvB,CAAC;AAEF;;;GAGG;AACH,MAAa,sBAAsB;IACzB,cAAc,GAAW,EAAE,CAAC;IAC5B,WAAW,GAAW,EAAE,CAAC;IACzB,gBAAgB,GAAW,CAAC,CAAC;IAC7B,SAAS,CAA+B;IAEhD,YAAY,SAAuC;QACjD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,IAAY;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO;QAEjD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACjC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,IAAS;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAEvB,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,QAAQ;gBACX,sBAAsB;gBACtB,IAAI,CAAC,WAAW,CAAC;oBACf,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,mBAAmB,IAAI,CAAC,KAAK,IAAI,SAAS,WAAW,IAAI,CAAC,cAAc,IAAI,SAAS,EAAE;oBAChG,SAAS,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE;iBAC3C,CAAC,CAAC;gBACH,MAAM;YAER,KAAK,MAAM;gBACT,0CAA0C;gBAC1C,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;oBAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;yBACrC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;yBACrC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBACvB,IAAI,CAAC,EAAE,CAAC,CAAC;oBAEZ,IAAI,CAAC,WAAW,CAAC;wBACf,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,WAAW;wBACpB,SAAS,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE;qBAC3C,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YAER,KAAK,WAAW;gBACd,kDAAkD;gBAClD,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;oBAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;yBACrC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;yBACrC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;yBACvB,IAAI,CAAC,EAAE,CAAC,CAAC;oBAEZ,iDAAiD;oBACjD,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;wBACrC,gCAAgC;wBAChC,IAAI,CAAC,KAAK,EAAE,CAAC;wBACb,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;wBAC/B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBAC1D,CAAC;oBAED,IAAI,CAAC,cAAc,IAAI,WAAW,CAAC;gBACrC,CAAC;gBACD,MAAM;YAER,KAAK,WAAW;gBACd,wCAAwC;gBACxC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;oBAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;oBAEtD,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,sCAAsC;oBAEpD,IAAI,CAAC,WAAW,CAAC;wBACf,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,UAAU,QAAQ,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;wBAC1D,SAAS,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE;wBAC1C,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE;qBAC7C,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBAC1D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;oBAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;oBAEhD,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;wBACpB,yBAAyB;wBACzB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;wBAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,GAAG;4BACpC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,iBAAiB;4BAC/C,CAAC,CAAC,OAAO,CAAC;wBAEZ,IAAI,CAAC,WAAW,CAAC;4BACf,IAAI,EAAE,aAAa;4BACnB,IAAI,EAAE,MAAM;4BACZ,OAAO,EAAE,iBAAiB,QAAQ,KAAK,SAAS,EAAE;4BAClD,SAAS,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE;4BAC1C,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE;yBAC/E,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,MAAM;YAER,KAAK,QAAQ;gBACX,mDAAmD;gBACnD,IAAI,CAAC,KAAK,EAAE,CAAC;gBAEb,IAAI,CAAC,WAAW,CAAC;oBACf,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;oBAC1B,SAAS,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE;oBAC1C,QAAQ,EAAE;wBACR,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;qBACtB;iBACF,CAAC,CAAC;gBACH,MAAM;YAER,KAAK,UAAU;gBACb,sCAAsC;gBACtC,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC1C,iDAAiD;oBACjD,IAAI,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;wBACpC,gCAAgC;wBAChC,IAAI,CAAC,KAAK,EAAE,CAAC;wBACb,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;wBAC9B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBAC1D,CAAC;oBACD,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC;gBACnC,CAAC;qBAAM,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;oBACxC,yCAAyC;oBACzC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,CAAC;gBACD,MAAM;QACV,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC;gBACf,IAAI,EAAE,IAAI,CAAC,WAAkB;gBAC7B,IAAI,EAAE,IAAI,CAAC,WAAW;gBACtB,OAAO,EAAE,IAAI,CAAC,cAAc;gBAC5B,SAAS,EAAE,IAAI,CAAC,gBAAgB;aACjC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;IAC5B,CAAC;IAEO,WAAW,CAAC,GAAkB;QACpC,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACvB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;CACF;AA3KD,wDA2KC;AAUD;;;;;;GAMG;AACH,MAAM,UAAU,GAAG,6EAA6E,CAAC;AAEjG;;GAEG;AACH,MAAM,mBAAmB,GAAG,yGAAyG,CAAC;AAEtI;;GAEG;AACH,SAAgB,SAAS,CAAC,IAAY;IACpC,OAAO,IAAI;SACR,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;SAChC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;QACxB,0EAA0E;SACzE,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC;QAC1B,iEAAiE;SAChE,OAAO,CAAC,mCAAmC,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,MAAoC,EAAE,SAAkB;IACtF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEvB,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK;YACR,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,KAAK,UAAU;YACb,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,OAAO,GAAG,GAAG,GAAG,SAAS,CAAC;gBAChC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;gBAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBAEvC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBACd,OAAO,IAAI,KAAK,IAAI,OAAO,GAAG,EAAE,IAAI,OAAO,GAAG,EAAE,GAAG,CAAC;gBACtD,CAAC;qBAAM,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;oBACvB,OAAO,IAAI,OAAO,IAAI,OAAO,GAAG,EAAE,GAAG,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,OAAO,IAAI,OAAO,GAAG,CAAC;gBACxB,CAAC;YACH,CAAC;YACD,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,KAAK,OAAO;YACV,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACtE;YACE,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;AACH,CAAC;AA4BD;;GAEG;AACH,MAAM,wBAAwB,GAAG,wCAAwC,CAAC;AAE1E;;GAEG;AACH,SAAS,oBAAoB,CAAC,IAAY;IACxC,OAAO,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,MAAa,iBAAkB,SAAQ,kBAAS;IACtC,MAAM,CAAoB;IAC1B,OAAO,CAAa;IACpB,MAAM,GAAW,EAAE,CAAC;IAE5B,YAAY,MAAyB,EAAE,OAAmB;QACxD,KAAK,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,UAAU,CAAC,KAAa,EAAE,QAAwB,EAAE,QAA2B;QAC7E,IAAI,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAE5B,uBAAuB;QACvB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEtC,0CAA0C;QAC1C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;QAEhC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,SAAS,GAAG,IAAI,CAAC;YAErB,wBAAwB;YACxB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC1B,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;YACnC,CAAC;YAED,6DAA6D;YAC7D,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACtF,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAChF,SAAS,GAAG,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrC,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,QAAQ,EAAE,CAAC;IACb,CAAC;IAED,MAAM,CAAC,QAA2B;QAChC,yCAAyC;QACzC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACvB,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;YAE5B,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC1B,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;YACnC,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACtF,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAChF,SAAS,GAAG,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrC,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,QAAQ,EAAE,CAAC;IACb,CAAC;CACF;AA5DD,8CA4DC;AAED;;GAEG;AACH,MAAa,kBAAkB;IACrB,MAAM,CAAoB;IAC1B,OAAO,CAAa;IACpB,MAAM,CAAS;IAEf,YAAY,CAAS;IACrB,UAAU,CAAS;IACnB,WAAW,CAAS;IACpB,eAAe,CAAS;IAExB,UAAU,GAAkB,IAAI,CAAC;IACjC,QAAQ,GAAkB,IAAI,CAAC;IAC/B,SAAS,GAAkB,IAAI,CAAC;IAChC,aAAa,GAAkB,IAAI,CAAC;IAEpC,YAAY,GAAW,CAAC,CAAC;IACzB,UAAU,GAAW,CAAC,CAAC;IAEvB,cAAc,GAA6B,IAAI,CAAC;IAChD,eAAe,GAAkC,IAAI,CAAC;IACtD,UAAU,GAAW,EAAE,CAAC;IACxB,eAAe,CAAgC;IAEvD,YAAY,MAAc,EAAE,OAAmB,EAAE,SAAqC,EAAE,EAAE,eAA8C;QACtI,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,0BAAkB,EAAE,GAAG,MAAM,EAAE,CAAC;QACnD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAEvC,8BAA8B;QAC9B,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1C,wBAAwB;QACxB,IAAI,CAAC,YAAY,GAAG,IAAA,eAAQ,EAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,IAAA,eAAQ,EAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,GAAG,IAAA,eAAQ,EAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,IAAA,eAAQ,EAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;QAEjE,uBAAuB;QACvB,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,YAAY;QAClB,gCAAgC;QAChC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;QAED,wBAAwB;QACxB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAEtD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACtD,CAAC;QAED,uDAAuD;QACvD,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAE5D,yBAAyB;QACzB,IAAI,CAAC;YACH,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC;YACxD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC5B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;YACtD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACtB,CAAC;QAED,uBAAuB;QACvB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,0BAA0B;QAC1B,IAAI,CAAC,cAAc,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACvE,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YAC9C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,2CAA2C;QAC3C,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAsB,CAAC,CAAC,GAAG,EAAE,EAAE;YACxD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,GAAkB;QAC7C,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI;YAAE,OAAO;QAExC,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,IAAI,SAAiB,CAAC;QAEtB,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,QAAQ;gBACX,SAAS,GAAG,IAAI,EAAE,gBAAgB,GAAG,CAAC,OAAO,IAAI,CAAC;gBAClD,MAAM;YAER,KAAK,MAAM,CAAC;YACZ,KAAK,WAAW,CAAC;YACjB,KAAK,QAAQ;gBACX,0CAA0C;gBAC1C,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC;gBACnC,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;gBACvC,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,cAAc,CAAC;gBAC3F,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,WAAW;oBACxC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI;oBACtD,CAAC,CAAC,EAAE,CAAC;gBAEP,MAAM,KAAK,GAAG,KAAK,UAAU,GAAG,QAAQ,KAAK,CAAC;gBAC9C,MAAM,UAAU,GAAG,EAAE,CAAC;gBACtB,MAAM,SAAS,GAAG,KAAK,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxF,MAAM,YAAY,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC;gBAEvD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtC,SAAS,GAAG,IAAI,EAAE,KAAK,SAAS,IAAI,CAAC;gBACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,SAAS,IAAI,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC;gBACrC,CAAC;gBACD,SAAS,IAAI,IAAI,EAAE,KAAK,YAAY,IAAI,CAAC;gBACzC,MAAM;YAER,KAAK,MAAM;gBACT,SAAS,GAAG,IAAI,EAAE,cAAc,GAAG,CAAC,OAAO,IAAI,CAAC;gBAChD,MAAM;YAER,KAAK,aAAa;gBAChB,MAAM,eAAe,GAAG,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,SAAS,GAAG,IAAI,EAAE,cAAc,GAAG,CAAC,QAAQ,EAAE,QAAQ,IAAI,MAAM,GAAG,eAAe,IAAI,CAAC;gBACvF,MAAM;YAER,KAAK,UAAU;gBACb,wBAAwB;gBACxB,MAAM,UAAU,GAAG,kBAAkB,CAAC;gBACtC,MAAM,UAAU,GAAG,EAAE,CAAC;gBACtB,MAAM,QAAQ,GAAG,KAAK,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjG,MAAM,WAAW,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC;gBAEtD,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAClD,SAAS,GAAG,IAAI,EAAE,KAAK,QAAQ,IAAI,CAAC;gBACpC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;oBAC9B,SAAS,IAAI,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC;gBACrC,CAAC;gBACD,SAAS,IAAI,IAAI,EAAE,KAAK,WAAW,IAAI,CAAC;gBACxC,MAAM;YAER;gBACE,SAAS,GAAG,IAAI,EAAE,KAAK,GAAG,CAAC,OAAO,IAAI,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,sBAAsB;QACxB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,IAAY,EAAE,MAAc;QAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,MAAM,MAAM,GAAG;;;;kBAID,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;kBAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;kBAChC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;kBACzC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;kBAC5C,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;;;CAG1E,CAAC;QAEE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAE7B,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACtC,CAAC;QAED,2BAA2B;QAC3B,IAAI,CAAC,cAAc,CAAC;YAClB,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;YACzD,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;YAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;YAC3B,OAAO,EAAE,iBAAiB;YAC1B,QAAQ,EAAE;gBACR,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC1B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;gBACzB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ;aACzB;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,OAAe,EAAE,IAAqB;QAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO;QAEpC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC1C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8CAA8C;QAChD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,OAAe;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAEzC,+BAA+B;QAC/B,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACnD,MAAM,OAAO,GAAG,IAAA,eAAQ,EAAC,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,IAAA,eAAQ,EAAC,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;YAExD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;oBACnC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB;gBAC1C,CAAC;qBAAM,CAAC;oBACN,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,MAAM,WAAW,GAAG,IAAA,eAAQ,EAAC,GAAG,EAAE,GAAG,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;QACrD,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,IAAY;QAClC,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;YAAE,OAAO;QAErC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC;QAEnC,2BAA2B;QAC3B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACjD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAClC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YACtD,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,IAAY;QAChC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO;QAEnC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC;QAEjC,2BAA2B;QAC3B,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC/C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAChC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YAClD,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,KAAmB;QACxC,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;YAAE,OAAO;QAEpC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;QAC1C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,WAAW,CAAC,IAAqB;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE7B,gBAAgB;QAChB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,0CAA0C;QAC1C,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,kDAAkD;QAClD,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;QAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI,CAAC,SAAS;gBAAE,SAAS;YAEzB,mEAAmE;YACnE,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9B,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;oBACzB,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gBAC5C,CAAC;gBAED,8DAA8D;gBAC9D,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;oBAC7B,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;wBACnC,IAAI,UAAU,GAAG,SAAS,CAAC;wBAC3B,IAAI,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;wBAE3B,wDAAwD;wBACxD,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;4BACzF,UAAU,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC;4BACvC,oDAAoD;4BACpD,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;wBAChD,CAAC;6BAAM,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;4BAC9D,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;iCAC9B,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;iCACrC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;iCACvB,IAAI,CAAC,EAAE,CAAC,CAAC;wBACd,CAAC;6BAAM,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;4BACzD,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;iCAC9B,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;iCACrC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;iCACvB,IAAI,CAAC,EAAE,CAAC,CAAC;wBACd,CAAC;6BAAM,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;4BACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;4BAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;4BAClD,UAAU,GAAG,YAAY,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;wBAC/D,CAAC;6BAAM,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;4BACrE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;4BAC7D,UAAU,GAAG,YAAY,QAAQ,EAAE,CAAC;wBACtC,CAAC;6BAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;4BAClC,UAAU,GAAG,IAAI,CAAC,MAAM,IAAI,gBAAgB,CAAC;wBAC/C,CAAC;wBAED,IAAI,CAAC,cAAc,CAAC;4BAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;4BACnC,KAAK,EAAE,QAAQ;4BACf,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;4BAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;4BAC3B,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,2BAA2B;4BACnE,QAAQ;yBACT,CAAC,CAAC;wBACH,SAAS,CAAC,gCAAgC;oBAC5C,CAAC;oBAAC,MAAM,CAAC;wBACP,2DAA2D;oBAC7D,CAAC;gBACH,CAAC;YACH,CAAC;YAED,uEAAuE;YACvE,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;gBAChC,6CAA6C;gBAC7C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC1E,IAAI,CAAC;wBACH,iCAAiC;wBACjC,IAAI,qCAAqC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;4BAC1D,iCAAiC;4BACjC,IAAI,SAAS,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,CAAC;gCAClD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;gCAClE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gCAC3D,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,iBAAiB,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;4BAC9G,CAAC;iCAAM,CAAC;gCACN,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,SAAS,IAAI,CAAC,CAAC;4BACrD,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC,CAAA,CAAC;gBACZ,CAAC;YACH,CAAC;YAED,iDAAiD;YACjD,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5D,IAAI,CAAC,cAAc,CAAC;oBAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC3B,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC;oBACrC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC;iBACnE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,IAAY;QACrC,wEAAwE;IAC1E,CAAC;IAED;;OAEG;IACI,WAAW,CAAC,IAAqB;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE7B,gBAAgB;QAChB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,0CAA0C;QAC1C,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,qDAAqD;QACrD,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzC,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC7C,IAAI,CAAC;wBACH,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;wBACpC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,eAAe,SAAS,IAAI,CAAC,CAAC;oBACvE,CAAC;oBAAC,MAAM,CAAC,CAAA,CAAC;gBACZ,CAAC;YACH,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC,cAAc,CAAC;oBAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;oBAC3B,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC;iBACtC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACI,GAAG,CAAC,KAAiC,EAAE,OAAe,EAAE,QAA8B;QAC3F,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChF,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,IAAI,EAAE,MAAM,MAAM,KAAK,OAAO,IAAI,CAAC;QAChD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAE3B,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,kCAAkC;QAClC,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;YAC5F,MAAM,SAAS,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC;YAC3E,IAAI,CAAC;gBACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAC9C,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC7B,IAAI,CAAC,cAAc,CAAC;gBAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,KAAK;gBACL,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAC3B,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAC3B,OAAO;gBACP,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,KAAa;QAC1B,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,KAAK,OAAO,OAAO,KAAK,KAAK,OAAO,IAAI,CAAC;QAEtD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,kCAAkC;QAClC,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAChC,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,KAAK,yEAAyE,CAAC;YAChH,IAAI,CAAC;gBACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAC9C,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,QAAgB,EAAE,KAAc;QAC7C,IAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACjC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,SAAS,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEtE,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC7B,IAAI,CAAC,cAAc,CAAC;gBAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAC3B,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,iBAAiB,QAAQ,EAAE;gBACpC,QAAQ,EAAE,EAAE,KAAK,EAAE;aACpB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,IAAY;QAC7B,gCAAgC;QAChC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC;QAE9B,wCAAwC;QACxC,MAAM,aAAa,GAAG;YACpB,mBAAmB,EAAE,yCAAyC;YAC9D,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,0BAA0B;YACxC,QAAQ,EAAE,kBAAkB;YAC5B,sBAAsB,EAAE,qBAAqB;SAC9C,CAAC;QAEF,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACI,WAAW;QAChB,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,YAAY;YACxB,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAC1D,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;YAC7D,QAAQ,EAAE,IAAI,CAAC,eAAe;SAC/B,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,kBAAkB;QACvB,yEAAyE;QACzE,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAW,CAAC;QACrE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACI,KAAK;QACV,yBAAyB;QACzB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QAC5B,CAAC;QAED,yBAAyB;QACzB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,oCAAoC;YACpC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC3B,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,CAAC;YACD,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC/B,CAAC;QAED,2BAA2B;QAC3B,MAAM,SAAS,GAAG;;oBAEF,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;eACxC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;;;CAGjF,CAAC;QAEE,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC7B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACzC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACzB,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC3B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YACvC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,cAAc,CAAC;gBAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAC3B,OAAO,EAAE,eAAe;gBACxB,QAAQ,EAAE;oBACR,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;oBAC1B,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS;iBAC9C;aACF,CAAC,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;QAED,qBAAqB;QACrB,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;YAChC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAC5C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,EAAU;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QAEhD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,OAAO,GAAG,KAAK,KAAK,OAAO,KAAK,OAAO,GAAG,CAAC;QAC7C,CAAC;aAAM,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,GAAG,OAAO,KAAK,OAAO,GAAG,CAAC;QACnC,CAAC;QACD,OAAO,GAAG,OAAO,GAAG,CAAC;IACvB,CAAC;CACF;AA7pBD,gDA6pBC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAC9B,UAAkB,EAClB,QAAgB,EAChB,MAAmC,EACnC,eAA8C;IAE9C,MAAM,OAAO,GAAe;QAC1B,EAAE,EAAE,GAAG,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QAC5C,QAAQ;QACR,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAC;IAEF,OAAO,IAAI,kBAAkB,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;AAC9E,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,OAAe;IACzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO,OAAO;aACX,KAAK,CAAC,IAAI,CAAC;aACX,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC3B,GAAG,CAAC,IAAI,CAAC,EAAE;YACV,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAiB,CAAC;YAC1C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,KAAK,EAAyB,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,UAAU,CACxB,UAAkB,EAClB,MAA6C,EAC7C,UAAmB;IAEnB,MAAM,YAAY,GAAG,IAAA,eAAQ,EAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,IAAA,eAAQ,EAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;IAE3D,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,MAAM;YACT,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChC,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YACjD,CAAC;YACD,MAAM;QAER,KAAK,MAAM;YACT,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;YACzC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC1C,MAAM;QAER,KAAK,UAAU;YACb,MAAM,GAAG,gBAAgB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YACrD,MAAM;QAER,KAAK,MAAM;YACT,MAAM,GAAG,YAAY,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YACjD,MAAM;IACV,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,WAAmB,EAAE,YAAoB;IACjE,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IAEzC,IAAI,EAAE,GAAG,8BAA8B,CAAC;IAExC,oBAAoB;IACpB,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,iBAAiB,CAAC,CAAC;IACjG,IAAI,YAAY,EAAE,QAAQ,EAAE,CAAC;QAC3B,EAAE,IAAI,qBAAqB,CAAC;QAC5B,EAAE,IAAI,qBAAqB,YAAY,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC;QAC/D,EAAE,IAAI,eAAe,YAAY,CAAC,IAAI,IAAI,CAAC;QAC3C,EAAE,IAAI,gBAAgB,YAAY,CAAC,QAAQ,CAAC,KAAK,IAAI,SAAS,IAAI,CAAC;QACnE,EAAE,IAAI,kBAAkB,YAAY,CAAC,SAAS,MAAM,CAAC;IACvD,CAAC;IAED,EAAE,IAAI,oBAAoB,CAAC;IAE3B,gBAAgB;IAChB,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IACjD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,WAAW,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACvB,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,MAAM,EAAE,CAAC;QACzC,EAAE,IAAI,aAAa,IAAI,MAAM,CAAC;QAC9B,EAAE,IAAI,OAAO,CAAC;QACd,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;YAChC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC9B,EAAE,IAAI,IAAI,KAAK,CAAC,SAAS,MAAM,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,IAAI,CAAC;YACjF,CAAC;QACH,CAAC;QACD,EAAE,IAAI,SAAS,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,WAAmB,EAAE,YAAoB;IAC7D,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IAEzC,IAAI,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;CAqBZ,CAAC;IAEA,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,IAAI,uBAAuB,KAAK,CAAC,KAAK;8BAChB,KAAK,CAAC,SAAS;2BAClB,KAAK,CAAC,KAAK;MAChC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,uBAAuB,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE;WACxD,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;WACzB,CAAC;IACV,CAAC;IAED,IAAI,IAAI,gBAAgB,CAAC;IACzB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,IAAI;SACR,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"enhanced-logger.js","sourceRoot":"","sources":["../../src/utils/enhanced-logger.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,10 @@ export declare function getCurrentBranch(cwd?: string): string;
44
44
  * Get repository root directory
45
45
  */
46
46
  export declare function getRepoRoot(cwd?: string): string;
47
+ /**
48
+ * Get main repository root directory (for worktrees)
49
+ */
50
+ export declare function getMainRepoRoot(cwd?: string): string;
47
51
  /**
48
52
  * Check if directory is a git repository
49
53
  */
@@ -140,3 +144,120 @@ export declare function getCommitInfo(commitHash: string, options?: {
140
144
  * Comparing HEAD with its first parent
141
145
  */
142
146
  export declare function getLastOperationStats(cwd?: string): string;
147
+ /**
148
+ * Generate a unique branch name that doesn't conflict with existing branches
149
+ */
150
+ export declare function generateUniqueBranchName(baseName: string, options?: {
151
+ cwd?: string;
152
+ maxAttempts?: number;
153
+ }): string;
154
+ /**
155
+ * Safe merge result
156
+ */
157
+ export interface SafeMergeResult {
158
+ success: boolean;
159
+ conflict: boolean;
160
+ conflictingFiles: string[];
161
+ error?: string;
162
+ aborted: boolean;
163
+ }
164
+ /**
165
+ * Safely merge a branch with conflict detection and auto-abort
166
+ */
167
+ export declare function safeMerge(branchName: string, options?: {
168
+ cwd?: string;
169
+ noFf?: boolean;
170
+ message?: string | null;
171
+ abortOnConflict?: boolean;
172
+ strategy?: 'ours' | 'theirs' | null;
173
+ }): SafeMergeResult;
174
+ /**
175
+ * Get list of conflicting files
176
+ */
177
+ export declare function getConflictingFiles(cwd?: string): string[];
178
+ /**
179
+ * Check if merge is in progress
180
+ */
181
+ export declare function isMergeInProgress(cwd?: string): boolean;
182
+ /**
183
+ * Abort ongoing merge
184
+ */
185
+ export declare function abortMerge(cwd?: string): boolean;
186
+ /**
187
+ * Get HEAD commit hash
188
+ */
189
+ export declare function getHead(cwd?: string): string;
190
+ /**
191
+ * Get short HEAD commit hash
192
+ */
193
+ export declare function getHeadShort(cwd?: string): string;
194
+ /**
195
+ * Stash changes with optional message
196
+ */
197
+ export declare function stash(message?: string, options?: {
198
+ cwd?: string;
199
+ }): boolean;
200
+ /**
201
+ * Pop stashed changes
202
+ */
203
+ export declare function stashPop(options?: {
204
+ cwd?: string;
205
+ }): boolean;
206
+ /**
207
+ * Clean worktree (remove untracked files)
208
+ */
209
+ export declare function cleanWorktree(options?: {
210
+ cwd?: string;
211
+ force?: boolean;
212
+ directories?: boolean;
213
+ }): void;
214
+ /**
215
+ * Reset worktree to specific commit/branch
216
+ */
217
+ export declare function reset(target: string, options?: {
218
+ cwd?: string;
219
+ mode?: 'soft' | 'mixed' | 'hard';
220
+ }): void;
221
+ /**
222
+ * Checkout specific commit or branch
223
+ */
224
+ export declare function checkout(target: string, options?: {
225
+ cwd?: string;
226
+ force?: boolean;
227
+ createBranch?: boolean;
228
+ }): void;
229
+ /**
230
+ * Get commits between two refs
231
+ */
232
+ export declare function getCommitsBetween(fromRef: string, toRef: string, options?: {
233
+ cwd?: string;
234
+ }): CommitInfo[];
235
+ /**
236
+ * Enhanced worktree creation with async lock
237
+ */
238
+ export declare function createWorktreeAsync(worktreePath: string, branchName: string, options?: {
239
+ cwd?: string;
240
+ baseBranch?: string;
241
+ timeout?: number;
242
+ }): Promise<string>;
243
+ /**
244
+ * Prune orphaned worktrees
245
+ */
246
+ export declare function pruneWorktrees(options?: {
247
+ cwd?: string;
248
+ }): void;
249
+ /**
250
+ * Get worktree for a specific path
251
+ */
252
+ export declare function getWorktreeForPath(targetPath: string, cwd?: string): WorktreeInfo | null;
253
+ /**
254
+ * Sync branch with remote (fetch + merge or rebase)
255
+ */
256
+ export declare function syncWithRemote(branch: string, options?: {
257
+ cwd?: string;
258
+ strategy?: 'merge' | 'rebase';
259
+ createIfMissing?: boolean;
260
+ }): {
261
+ success: boolean;
262
+ error?: string;
263
+ };