codebuff 1.0.237 → 1.0.239

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 (50) hide show
  1. package/dist/background-process-manager.js +43 -4
  2. package/dist/background-process-manager.js.map +1 -1
  3. package/dist/checkpoints/file-manager.js +1 -1
  4. package/dist/cli.d.ts +0 -1
  5. package/dist/cli.js +19 -11
  6. package/dist/cli.js.map +1 -1
  7. package/dist/client.d.ts +12 -2
  8. package/dist/client.js +54 -25
  9. package/dist/client.js.map +1 -1
  10. package/dist/code-map/tsconfig.tsbuildinfo +1 -1
  11. package/dist/common/billing/quota-manager.d.ts +29 -0
  12. package/dist/common/billing/quota-manager.js +251 -0
  13. package/dist/common/billing/quota-manager.js.map +1 -0
  14. package/dist/common/constants/analytics-events.d.ts +12 -0
  15. package/dist/common/constants/analytics-events.js +19 -0
  16. package/dist/common/constants/analytics-events.js.map +1 -0
  17. package/dist/common/logger.d.ts +1 -0
  18. package/dist/common/logger.js +7 -0
  19. package/dist/common/logger.js.map +1 -0
  20. package/dist/common/types/usage.d.ts +4 -4
  21. package/dist/common/util/constants.d.ts +1 -0
  22. package/dist/common/util/constants.js +7 -0
  23. package/dist/common/util/constants.js.map +1 -0
  24. package/dist/common/util/helpers.d.ts +1 -0
  25. package/dist/common/util/helpers.js +6 -0
  26. package/dist/common/util/helpers.js.map +1 -0
  27. package/dist/common/util/logger.js +1 -1
  28. package/dist/common/util/logger.js.map +1 -1
  29. package/dist/common/util/token-counter.d.ts +3 -0
  30. package/dist/common/util/token-counter.js +27 -0
  31. package/dist/common/util/token-counter.js.map +1 -0
  32. package/dist/common/util/tools.d.ts +2 -0
  33. package/dist/common/util/tools.js +13 -0
  34. package/dist/common/util/tools.js.map +1 -0
  35. package/dist/dev-process-manager.js +3 -3
  36. package/dist/dev-process-manager.js.map +1 -1
  37. package/dist/index.js +5 -1
  38. package/dist/index.js.map +1 -1
  39. package/dist/menu.js +14 -12
  40. package/dist/menu.js.map +1 -1
  41. package/dist/update-codebuff.js +2 -0
  42. package/dist/update-codebuff.js.map +1 -1
  43. package/dist/utils/analytics.d.ts +6 -0
  44. package/dist/utils/analytics.js +53 -0
  45. package/dist/utils/analytics.js.map +1 -0
  46. package/dist/utils/logger.d.ts +21 -0
  47. package/dist/utils/logger.js +78 -0
  48. package/dist/utils/logger.js.map +1 -0
  49. package/package.json +2 -1
  50. package/dist/common/json-config/__tests__/__snapshots__/stringify-schema.test.js.snap +0 -66
@@ -15,11 +15,13 @@ const child_process_1 = require("child_process");
15
15
  const fs_1 = require("fs");
16
16
  const path_1 = __importDefault(require("path"));
17
17
  const process_1 = __importDefault(require("process"));
18
+ const analytics_events_1 = require("common/src/constants/analytics-events");
18
19
  const array_1 = require("./common/util/array");
19
20
  const string_1 = require("./common/util/string");
20
21
  const picocolors_1 = require("picocolors");
21
22
  const zod_1 = require("zod");
22
23
  const credentials_1 = require("./credentials");
24
+ const logger_1 = require("./utils/logger");
23
25
  const COMMAND_OUTPUT_LIMIT = 5000; // Limit output to 10KB per stream
24
26
  const COMMAND_KILL_TIMEOUT_MS = 5000;
25
27
  const POLLING_INTERVAL_MS = 200;
@@ -174,11 +176,16 @@ function spawnAndTrack(command, args = [], options) {
174
176
  detached: true,
175
177
  });
176
178
  (0, assert_1.default)(child.pid !== undefined);
179
+ logger_1.logger.info({
180
+ eventId: analytics_events_1.AnalyticsEvent.BACKGROUND_PROCESS_START,
181
+ pid: child.pid,
182
+ }, `Process start: \`${command} ${args.join(' ')}\``);
177
183
  (0, fs_1.mkdirSync)(LOCK_DIR, { recursive: true });
178
184
  const filePath = path_1.default.join(LOCK_DIR, `${child.pid}`);
179
185
  createLockFile(filePath);
180
186
  child.on('exit', () => {
181
187
  deleteFileIfExists(filePath);
188
+ logger_1.logger.info({ eventId: analytics_events_1.AnalyticsEvent.BACKGROUND_PROCESS_END, pid: child.pid }, `Graceful exit: \`${command} ${args.join(' ')}\``);
182
189
  });
183
190
  return child;
184
191
  }
@@ -214,9 +221,27 @@ function waitForProcessExit(pid) {
214
221
  }, COMMAND_KILL_TIMEOUT_MS);
215
222
  });
216
223
  }
224
+ function killProcessTreeSoftly(pid) {
225
+ if (process_1.default.platform === 'win32') {
226
+ // /T = kill tree, no /F = soft kill
227
+ (0, child_process_1.spawn)('taskkill', ['/PID', String(pid), '/T'], {
228
+ stdio: 'ignore',
229
+ detached: true,
230
+ }).unref();
231
+ }
232
+ else {
233
+ try {
234
+ process_1.default.kill(-pid, 'SIGTERM');
235
+ }
236
+ catch (err) {
237
+ if (err?.code !== 'ESRCH')
238
+ throw err;
239
+ }
240
+ }
241
+ }
217
242
  async function killAndWait(pid) {
218
243
  try {
219
- process_1.default.kill(-pid, 'SIGTERM');
244
+ killProcessTreeSoftly(pid);
220
245
  if (await waitForProcessExit(pid)) {
221
246
  return;
222
247
  }
@@ -238,7 +263,7 @@ function sendKillSignalToAllBackgroundProcesses() {
238
263
  continue;
239
264
  }
240
265
  try {
241
- process_1.default.kill(-pid, 'SIGTERM');
266
+ killProcessTreeSoftly(pid);
242
267
  }
243
268
  catch { }
244
269
  }
@@ -249,7 +274,7 @@ async function killAllBackgroundProcesses() {
249
274
  .map(async ([pid, processInfo]) => {
250
275
  try {
251
276
  await killAndWait(pid);
252
- console.log((0, picocolors_1.gray)(`Killed process: \`${processInfo.command}\``));
277
+ // console.log(gray(`Killed process: \`${processInfo.command}\``))
253
278
  }
254
279
  catch (error) {
255
280
  console.error((0, picocolors_1.red)(`Failed to kill: \`${processInfo.command}\` (pid ${pid}): ${error?.message || error}`));
@@ -287,6 +312,10 @@ function cleanupStoredProcesses() {
287
312
  catch { }
288
313
  if (locksToProcess.length) {
289
314
  console.log((0, picocolors_1.gray)('Detected running codebuff processes. Cleaning...\n'));
315
+ logger_1.logger.info({
316
+ eventId: analytics_events_1.AnalyticsEvent.BACKGROUND_PROCESS_LEFTOVER_DETECTED,
317
+ pids: locksToProcess,
318
+ });
290
319
  }
291
320
  // Actually kill processes (async)
292
321
  const processLockFile = async (pidName) => {
@@ -294,20 +323,30 @@ function cleanupStoredProcesses() {
294
323
  const pid = parseInt(pidName, 10);
295
324
  if (isNaN(pid)) {
296
325
  deleteFileIfExists(lockFile);
326
+ logger_1.logger.info({ eventId: analytics_events_1.AnalyticsEvent.BACKGROUND_PROCESS_END, pid }, 'Lock found but process not running.');
297
327
  return;
298
328
  }
299
329
  if (exports.backgroundProcesses.has(pid)) {
330
+ logger_1.logger.error({ eventId: analytics_events_1.AnalyticsEvent.BACKGROUND_PROCESS_END, pid }, 'Process running in current session. Should not occur.');
300
331
  return;
301
332
  }
302
333
  try {
303
- process_1.default.kill(-pid, 'SIGTERM');
334
+ killProcessTreeSoftly(pid);
304
335
  if (await waitForProcessExit(pid)) {
305
336
  deleteFileIfExists(lockFile);
337
+ logger_1.logger.info({ eventId: analytics_events_1.AnalyticsEvent.BACKGROUND_PROCESS_END, pid }, 'Process successfully killed.');
338
+ }
339
+ else {
340
+ logger_1.logger.warn({ eventId: analytics_events_1.AnalyticsEvent.BACKGROUND_PROCESS_CONTINUE, pid }, 'Process unable to be killed. Leaving lock file.');
306
341
  }
307
342
  }
308
343
  catch (err) {
309
344
  if (err.code === 'ESRCH') {
310
345
  deleteFileIfExists(lockFile);
346
+ logger_1.logger.info({ eventId: analytics_events_1.AnalyticsEvent.BACKGROUND_PROCESS_END, pid }, 'Leftover process (with lock) died naturally.');
347
+ }
348
+ else {
349
+ logger_1.logger.error({ eventId: analytics_events_1.AnalyticsEvent.BACKGROUND_PROCESS_CONTINUE, err, pid }, 'Error killing process');
311
350
  }
312
351
  }
313
352
  };
@@ -1 +1 @@
1
- {"version":3,"file":"background-process-manager.js","sourceRoot":"","sources":["../src/background-process-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"background-process-manager.js","sourceRoot":"","sources":["../src/background-process-manager.ts"],"names":[],"mappings":"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"}
@@ -222,7 +222,7 @@ async function gitCommit({ projectDir, bareRepoPath, message, }) {
222
222
  fs: fs_1.default,
223
223
  dir: projectDir,
224
224
  gitdir: bareRepoPath,
225
- author: { name: 'codebuff' },
225
+ author: { name: 'Codebuff' },
226
226
  message,
227
227
  ref: '/refs/heads/master',
228
228
  });
package/dist/cli.d.ts CHANGED
@@ -33,7 +33,6 @@ export declare class CLI {
33
33
  private processCommand;
34
34
  private forwardUserInput;
35
35
  private reconnectWhenNextIdle;
36
- private returnControlToUser;
37
36
  private onWebSocketError;
38
37
  private onWebSocketReconnect;
39
38
  private handleKeyPress;
package/dist/cli.js CHANGED
@@ -42,6 +42,7 @@ const client_1 = require("./client");
42
42
  const config_1 = require("./config");
43
43
  const menu_1 = require("./menu");
44
44
  const project_files_1 = require("./project-files");
45
+ const analytics_1 = require("./utils/analytics");
45
46
  const spinner_1 = require("./utils/spinner");
46
47
  const terminal_1 = require("./utils/terminal");
47
48
  class CLI {
@@ -63,7 +64,17 @@ class CLI {
63
64
  this.costMode = costMode;
64
65
  this.setupSignalHandlers();
65
66
  this.initReadlineInterface();
66
- this.client = new client_1.Client(config_1.websocketUrl, this.onWebSocketError.bind(this), this.onWebSocketReconnect.bind(this), this.returnControlToUser.bind(this), this.reconnectWhenNextIdle.bind(this), this.costMode, this.git, this.rl, model);
67
+ this.client = new client_1.Client({
68
+ websocketUrl: config_1.websocketUrl,
69
+ onWebSocketError: this.onWebSocketError.bind(this),
70
+ onWebSocketReconnect: this.onWebSocketReconnect.bind(this),
71
+ freshPrompt: this.freshPrompt.bind(this),
72
+ reconnectWhenNextIdle: this.reconnectWhenNextIdle.bind(this),
73
+ costMode: this.costMode,
74
+ git: this.git,
75
+ rl: this.rl,
76
+ model,
77
+ });
67
78
  this.readyPromise = Promise.all([
68
79
  readyPromise.then((results) => {
69
80
  const [fileContext, ,] = results;
@@ -91,12 +102,14 @@ class CLI {
91
102
  process.on('SIGTERM', async () => {
92
103
  spinner_1.Spinner.get().restoreCursor();
93
104
  await (0, background_process_manager_1.killAllBackgroundProcesses)();
105
+ await (0, analytics_1.flushAnalytics)();
94
106
  process.exit(0);
95
107
  });
96
108
  process.on('SIGTSTP', async () => await this.handleExit());
97
109
  process.on('SIGHUP', async () => {
98
110
  spinner_1.Spinner.get().restoreCursor();
99
111
  await (0, background_process_manager_1.killAllBackgroundProcesses)();
112
+ await (0, analytics_1.flushAnalytics)();
100
113
  process.exit(0);
101
114
  });
102
115
  // Doesn't catch SIGKILL (e.g. `kill -9`)
@@ -144,6 +157,7 @@ class CLI {
144
157
  */
145
158
  freshPrompt(userInput = '') {
146
159
  spinner_1.Spinner.get().stop();
160
+ this.isReceivingResponse = false;
147
161
  if (this.shouldReconnectWhenIdle) {
148
162
  this.client.reconnect();
149
163
  this.shouldReconnectWhenIdle = false;
@@ -237,7 +251,7 @@ class CLI {
237
251
  const detectionResult = (0, api_key_1.detectApiKey)(userInput);
238
252
  if (detectionResult.status !== 'not_found') {
239
253
  // If something resembling an API key was detected (valid or just prefix), handle it
240
- await (0, api_key_1.handleApiKeyInput)(this.client, detectionResult, this.readyPromise, this.returnControlToUser.bind(this));
254
+ await (0, api_key_1.handleApiKeyInput)(this.client, detectionResult, this.readyPromise, this.freshPrompt.bind(this));
241
255
  return true; // Indicate command was handled
242
256
  }
243
257
  // Continue with other commands if no API key input was detected/handled
@@ -257,7 +271,7 @@ class CLI {
257
271
  if (userInput === 'uuddlrlrba' ||
258
272
  userInput === 'konami' ||
259
273
  userInput === 'codebuffy') {
260
- (0, easter_egg_1.showEasterEgg)(this.returnControlToUser.bind(this));
274
+ (0, easter_egg_1.showEasterEgg)(this.freshPrompt.bind(this));
261
275
  return true;
262
276
  }
263
277
  // Checkpoint commands
@@ -339,13 +353,6 @@ class CLI {
339
353
  this.shouldReconnectWhenIdle = true;
340
354
  }
341
355
  }
342
- returnControlToUser() {
343
- this.freshPrompt();
344
- this.isReceivingResponse = false;
345
- if (this.stopResponse) {
346
- this.stopResponse();
347
- }
348
- }
349
356
  onWebSocketError() {
350
357
  spinner_1.Spinner.get().stop();
351
358
  this.isReceivingResponse = false;
@@ -357,7 +364,7 @@ class CLI {
357
364
  }
358
365
  onWebSocketReconnect() {
359
366
  console.log((0, picocolors_1.green)('\nReconnected!'));
360
- this.returnControlToUser();
367
+ this.freshPrompt();
361
368
  }
362
369
  handleKeyPress(str, key) {
363
370
  if (key.name === 'escape') {
@@ -430,6 +437,7 @@ class CLI {
430
437
  logMessages.push(`Your free credits will reset in ${(0, string_1.pluralize)(daysUntilReset, 'day')}.`);
431
438
  }
432
439
  console.log(logMessages.join(' '));
440
+ await (0, analytics_1.flushAnalytics)();
433
441
  console.log((0, picocolors_1.green)('Codebuff out!'));
434
442
  process.exit(0);
435
443
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2BAAgC;AAChC,2BAA4B;AAC5B,6CAAiE;AACjE,mDAAoC;AAMpC,+CAA8C;AAC9C,2CAA0C;AAE1C,6EAGqC;AACrC,iDAA4C;AAC5C,yEAAoE;AACpE,oDAAwE;AACxE,0DASkC;AAClC,8CAAgD;AAChD,0DAAyD;AACzD,8EAAqF;AACrF,qCAAiC;AACjC,qCAAuC;AACvC,iCAAqD;AACrD,mDAAuD;AAEvD,iDAAkD;AAClD,6CAAyC;AACzC,+CAA+D;AAO/D,MAAa,GAAG;IACN,MAAM,CAAQ;IACd,YAAY,CAAc;IAC1B,GAAG,CAAY;IACf,QAAQ,CAAU;IAClB,EAAE,CAAqB;IACvB,mBAAmB,GAAY,KAAK,CAAA;IACpC,YAAY,GAAwB,IAAI,CAAA;IACxC,cAAc,GAAW,CAAC,CAAA;IAC1B,aAAa,GAAW,CAAC,CAAA;IACzB,qBAAqB,GAAW,CAAC,CAAA;IACjC,aAAa,GAAW,EAAE,CAAA;IAC1B,SAAS,GAAY,KAAK,CAAA;IAC1B,uBAAuB,GAAY,KAAK,CAAA;IAEhD,YACE,YAAuD,EACvD,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAc;QAEpC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QAExB,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAC1B,IAAI,CAAC,qBAAqB,EAAE,CAAA;QAE5B,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC;YACvB,YAAY,EAAZ,qBAAY;YACZ,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;YAClD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1D,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;YACxC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5D,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK;SACN,CAAC,CAAA;QAEF,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC;YAC9B,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC5B,MAAM,CAAC,WAAW,EAAE,AAAD,EAAG,GAAG,OAAO,CAAA;gBAChC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;gBACvC,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAA;YACvC,CAAC,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;SACtB,CAAC,CAAA;QAEF,IAAI,CAAC,SAAS,EAAE,CAAA;QAEhB,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;YACnD,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;YACtE,IAAI,CAAC,WAAW,EAAE,CAAA;QACpB,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YAC9C,OAAO,CAAC,KAAK,CACX,uBAAuB,GAAG,IAAI,GAAG,qBAAqB,MAAM,EAAE,CAC/D,CAAA;YACD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACxB,IAAI,CAAC,WAAW,EAAE,CAAA;QACpB,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,mBAAmB;QACzB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACtB,iBAAO,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YAC7B,IAAA,mEAAsC,GAAE,CAAA;QAC1C,CAAC,CAAC,CAAA;QACF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;YAC/B,iBAAO,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YAC7B,MAAM,IAAA,uDAA0B,GAAE,CAAA;YAClC,MAAM,IAAA,0BAAc,GAAE,CAAA;YACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC,CAAC,CAAA;QACF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QAC1D,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC9B,iBAAO,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;YAC7B,MAAM,IAAA,uDAA0B,GAAE,CAAA;YAClC,MAAM,IAAA,0BAAc,GAAE,CAAA;YACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC,CAAC,CAAA;QACF,yCAAyC;IAC3C,CAAC;IAEO,qBAAqB;QAC3B,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;YACjC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;SAC7C,CAAC,CAAA;QAEF,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;QACnD,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC,CAAA;QAC3D,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QAExD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;IAC3E,CAAC;IAEO,iBAAiB,CAAC,IAAY;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAA;QAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;YACpC,CAAC,CAAC,IAAA,YAAO,GAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/B,CAAC,CAAC,QAAQ,CAAA;QAEZ,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAA;QAEjE,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC;YACzC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAClC,CAAC,CAAC,IAAA,cAAO,EAAC,KAAK,CAAC,CAAA;QAClB,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAA,eAAQ,EAAC,KAAK,CAAC,CAAA;QAEtE,IAAI,OAAO,GAAG,IAAA,iBAAU,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,IAAA,8BAAc,GAAE,EAAE,GAAG,CAAC,CAAA;QAEtE,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAA,gBAAW,EAAC,OAAO,CAAC,CAAA;YAClC,MAAM,OAAO,GAAG,KAAK;iBAClB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;iBAC1C,GAAG,CACF,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,GAAG,CAAC,IAAA,qBAAK,EAAC,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAClE,CAAA;YACH,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAA,kBAAK,EAAC,GAAG,IAAA,YAAK,EAAC,IAAA,8BAAc,GAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAA;IAChE,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,YAAoB,EAAE;QACxC,iBAAO,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAA;QACpB,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAA;QAEhC,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAA;YACvB,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAA;QACtC,CAAC;QAED,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,EAAS,CAAA;QAE5B,mBAAmB;QACnB,KAAK,CAAC,IAAI,GAAG,EAAE,CAAA;QACf,IAAI,CAAC,SAAS,EAAE,CAAA;QAEhB,cAAc;QACd,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAA;QAEhB,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAM;QACR,CAAC;QAED,0BAA0B;QAC1B,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA,CAAC,2BAA2B;QACvE,KAAK,CAAC,IAAI,GAAG,SAAS,CAAA;QACtB,KAAK,CAAC,YAAY,EAAE,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,EAC9B,YAAY,EACZ,WAAW,GAIZ;QACC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACrB,IAAA,sBAAe,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACvD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAA;YACD,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;YACzB,OAAM;QACR,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAA;QAClB,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YAC9B,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QACpC,CAAC;QACD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;YACzC,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,SAAS;QACpB,IAAA,iBAAU,EAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACnC,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,IAAY;QACnC,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,aAAa,IAAI,IAAI,GAAG,IAAI,CAAA;QACnC,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;gBAC9D,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;YACzB,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YACzC,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,SAAiB;QAC7C,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QACrB,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,EAAE,CAAA;YAClB,OAAM;QACR,CAAC;QACD,SAAS,GAAG,SAAS,CAAC,IAAI,EAAE,CAAA;QAC5B,IAAI,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;YACzC,OAAM;QACR,CAAC;QACD,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAA;IACxC,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,SAAiB;QAC5C,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YACvE,IAAA,kBAAW,GAAE,CAAA;YACb,IAAI,CAAC,WAAW,EAAE,CAAA;YAClB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;YACpD,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;YACzB,sCAAiB,CAAC,gBAAgB,EAAE,CAAA;YACpC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACtD,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA;YAC1B,IAAI,CAAC,WAAW,EAAE,CAAA;YAClB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAA;YACtD,OAAO,IAAI,CAAA;QACb,CAAC;QAED,uCAAuC;QACvC,MAAM,eAAe,GAAG,IAAA,sBAAY,EAAC,SAAS,CAAC,CAAA;QAC/C,IAAI,eAAe,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC3C,oFAAoF;YACpF,MAAM,IAAA,2BAAiB,EACrB,IAAI,CAAC,MAAM,EACX,eAAe,EACf,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAC5B,CAAA;YACD,OAAO,IAAI,CAAA,CAAC,+BAA+B;QAC7C,CAAC;QAED,wEAAwE;QACxE,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YACrD,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;YAC5B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YACtE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YACvB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5D,IAAA,iBAAU,EAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;YACnC,IAAI,CAAC,WAAW,EAAE,CAAA;YAClB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IACE,SAAS,KAAK,YAAY;YAC1B,SAAS,KAAK,QAAQ;YACtB,SAAS,KAAK,WAAW,EACzB,CAAC;YACD,IAAA,0BAAa,EAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;YAC1C,OAAO,IAAI,CAAA;QACb,CAAC;QAED,sBAAsB;QACtB,IAAI,IAAA,gCAAmB,EAAC,SAAS,CAAC,EAAE,CAAC;YACnC,IAAI,IAAA,gCAAmB,EAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAA,2BAAc,EAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;gBAC/D,MAAM,SAAS,GAAG,MAAM,IAAA,uBAAU,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;gBACxD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;gBAC3B,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,IAAA,gCAAmB,EAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAA,2BAAc,EAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;gBAC/D,MAAM,SAAS,GAAG,MAAM,IAAA,uBAAU,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;gBACxD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;gBAC3B,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,IAAA,gCAAmB,EAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAA,2BAAc,EAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;gBAC/D,MAAM,IAAA,4BAAe,GAAE,CAAA;gBACvB,IAAI,CAAC,WAAW,EAAE,CAAA;gBAClB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,MAAM,YAAY,GAAG,IAAA,gCAAmB,EAAC,SAAS,EAAE,SAAS,CAAC,CAAA;YAC9D,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,EAAE,GAAG,QAAQ,CAAE,YAAiC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC9D,MAAM,IAAA,2BAAc,EAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;gBAC/D,MAAM,SAAS,GAAG,MAAM,IAAA,oCAAuB,EAC7C,EAAE,EACF,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,EAAE,CACR,CAAA;gBACD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;gBAC3B,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,IAAA,gCAAmB,EAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC5C,IAAA,mCAAsB,GAAE,CAAA;gBACxB,IAAI,CAAC,WAAW,EAAE,CAAA;gBAClB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,IAAA,gCAAmB,EAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAA,2BAAc,EAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;gBACrE,IAAA,kCAAqB,GAAE,CAAA;gBACvB,IAAI,CAAC,WAAW,EAAE,CAAA;gBAClB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAA,kCAAqB,GAAE,CAAA;YACvB,IAAI,CAAC,WAAW,EAAE,CAAA;YAClB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;YACzB,sEAAsE;YACtE,IAAA,sDAA+B,GAAE,CAAA;YACjC,yCAAyC;YACzC,OAAO,KAAK,CAAA;QACd,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,SAAiB;QAC9C,MAAM,IAAA,2BAAc,EAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;QAC/D,iBAAO,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAA;QAErB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,EAAE,CAAA;QAE5B,MAAM,UAAU,GAAY;YAC1B,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,SAAS;SACnB,CAAA;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC3B,IAAA,0BAAW,EAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAA;QAC/B,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,GACrC,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QAE5C,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,MAAM,eAAe,CAAA;QACrB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QAExB,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAA;QAEhC,iBAAO,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAA;QAEpB,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;IAEO,qBAAqB;QAC3B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAA;QACzB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAA;QACrC,CAAC;IACH,CAAC;IAEO,gBAAgB;QACtB,iBAAO,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAA;QACpB,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAA;QAChC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,EAAE,CAAA;YACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QAC1B,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,IAAA,mBAAM,EAAC,kCAAkC,CAAC,CAAC,CAAA;IAC3D,CAAC;IAEO,oBAAoB;QAC1B,OAAO,CAAC,GAAG,CAAC,IAAA,kBAAK,EAAC,gBAAgB,CAAC,CAAC,CAAA;QACpC,IAAI,CAAC,WAAW,EAAE,CAAA;IACpB,CAAC;IAEO,cAAc,CAAC,GAAW,EAAE,GAAQ;QAC1C,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC,YAAY,EAAE,CAAA;QACrB,CAAC;QAED,IACE,CAAC,IAAI,CAAC,SAAS;YACf,GAAG,KAAK,GAAG;YACX,cAAc,IAAI,IAAI,CAAC,EAAE;YACzB,MAAM,IAAI,IAAI,CAAC,EAAE;YACjB,QAAQ,IAAI,IAAI,CAAC,EAAE,EACnB,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,EAAS,CAAA;YAC5B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;YAC9B,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACrE,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC1B,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBACpE,KAAK,CAAC,YAAY,EAAE,CAAA;YACtB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAA;IACtB,CAAC;IAEO,KAAK,CAAC,YAAY;QACxB,IAAI,IAAA,2BAAgB,GAAE,EAAE,CAAC;YACvB,IAAA,qBAAU,EAAC,IAAA,8BAAc,GAAE,CAAC,CAAA;QAC9B,CAAC;QAED,IAAI,MAAM,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACtB,CAAC;YAAC,IAAI,CAAC,EAAU,CAAC,IAAI,GAAG,EAAE,CAAA;QAC7B,CAAC;QAED,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC3B,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACtB,IAAI,GAAG,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,EAAE,CAAC;gBACrC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YACzB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,cAAc,GAAG,GAAG,CAAA;gBACzB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;gBAC3C,IAAI,CAAC,WAAW,EAAE,CAAA;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IAEO,YAAY;QAClB,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC3B,CAAC;IACH,CAAC;IAEO,kBAAkB;QACxB,OAAO,CAAC,GAAG,CAAC,IAAA,mBAAM,EAAC,8BAA8B,CAAC,CAAC,CAAA;QACnD,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAA;QAChC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,EAAE,CAAA;QACrB,CAAC;QACD,iBAAO,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAA;IACtB,CAAC;IAEO,KAAK,CAAC,UAAU;QACtB,iBAAO,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,CAAA;QAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAEjB,MAAM,IAAA,uDAA0B,GAAE,CAAA;QAElC,MAAM,WAAW,GAAG,EAAE,CAAA;QACtB,MAAM,2BAA2B,GAAG,MAAM,CAAC,MAAM,CAC/C,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAC9B;aACE,IAAI,EAAE;aACN,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG,OAAO,EAAE,CAAC,CAAC,CAAA;QAE7C,WAAW,CAAC,IAAI,CACd,GAAG,IAAA,kBAAS,EAAC,2BAA2B,EAAE,QAAQ,CAAC,uBAAuB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,cAAc,EAAE,gBAAgB,CAClJ,CAAA;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;YAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAC9B,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE;gBACzD,IAAI,CAAC,GAAG,EAAE,CAAC;gBACX,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CACxB,CAAA;YACD,WAAW,CAAC,IAAI,CACd,mCAAmC,IAAA,kBAAS,EAAC,cAAc,EAAE,KAAK,CAAC,GAAG,CACvE,CAAA;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QAClC,MAAM,IAAA,0BAAc,GAAE,CAAA;QACtB,OAAO,CAAC,GAAG,CAAC,IAAA,kBAAK,EAAC,eAAe,CAAC,CAAC,CAAA;QAEnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAEO,aAAa;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC9B,MAAM,QAAQ,GAAG,WAAW,GAAG,IAAI,CAAC,aAAa,CAAA;QACjD,IAAI,QAAQ,GAAG,EAAE,EAAE,CAAC;YAClB,IAAI,CAAC,qBAAqB,EAAE,CAAA;YAC5B,IAAI,IAAI,CAAC,qBAAqB,IAAI,CAAC,EAAE,CAAC;gBACpC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAA;YAC9B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;YACxB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,WAAW,CAAA;IAClC,CAAC;CACF;AAvfD,kBAufC"}
package/dist/client.d.ts CHANGED
@@ -8,7 +8,7 @@ import { ProjectFileContext } from './common/util/file';
8
8
  import { GitCommand } from './types';
9
9
  export declare class Client {
10
10
  private webSocket;
11
- private returnControlToUser;
11
+ private freshPrompt;
12
12
  private reconnectWhenNextIdle;
13
13
  private fingerprintId;
14
14
  private costMode;
@@ -30,7 +30,17 @@ export declare class Client {
30
30
  storedApiKeyTypes: ApiKeyType[];
31
31
  lastToolResults: ToolResult[];
32
32
  model: string | undefined;
33
- constructor(websocketUrl: string, onWebSocketError: () => void, onWebSocketReconnect: () => void, returnControlToUser: () => void, reconnectWhenNextIdle: () => void, costMode: CostMode, git: GitCommand, rl: Interface, model: string | undefined);
33
+ constructor({ websocketUrl, onWebSocketError, onWebSocketReconnect, freshPrompt, reconnectWhenNextIdle, costMode, git, rl, model, }: {
34
+ websocketUrl: string;
35
+ onWebSocketError: () => void;
36
+ onWebSocketReconnect: () => void;
37
+ freshPrompt: () => void;
38
+ reconnectWhenNextIdle: () => void;
39
+ costMode: CostMode;
40
+ git: GitCommand;
41
+ rl: Interface;
42
+ model: string | undefined;
43
+ });
34
44
  exit(): Promise<void>;
35
45
  initAgentState(projectFileContext: ProjectFileContext): void;
36
46
  private initFingerprintId;
package/dist/client.js CHANGED
@@ -11,7 +11,9 @@ const actions_1 = require("./common/actions");
11
11
  const constants_1 = require("./common/api-keys/constants");
12
12
  const constants_2 = require("./common/constants");
13
13
  const constants_3 = require("./common/json-config/constants");
14
+ const analytics_events_1 = require("common/src/constants/analytics-events");
14
15
  const agent_state_1 = require("./common/types/agent-state");
16
+ const array_1 = require("./common/util/array");
15
17
  const string_1 = require("./common/util/string");
16
18
  const websocket_client_1 = require("./common/websockets/websocket-client");
17
19
  const picocolors_1 = require("picocolors");
@@ -27,12 +29,12 @@ const fingerprint_1 = require("./fingerprint");
27
29
  const menu_1 = require("./menu");
28
30
  const project_files_1 = require("./project-files");
29
31
  const tool_handlers_1 = require("./tool-handlers");
32
+ const analytics_1 = require("./utils/analytics");
33
+ const logger_1 = require("./utils/logger");
30
34
  const spinner_1 = require("./utils/spinner");
31
35
  const tool_renderers_1 = require("./utils/tool-renderers");
32
36
  const xml_stream_parser_1 = require("./utils/xml-stream-parser");
33
37
  const web_scraper_1 = require("./web-scraper");
34
- const web_scraper_2 = require("./web-scraper");
35
- const array_1 = require("./common/util/array");
36
38
  const LOW_BALANCE_THRESHOLD = 100;
37
39
  const WARNING_CONFIG = {
38
40
  [constants_2.UserState.LOGGED_OUT]: {
@@ -66,7 +68,7 @@ const WARNING_CONFIG = {
66
68
  };
67
69
  class Client {
68
70
  webSocket;
69
- returnControlToUser;
71
+ freshPrompt;
70
72
  reconnectWhenNextIdle;
71
73
  fingerprintId;
72
74
  costMode;
@@ -94,16 +96,17 @@ class Client {
94
96
  storedApiKeyTypes = [];
95
97
  lastToolResults = [];
96
98
  model;
97
- constructor(websocketUrl, onWebSocketError, onWebSocketReconnect, returnControlToUser, reconnectWhenNextIdle, costMode, git, rl, model) {
99
+ constructor({ websocketUrl, onWebSocketError, onWebSocketReconnect, freshPrompt, reconnectWhenNextIdle, costMode, git, rl, model, }) {
98
100
  this.costMode = costMode;
99
101
  this.model = model;
100
102
  this.git = git;
101
103
  this.webSocket = new websocket_client_1.APIRealtimeClient(websocketUrl, onWebSocketError, onWebSocketReconnect);
102
104
  this.user = this.getUser();
103
105
  this.initFingerprintId();
104
- this.returnControlToUser = returnControlToUser;
106
+ this.freshPrompt = freshPrompt;
105
107
  this.reconnectWhenNextIdle = reconnectWhenNextIdle;
106
108
  this.rl = rl;
109
+ logger_1.logger.info({ eventId: analytics_events_1.AnalyticsEvent.APP_LAUNCHED }, 'App launched');
107
110
  }
108
111
  async exit() {
109
112
  if (browser_runner_1.activeBrowserRunner) {
@@ -127,6 +130,16 @@ class Client {
127
130
  }
128
131
  const credentialsFile = (0, fs_1.readFileSync)(credentials_1.CREDENTIALS_PATH, 'utf8');
129
132
  const user = (0, credentials_1.userFromJson)(credentialsFile);
133
+ if (user) {
134
+ (0, analytics_1.identifyUser)(user.id, {
135
+ email: user.email,
136
+ name: user.name,
137
+ fingerprintId: this.fingerprintId,
138
+ });
139
+ logger_1.loggerContext.userId = user.id;
140
+ logger_1.loggerContext.userEmail = user.email;
141
+ logger_1.loggerContext.fingerprintId = user.fingerprintId;
142
+ }
130
143
  return user;
131
144
  }
132
145
  async connect() {
@@ -175,7 +188,7 @@ class Client {
175
188
  async handleAddApiKey(keyType, apiKey) {
176
189
  if (!this.user || !this.user.authToken) {
177
190
  console.log((0, picocolors_1.yellow)("Please log in first using 'login'."));
178
- this.returnControlToUser();
191
+ this.freshPrompt();
179
192
  return;
180
193
  }
181
194
  const readableKeyType = constants_1.READABLE_NAME[keyType];
@@ -211,7 +224,7 @@ class Client {
211
224
  console.error((0, picocolors_1.red)('Error adding API key: ' + error.message));
212
225
  }
213
226
  finally {
214
- this.returnControlToUser();
227
+ this.freshPrompt();
215
228
  }
216
229
  }
217
230
  async handleReferralCode(referralCode) {
@@ -243,7 +256,7 @@ class Client {
243
256
  catch (e) {
244
257
  const error = e;
245
258
  console.error((0, picocolors_1.red)('Error: ' + error.message));
246
- this.returnControlToUser();
259
+ this.freshPrompt();
247
260
  }
248
261
  }
249
262
  else {
@@ -293,7 +306,7 @@ class Client {
293
306
  async login(referralCode) {
294
307
  if (this.user) {
295
308
  console.log(`You are currently logged in as ${this.user.name}. Please enter "logout" first if you want to login as a different user.`);
296
- this.returnControlToUser();
309
+ this.freshPrompt();
297
310
  return;
298
311
  }
299
312
  try {
@@ -308,7 +321,7 @@ class Client {
308
321
  if (!response.ok) {
309
322
  const error = await response.text();
310
323
  console.error((0, picocolors_1.red)('Login code request failed: ' + error));
311
- this.returnControlToUser();
324
+ this.freshPrompt();
312
325
  return;
313
326
  }
314
327
  const { loginUrl, fingerprintHash, expiresAt } = await response.json();
@@ -331,7 +344,7 @@ class Client {
331
344
  if (Date.now() - initialTime > 5 * 60 * 1000 && shouldRequestLogin) {
332
345
  shouldRequestLogin = false;
333
346
  console.log('Unable to login. Please try again by typing "login" in the terminal.');
334
- this.returnControlToUser();
347
+ this.freshPrompt();
335
348
  clearInterval(pollInterval);
336
349
  return;
337
350
  }
@@ -340,7 +353,8 @@ class Client {
340
353
  return;
341
354
  }
342
355
  try {
343
- const statusResponse = await fetch(`${config_1.websiteUrl}/api/auth/cli/status?fingerprintId=${await this.fingerprintId}&fingerprintHash=${fingerprintHash}&expiresAt=${expiresAt}`);
356
+ const fingerprintId = await this.fingerprintId;
357
+ const statusResponse = await fetch(`${config_1.websiteUrl}/api/auth/cli/status?fingerprintId=${fingerprintId}&fingerprintHash=${fingerprintHash}&expiresAt=${expiresAt}`);
344
358
  if (!statusResponse.ok) {
345
359
  if (statusResponse.status !== 401) {
346
360
  // Ignore 401s during polling
@@ -352,6 +366,17 @@ class Client {
352
366
  if (user) {
353
367
  shouldRequestLogin = false;
354
368
  this.user = user;
369
+ (0, analytics_1.identifyUser)(user.id, {
370
+ email: user.email,
371
+ name: user.name,
372
+ fingerprintId: fingerprintId,
373
+ });
374
+ logger_1.loggerContext.userId = user.id;
375
+ logger_1.loggerContext.userEmail = user.email;
376
+ logger_1.loggerContext.fingerprintId = fingerprintId;
377
+ logger_1.logger.info({
378
+ eventId: analytics_events_1.AnalyticsEvent.LOGIN,
379
+ }, 'login');
355
380
  const credentialsPathDir = path_1.default.dirname(credentials_1.CREDENTIALS_PATH);
356
381
  (0, fs_1.mkdirSync)(credentialsPathDir, { recursive: true });
357
382
  (0, fs_1.writeFileSync)(credentials_1.CREDENTIALS_PATH, JSON.stringify({ default: user }));
@@ -366,7 +391,7 @@ class Client {
366
391
  this.oneTimeFlags = Object.fromEntries(constants_2.ONE_TIME_LABELS.map((tag) => [tag, false]));
367
392
  (0, menu_1.displayGreeting)(this.costMode, null);
368
393
  clearInterval(pollInterval);
369
- this.returnControlToUser();
394
+ this.freshPrompt();
370
395
  }
371
396
  }
372
397
  catch (error) {
@@ -376,7 +401,7 @@ class Client {
376
401
  }
377
402
  catch (error) {
378
403
  console.error('Error during login:', error);
379
- this.returnControlToUser();
404
+ this.freshPrompt();
380
405
  }
381
406
  }
382
407
  setUsage(usageData) {
@@ -398,7 +423,7 @@ class Client {
398
423
  else {
399
424
  console.error(['', (0, picocolors_1.red)(`Error: ${action.message}`)].join('\n'));
400
425
  }
401
- this.returnControlToUser();
426
+ this.freshPrompt();
402
427
  return;
403
428
  });
404
429
  this.webSocket.subscribe('read-files', (a) => {
@@ -470,7 +495,7 @@ class Client {
470
495
  const message = config.message(this.usageData.remainingBalance);
471
496
  console.warn(message);
472
497
  this.lastWarnedPct = config.threshold;
473
- this.returnControlToUser();
498
+ this.freshPrompt();
474
499
  }
475
500
  }
476
501
  async generateCommitMessage(stagedChanges) {
@@ -492,6 +517,7 @@ class Client {
492
517
  throw new Error('Agent state not initialized');
493
518
  }
494
519
  const userInputId = `mc-input-` + Math.random().toString(36).substring(2, 15);
520
+ logger_1.loggerContext.clientRequestId = userInputId;
495
521
  const { responsePromise, stopResponse } = this.subscribeToResponse((chunk) => {
496
522
  spinner_1.Spinner.get().stop();
497
523
  process.stdout.write(chunk);
@@ -499,7 +525,7 @@ class Client {
499
525
  spinner_1.Spinner.get().stop();
500
526
  process.stdout.write((0, picocolors_1.green)((0, picocolors_1.underline)('\nCodebuff') + ':') + ' ');
501
527
  }, prompt);
502
- const urls = (0, web_scraper_2.parseUrlsFromContent)(prompt);
528
+ const urls = (0, web_scraper_1.parseUrlsFromContent)(prompt);
503
529
  const scrapedBlocks = await (0, web_scraper_1.getScrapedContentBlocks)(urls);
504
530
  const scrapedContent = scrapedBlocks.length > 0 ? scrapedBlocks.join('\n\n') + '\n\n' : '';
505
531
  // Append process updates to existing tool results
@@ -541,13 +567,16 @@ class Client {
541
567
  responseStopped = true;
542
568
  unsubscribeChunks();
543
569
  unsubscribeComplete();
544
- const assistantMessage = {
545
- role: 'user',
546
- content: `Received output:\n${responseBuffer}[RESPONSE_CANCELED_BY_USER]`,
547
- };
570
+ const additionalMessages = [
571
+ { role: 'user', content: prompt },
572
+ {
573
+ role: 'user',
574
+ content: `<system><assistant_message>${responseBuffer}</assistant_message>[RESPONSE_CANCELED_BY_USER]</system>`,
575
+ },
576
+ ];
548
577
  // Update the agent state with just the assistant's response
549
578
  const { messageHistory } = this.agentState;
550
- const newMessages = [...messageHistory, assistantMessage];
579
+ const newMessages = [...messageHistory, ...additionalMessages];
551
580
  this.agentState = {
552
581
  ...this.agentState,
553
582
  messageHistory: newMessages,
@@ -674,7 +703,7 @@ class Client {
674
703
  }
675
704
  console.log((0, picocolors_1.yellow)(`✨ Recommended: run the 'init' command in order to create a configuration file!
676
705
 
677
- If you would like background processes (like this one) to run automatically whenever codebuff starts, creating a ${constants_3.codebuffConfigFile} config file can improve your workflow.
706
+ If you would like background processes (like this one) to run automatically whenever Codebuff starts, creating a ${constants_3.codebuffConfigFile} config file can improve your workflow.
678
707
  Go to https://www.codebuff.com/config for more information.
679
708
  `));
680
709
  }
@@ -701,7 +730,7 @@ Go to https://www.codebuff.com/config for more information.
701
730
  }
702
731
  console.log(`\nComplete! Type "diff" to review changes${checkpointAddendum}.`);
703
732
  this.hadFileChanges = false;
704
- this.returnControlToUser();
733
+ this.freshPrompt();
705
734
  }
706
735
  unsubscribeChunks();
707
736
  unsubscribeComplete();
@@ -766,7 +795,7 @@ Go to https://www.codebuff.com/config for more information.
766
795
  }
767
796
  }
768
797
  finally {
769
- this.returnControlToUser();
798
+ this.freshPrompt();
770
799
  }
771
800
  }
772
801
  async warmContextCache() {