dialectic 0.5.2 → 0.7.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"debate.d.ts","sourceRoot":"","sources":["../../src/commands/debate.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,EASL,YAAY,EAoDb,MAAM,gBAAgB,CAAC;AA6MxB,wBAAgB,eAAe,IAAI,YAAY,CA6B9C;AAqBD,wBAAsB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CA+B3E;AAqgBD,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,QAsI7C"}
1
+ {"version":3,"file":"debate.d.ts","sourceRoot":"","sources":["../../src/commands/debate.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAEoB,YAAY,EAetC,MAAM,gBAAgB,CAAC;AA6axB,wBAAgB,eAAe,IAAI,YAAY,CA6B9C;AAqBD,wBAAsB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CA+B3E;AA+pBD,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyGpD"}
@@ -9,9 +9,9 @@ exports.debateCommand = debateCommand;
9
9
  const fs_1 = __importDefault(require("fs"));
10
10
  const path_1 = __importDefault(require("path"));
11
11
  const readline_1 = __importDefault(require("readline"));
12
+ const dialectic_core_1 = require("dialectic-core");
12
13
  const index_1 = require("../index");
13
14
  const progress_ui_1 = require("../utils/progress-ui");
14
- const dialectic_core_1 = require("dialectic-core");
15
15
  const DEFAULT_CONFIG_PATH = path_1.default.resolve(process.cwd(), 'debate-config.json');
16
16
  const DEFAULT_ROUNDS = 3;
17
17
  const DEFAULT_CLARIFICATIONS_MAX_PER_AGENT = 5;
@@ -19,8 +19,15 @@ const FILE_ENCODING_UTF8 = 'utf-8';
19
19
  const JSON_FILE_EXTENSION = '.json';
20
20
  const MARKDOWN_FILE_EXTENSION = '.md';
21
21
  const JSON_INDENT_SPACES = 2;
22
- const MAX_CONTEXT_LENGTH = 5000;
22
+ const CLARIFICATION_ANSWER_NA = 'NA';
23
23
  const ERROR_BOTH_PROBLEM_SOURCES = 'Invalid arguments: provide exactly one of <problem> or --problemDescription';
24
+ function rethrowIfErrorCode(error, expectedCode) {
25
+ const errorWithCode = error;
26
+ if (errorWithCode && typeof errorWithCode === 'object' && 'code' in errorWithCode && typeof errorWithCode.code === 'number' && errorWithCode.code === expectedCode) {
27
+ throw error;
28
+ }
29
+ return errorWithCode;
30
+ }
24
31
  const ERROR_NO_PROBLEM_SOURCE = 'Invalid arguments: problem is required (provide <problem> or --problemDescription)';
25
32
  const ERROR_FILE_NOT_FOUND = 'Invalid arguments: problem description file not found';
26
33
  const ERROR_PATH_IS_DIRECTORY = 'Invalid arguments: problem description path is a directory';
@@ -51,7 +58,7 @@ async function collectAndAnswerClarifications(resolvedProblem, agents, maxPerAge
51
58
  (0, dialectic_core_1.writeStderr)(`\n[${group.agentName}] Clarifying Questions\n`);
52
59
  for (const item of group.items) {
53
60
  const ans = (await askUser(`Q (${item.id}): ${item.question}\n> `)).trim();
54
- item.answer = ans.length === 0 ? 'NA' : ans;
61
+ item.answer = ans.length === 0 ? CLARIFICATION_ANSWER_NA : ans;
55
62
  }
56
63
  }
57
64
  }
@@ -60,6 +67,57 @@ async function collectAndAnswerClarifications(resolvedProblem, agents, maxPerAge
60
67
  }
61
68
  return collected;
62
69
  }
70
+ async function runDebateWithClarifications(orchestrator, problem, context, debateId, clarificationContext) {
71
+ if ((0, dialectic_core_1.isStateMachineOrchestrator)(orchestrator)) {
72
+ const stateMachineOrchestrator = orchestrator;
73
+ let result = await stateMachineOrchestrator.runDebate(problem, context, undefined, debateId);
74
+ while (result.status === dialectic_core_1.EXECUTION_STATUS.SUSPENDED) {
75
+ if (result.suspendReason === dialectic_core_1.SUSPEND_REASON.WAITING_FOR_INPUT) {
76
+ const answers = await promptUserForAnswers(result.suspendPayload.questions);
77
+ result = await stateMachineOrchestrator.resume(result.suspendPayload.debateId, answers);
78
+ }
79
+ else {
80
+ throw new Error(`Unknown suspend reason: ${result.suspendReason}`);
81
+ }
82
+ }
83
+ if (!result.result) {
84
+ throw new Error('Debate completed without result');
85
+ }
86
+ return result.result;
87
+ }
88
+ else {
89
+ const debateOrchestrator = orchestrator;
90
+ let initialClarifications;
91
+ if (clarificationContext?.clarificationRequested) {
92
+ initialClarifications = await collectFinalClarifications(true, clarificationContext.resolvedProblem, clarificationContext.agents, clarificationContext.sysConfig);
93
+ }
94
+ return await debateOrchestrator.runDebate(problem, context, initialClarifications, debateId);
95
+ }
96
+ }
97
+ async function promptUserForAnswers(questions) {
98
+ const rl = readline_1.default.createInterface({ input: process.stdin, output: process.stderr });
99
+ try {
100
+ for (const group of questions) {
101
+ if (group.items.length === 0)
102
+ continue;
103
+ (0, dialectic_core_1.writeStderr)(`\n[${group.agentName}] Clarifying Questions\n`);
104
+ for (const item of group.items) {
105
+ if (item.answer && item.answer !== CLARIFICATION_ANSWER_NA && item.answer.trim() !== '') {
106
+ continue;
107
+ }
108
+ const ans = await askUser(rl, `Q (${item.id}): ${item.question}\n> `);
109
+ item.answer = ans.length === 0 ? CLARIFICATION_ANSWER_NA : ans;
110
+ }
111
+ }
112
+ }
113
+ finally {
114
+ rl.close();
115
+ }
116
+ return questions;
117
+ }
118
+ async function askUser(rl, promptText) {
119
+ return await new Promise((resolve) => rl.question(promptText, resolve));
120
+ }
63
121
  function createAgentLogger(progressUI, verbose) {
64
122
  return (message, onlyVerbose) => {
65
123
  if (onlyVerbose === false || (onlyVerbose === true && verbose)) {
@@ -105,21 +163,27 @@ function createOrchestratorHooks(progressUI, options) {
105
163
  },
106
164
  };
107
165
  }
108
- function createJudgeWithPromptResolution(sysConfig, systemSummaryConfig, promptSources, tracingContext) {
166
+ function resolveJudgeSystemPromptWithDefault(judgeName, configDir, systemPromptPath) {
109
167
  const judgeDefault = dialectic_core_1.JudgeAgent.defaultSystemPrompt();
110
- const jres = (0, dialectic_core_1.resolvePrompt)({
111
- label: sysConfig.judge.name,
112
- configDir: sysConfig.configDir || process.cwd(),
113
- ...((sysConfig.judge.systemPromptPath !== undefined) && { promptPath: sysConfig.judge.systemPromptPath }),
168
+ return (0, dialectic_core_1.resolvePrompt)({
169
+ label: judgeName,
170
+ configDir: configDir || process.cwd(),
171
+ ...(systemPromptPath !== undefined && { promptPath: systemPromptPath }),
114
172
  defaultText: judgeDefault
115
173
  });
116
- const judgeSummaryDefault = dialectic_core_1.JudgeAgent.defaultSummaryPrompt('', systemSummaryConfig.maxLength);
117
- const jsres = (0, dialectic_core_1.resolvePrompt)({
118
- label: `${sysConfig.judge.name} (summary)`,
119
- configDir: sysConfig.configDir || process.cwd(),
120
- ...((sysConfig.judge.summaryPromptPath !== undefined) && { promptPath: sysConfig.judge.summaryPromptPath }),
174
+ }
175
+ function resolveJudgeSummaryPromptWithDefault(judgeName, configDir, summaryPromptPath, maxLength) {
176
+ const judgeSummaryDefault = dialectic_core_1.JudgeAgent.defaultSummaryPrompt('', maxLength);
177
+ return (0, dialectic_core_1.resolvePrompt)({
178
+ label: `${judgeName} (summary)`,
179
+ configDir: configDir || process.cwd(),
180
+ ...(summaryPromptPath !== undefined && { promptPath: summaryPromptPath }),
121
181
  defaultText: judgeSummaryDefault
122
182
  });
183
+ }
184
+ function createJudgeWithPromptResolution(sysConfig, systemSummaryConfig, promptSources, tracingContext) {
185
+ const jres = resolveJudgeSystemPromptWithDefault(sysConfig.judge.name, sysConfig.configDir, sysConfig.judge.systemPromptPath);
186
+ const jsres = resolveJudgeSummaryPromptWithDefault(sysConfig.judge.name, sysConfig.configDir, sysConfig.judge.summaryPromptPath, systemSummaryConfig.maxLength);
123
187
  const judgeProvider = (0, dialectic_core_1.createProvider)(sysConfig.judge.provider);
124
188
  const wrappedJudgeProvider = (0, dialectic_core_1.createTracingProvider)(judgeProvider, tracingContext);
125
189
  const judge = new dialectic_core_1.JudgeAgent(sysConfig.judge, wrappedJudgeProvider, jres.text, jres.source === dialectic_core_1.PROMPT_SOURCES.FILE ? ({ source: dialectic_core_1.PROMPT_SOURCES.FILE, ...(jres.absPath !== undefined && { absPath: jres.absPath }) }) : ({ source: dialectic_core_1.PROMPT_SOURCES.BUILT_IN }), systemSummaryConfig, jsres.source === dialectic_core_1.PROMPT_SOURCES.FILE ? ({ source: dialectic_core_1.PROMPT_SOURCES.FILE, ...(jsres.absPath !== undefined && { absPath: jsres.absPath }) }) : ({ source: dialectic_core_1.PROMPT_SOURCES.BUILT_IN }));
@@ -132,6 +196,21 @@ function createJudgeWithPromptResolution(sysConfig, systemSummaryConfig, promptS
132
196
  };
133
197
  return judge;
134
198
  }
199
+ function createOrchestratorForDebate(params) {
200
+ const { agents, sysConfig, systemSummaryConfig, promptSources, tracingContext, progressUI, options, stateManager, debateCfg, contextDirectory, agentLogger, } = params;
201
+ const judge = createJudgeWithPromptResolution(sysConfig, systemSummaryConfig, promptSources, tracingContext);
202
+ const hooks = createOrchestratorHooks(progressUI, options);
203
+ return (0, dialectic_core_1.createOrchestrator)({
204
+ agents,
205
+ judge,
206
+ stateManager,
207
+ config: debateCfg,
208
+ hooks,
209
+ ...(tracingContext !== undefined && { tracingContext }),
210
+ contextDirectory,
211
+ logger: agentLogger,
212
+ });
213
+ }
135
214
  function builtInDefaults() {
136
215
  const defaultAgents = [
137
216
  { id: DEFAULT_ARCHITECT_ID, name: DEFAULT_ARCHITECT_NAME, role: dialectic_core_1.AGENT_ROLES.ARCHITECT,
@@ -184,7 +263,8 @@ async function loadConfig(configPath) {
184
263
  parsed.configDir = path_1.default.dirname(finalPath);
185
264
  return parsed;
186
265
  }
187
- function createAgentWithPromptResolution(cfg, provider, configDir, systemSummaryConfig, collect, logger) {
266
+ function createAgentWithPromptResolution(params) {
267
+ const { cfg, provider, configDir, systemSummaryConfig, collect, logger, contextDirectory } = params;
188
268
  const defaultText = dialectic_core_1.RoleBasedAgent.defaultSystemPrompt(cfg.role);
189
269
  const res = (0, dialectic_core_1.resolvePrompt)({
190
270
  label: cfg.name,
@@ -214,7 +294,7 @@ function createAgentWithPromptResolution(cfg, provider, configDir, systemSummary
214
294
  ...(cfg.clarificationPromptPath !== undefined && { promptPath: cfg.clarificationPromptPath }),
215
295
  defaultText: ''
216
296
  });
217
- const agentToolRegistry = (0, dialectic_core_1.buildToolRegistry)(cfg);
297
+ const agentToolRegistry = (0, dialectic_core_1.buildToolRegistry)(cfg, contextDirectory);
218
298
  const toolSchemas = agentToolRegistry.getAllSchemas();
219
299
  const toolNames = toolSchemas.length > 0
220
300
  ? toolSchemas.map(schema => schema.name).join(', ')
@@ -229,11 +309,12 @@ function createAgentWithPromptResolution(cfg, provider, configDir, systemSummary
229
309
  });
230
310
  return agent;
231
311
  }
232
- function buildAgents(agentConfigs, configDir, systemSummaryConfig, collect, logger, tracingContext) {
312
+ function buildAgents(params) {
313
+ const { agentConfigs, configDir, systemSummaryConfig, collect, logger, tracingContext, contextDirectory } = params;
233
314
  return agentConfigs.map((cfg) => {
234
315
  const provider = (0, dialectic_core_1.createProvider)(cfg.provider);
235
316
  const wrappedProvider = (0, dialectic_core_1.createTracingProvider)(provider, tracingContext);
236
- const agent = createAgentWithPromptResolution(cfg, wrappedProvider, configDir, systemSummaryConfig, collect, logger);
317
+ const agent = createAgentWithPromptResolution({ cfg, provider: wrappedProvider, configDir, systemSummaryConfig, collect, logger, contextDirectory });
237
318
  return (0, dialectic_core_1.createTracingAgent)(agent, tracingContext);
238
319
  });
239
320
  }
@@ -245,6 +326,10 @@ function debateConfigFromSysConfig(sysConfig, options) {
245
326
  if (!debateCfg.rounds || debateCfg.rounds < 1) {
246
327
  throw (0, dialectic_core_1.createValidationError)('Invalid arguments: --rounds must be >= 1', dialectic_core_1.EXIT_INVALID_ARGS);
247
328
  }
329
+ if (debateCfg.interactiveClarifications) {
330
+ debateCfg.orchestratorType = dialectic_core_1.ORCHESTRATOR_TYPES.STATE_MACHINE;
331
+ (0, dialectic_core_1.writeStderr)(`Interactive clarifications requested. Running debate with state machine orchestrator\n`);
332
+ }
248
333
  return debateCfg;
249
334
  }
250
335
  function agentConfigsFromSysConfig(sysConfig, options) {
@@ -286,48 +371,31 @@ async function readAndValidateFileContent(filePath) {
286
371
  return content;
287
372
  }
288
373
  catch (error) {
289
- if (error.code === dialectic_core_1.EXIT_INVALID_ARGS) {
290
- throw error;
291
- }
292
- throw (0, dialectic_core_1.createValidationError)(`${ERROR_FILE_READ_FAILED}: ${error.message}`, dialectic_core_1.EXIT_GENERAL_ERROR);
374
+ const errorWithCode = rethrowIfErrorCode(error, dialectic_core_1.EXIT_INVALID_ARGS);
375
+ throw (0, dialectic_core_1.createValidationError)(`${ERROR_FILE_READ_FAILED}: ${errorWithCode.message}`, dialectic_core_1.EXIT_GENERAL_ERROR);
293
376
  }
294
377
  }
295
- async function readContextFile(contextPath) {
296
- const filePath = path_1.default.resolve(process.cwd(), contextPath);
297
- if (!fs_1.default.existsSync(filePath)) {
298
- (0, index_1.warnUser)(`Context file not found: ${filePath}. Continuing without context.`);
299
- return undefined;
378
+ function validateContextDirectory(contextPath) {
379
+ const resolvedPath = path_1.default.resolve(process.cwd(), contextPath);
380
+ if (!fs_1.default.existsSync(resolvedPath)) {
381
+ throw (0, dialectic_core_1.createValidationError)(`Context directory not found: ${resolvedPath}`, dialectic_core_1.EXIT_INVALID_ARGS);
300
382
  }
301
- const stats = fs_1.default.statSync(filePath);
302
- if (stats.isDirectory()) {
303
- (0, index_1.warnUser)(`Context path is a directory: ${filePath}. Continuing without context.`);
304
- return undefined;
305
- }
306
- try {
307
- const content = await fs_1.default.promises.readFile(filePath, FILE_ENCODING_UTF8);
308
- const trimmedContent = content.trim();
309
- if (trimmedContent.length === 0) {
310
- (0, index_1.warnUser)(`Context file is empty: ${filePath}. Continuing without context.`);
311
- return undefined;
312
- }
313
- if (trimmedContent.length > MAX_CONTEXT_LENGTH) {
314
- (0, index_1.warnUser)(`Context file exceeds ${MAX_CONTEXT_LENGTH} characters (${trimmedContent.length}). Truncating to ${MAX_CONTEXT_LENGTH} characters.`);
315
- return trimmedContent.substring(0, MAX_CONTEXT_LENGTH);
316
- }
317
- return trimmedContent;
318
- }
319
- catch (error) {
320
- (0, index_1.warnUser)(`Failed to read context file: ${filePath}. Error: ${error.message}. Continuing without context.`);
321
- return undefined;
383
+ const stats = fs_1.default.statSync(resolvedPath);
384
+ if (!stats.isDirectory()) {
385
+ throw (0, dialectic_core_1.createValidationError)(`Context path is not a directory: ${resolvedPath}`, dialectic_core_1.EXIT_INVALID_ARGS);
322
386
  }
387
+ return resolvedPath;
388
+ }
389
+ function resolveContextDirectory(context) {
390
+ return context ? validateContextDirectory(context) : process.cwd();
323
391
  }
324
392
  async function resolveProblemDescription(problem, options) {
325
393
  const hasFile = !!options.problemDescription;
394
+ const hasProblem = !!(problem && problem.trim().length > 0);
395
+ validateExactlyOneProblemSource(hasProblem, hasFile);
326
396
  if (hasFile) {
327
397
  problem = undefined;
328
398
  }
329
- const hasProblem = !!(problem && problem.trim().length > 0);
330
- validateExactlyOneProblemSource(hasProblem, hasFile);
331
399
  if (hasProblem) {
332
400
  return problem.trim();
333
401
  }
@@ -386,7 +454,8 @@ async function outputResults(result, stateManager, options) {
386
454
  }
387
455
  }
388
456
  }
389
- async function generateReport(result, stateManager, agentConfigs, judgeConfig, problemDescription, options) {
457
+ async function generateReport(params) {
458
+ const { result, stateManager, agentConfigs, judgeConfig, problemDescription, options } = params;
390
459
  try {
391
460
  let reportPath = path_1.default.resolve(process.cwd(), options.report);
392
461
  if (!reportPath.toLowerCase().endsWith(MARKDOWN_FILE_EXTENSION)) {
@@ -397,12 +466,13 @@ async function generateReport(result, stateManager, agentConfigs, judgeConfig, p
397
466
  if (!debateState) {
398
467
  throw new Error(`Debate state not found for ID: ${result.debateId}`);
399
468
  }
400
- const reportContent = (0, dialectic_core_1.generateDebateReport)(debateState, agentConfigs, judgeConfig, problemDescription, { verbose: options.verbose });
469
+ const reportContent = (0, dialectic_core_1.generateDebateReport)(debateState, agentConfigs, judgeConfig, problemDescription, { verbose: options.verbose ?? false });
401
470
  const writtenPath = await (0, dialectic_core_1.writeFileWithDirectories)(reportPath, reportContent);
402
471
  (0, index_1.infoUser)(`Generated report: ${writtenPath}`);
403
472
  }
404
473
  catch (error) {
405
- (0, index_1.warnUser)(`Failed to generate report: ${error.message}`);
474
+ const errorWithCode = error;
475
+ (0, index_1.warnUser)(`Failed to generate report: ${errorWithCode.message}`);
406
476
  }
407
477
  }
408
478
  function extractProblemFileName(options) {
@@ -411,24 +481,26 @@ function extractProblemFileName(options) {
411
481
  }
412
482
  return undefined;
413
483
  }
414
- function extractContextFileName(options) {
484
+ function extractContextDirectoryName(options) {
415
485
  if (options.context) {
416
486
  return path_1.default.basename(options.context);
417
487
  }
418
488
  return undefined;
419
489
  }
420
- function initializeTracingContext(debateCfg, debateId, debateIdDate, options, resolvedConfigPath, clarificationRequested, agentConfigs, sysConfig) {
490
+ function initializeTracingContext(params) {
491
+ const { debateCfg, debateId, debateIdDate, options, clarificationRequested, agentConfigs, sysConfig } = params;
492
+ const resolvedConfigPath = options.config ? path_1.default.resolve(process.cwd(), options.config) : DEFAULT_CONFIG_PATH;
421
493
  if (debateCfg.trace !== dialectic_core_1.TRACE_OPTIONS.LANGFUSE) {
422
494
  return undefined;
423
495
  }
424
496
  try {
425
497
  (0, dialectic_core_1.validateLangfuseConfig)();
426
498
  const problemFileName = extractProblemFileName(options);
427
- const contextFileName = extractContextFileName(options);
499
+ const contextDirectoryName = extractContextDirectoryName(options);
428
500
  const traceMetadata = {
429
501
  debateId,
430
502
  ...(problemFileName !== undefined && { problemFileName }),
431
- ...(contextFileName !== undefined && { contextFileName }),
503
+ ...(contextDirectoryName !== undefined && { contextFileName: contextDirectoryName }),
432
504
  clarificationRequested,
433
505
  verboseRun: options.verbose === true,
434
506
  configFileName: path_1.default.basename(resolvedConfigPath),
@@ -445,10 +517,65 @@ function initializeTracingContext(debateCfg, debateId, debateIdDate, options, re
445
517
  return tracingContext;
446
518
  }
447
519
  catch (error) {
448
- (0, index_1.warnUser)(`Langfuse tracing initialization failed: ${error.message}. Continuing without tracing.`);
520
+ const errorWithCode = error;
521
+ (0, index_1.warnUser)(`Langfuse tracing initialization failed: ${errorWithCode.message}. Continuing without tracing.`);
449
522
  return undefined;
450
523
  }
451
524
  }
525
+ function outputVerboseDebateInfo(agentConfigs, promptSources, sysConfig, systemSummaryConfig, orchestrator) {
526
+ (0, dialectic_core_1.writeStderr)('Running debate (verbose)\n');
527
+ (0, dialectic_core_1.writeStderr)('Active Agents:\n');
528
+ agentConfigs.forEach(a => {
529
+ const used = promptSources.agents.find(p => p.agentId === a.id);
530
+ (0, dialectic_core_1.writeStderr)(` • ${a.name} (${a.model})\n`);
531
+ (0, dialectic_core_1.writeStderr)(` - System prompt: ${used?.source === 'file' ? (used.path || 'file') : 'built-in default'}\n`);
532
+ });
533
+ (0, dialectic_core_1.writeStderr)(`Judge: ${sysConfig.judge.name} (${sysConfig.judge.model})\n`);
534
+ (0, dialectic_core_1.writeStderr)(` - System prompt: ${promptSources.judge.source === 'file' ? (promptSources.judge.path || 'file') : 'built-in default'}\n`);
535
+ (0, dialectic_core_1.writeStderr)('\nSummarization:\n');
536
+ (0, dialectic_core_1.writeStderr)(` - Enabled: ${systemSummaryConfig.enabled}\n`);
537
+ (0, dialectic_core_1.writeStderr)(` - Threshold: ${systemSummaryConfig.threshold} characters\n`);
538
+ (0, dialectic_core_1.writeStderr)(` - Max summary length: ${systemSummaryConfig.maxLength} characters\n`);
539
+ (0, dialectic_core_1.writeStderr)(` - Method: ${systemSummaryConfig.method}\n`);
540
+ (0, dialectic_core_1.writeStderr)(` - Orchestrator: ${(0, dialectic_core_1.isStateMachineOrchestrator)(orchestrator) ? 'state-machine' : 'classic'}\n`);
541
+ (0, dialectic_core_1.writeStderr)('\n');
542
+ }
543
+ async function flushTracingContext(tracingContext) {
544
+ if (!tracingContext) {
545
+ return;
546
+ }
547
+ try {
548
+ await tracingContext.langfuse.flushAsync();
549
+ }
550
+ catch (error) {
551
+ const errorWithCode = error;
552
+ (0, dialectic_core_1.logWarning)(`Failed to flush Langfuse trace: ${errorWithCode.message}`);
553
+ }
554
+ }
555
+ async function generateReportIfRequested(options, result, stateManager, agentConfigs, judgeConfig, problemDescription) {
556
+ if (!options.report) {
557
+ return;
558
+ }
559
+ await generateReport({ result, stateManager, agentConfigs, judgeConfig, problemDescription, options });
560
+ }
561
+ function getSystemSummaryConfig(debateCfg) {
562
+ return debateCfg.summarization || {
563
+ enabled: dialectic_core_1.DEFAULT_SUMMARIZATION_ENABLED,
564
+ threshold: dialectic_core_1.DEFAULT_SUMMARIZATION_THRESHOLD,
565
+ maxLength: dialectic_core_1.DEFAULT_SUMMARIZATION_MAX_LENGTH,
566
+ method: dialectic_core_1.DEFAULT_SUMMARIZATION_METHOD,
567
+ };
568
+ }
569
+ function isClarificationRequested(options, sysConfig) {
570
+ return options.clarify === true || sysConfig.debate?.interactiveClarifications === true;
571
+ }
572
+ async function collectFinalClarifications(clarificationRequested, resolvedProblem, agents, sysConfig) {
573
+ if (!clarificationRequested) {
574
+ return undefined;
575
+ }
576
+ const maxPer = sysConfig.debate?.clarificationsMaxPerAgent ?? DEFAULT_CLARIFICATIONS_MAX_PER_AGENT;
577
+ return await collectAndAnswerClarifications(resolvedProblem, agents, maxPer);
578
+ }
452
579
  function debateCommand(program) {
453
580
  program
454
581
  .command('debate')
@@ -458,7 +585,7 @@ function debateCommand(program) {
458
585
  .option('-c, --config <path>', 'Path to configuration file (default ./debate-config.json)')
459
586
  .option('-o, --output <path>', 'Output file; .json writes full state, others write final solution text')
460
587
  .option('-p, --problemDescription <path>', 'Path to a text file containing the problem description')
461
- .option('--context <path>', 'Path to a context file providing additional context for the problem')
588
+ .option('--context <path>', 'Path to a context directory for file access tools (default: current working directory)')
462
589
  .option('-e, --env-file <path>', 'Path to environment file (default: .env)')
463
590
  .option('-v, --verbose', 'Verbose output')
464
591
  .option('--report <path>', 'Generate markdown report file')
@@ -467,77 +594,55 @@ function debateCommand(program) {
467
594
  try {
468
595
  (0, dialectic_core_1.loadEnvironmentFile)(options.envFile, options.verbose);
469
596
  const resolvedProblem = await resolveProblemDescription(problem, options);
470
- const contextString = options.context ? await readContextFile(options.context) : undefined;
471
- const resolvedConfigPath = options.config ? path_1.default.resolve(process.cwd(), options.config) : DEFAULT_CONFIG_PATH;
597
+ const contextDirectory = resolveContextDirectory(options.context);
472
598
  const sysConfig = await loadConfig(options.config);
473
599
  const debateCfg = debateConfigFromSysConfig(sysConfig, options);
474
600
  const agentConfigs = agentConfigsFromSysConfig(sysConfig, options);
475
- const promptSources = {
476
- agents: [],
477
- judge: { id: sysConfig.judge.id, source: dialectic_core_1.PROMPT_SOURCES.BUILT_IN },
478
- };
479
- const systemSummaryConfig = debateCfg.summarization || {
480
- enabled: dialectic_core_1.DEFAULT_SUMMARIZATION_ENABLED,
481
- threshold: dialectic_core_1.DEFAULT_SUMMARIZATION_THRESHOLD,
482
- maxLength: dialectic_core_1.DEFAULT_SUMMARIZATION_MAX_LENGTH,
483
- method: dialectic_core_1.DEFAULT_SUMMARIZATION_METHOD,
484
- };
601
+ const promptSources = { agents: [], judge: { id: sysConfig.judge.id, source: dialectic_core_1.PROMPT_SOURCES.BUILT_IN }, };
602
+ const systemSummaryConfig = getSystemSummaryConfig(debateCfg);
485
603
  const progressUI = new progress_ui_1.DebateProgressUI();
486
604
  progressUI.initialize(debateCfg.rounds);
487
605
  const agentLogger = createAgentLogger(progressUI, options.verbose || false);
488
606
  const stateManager = new dialectic_core_1.StateManager();
489
607
  const debateIdDate = new Date();
490
608
  const debateId = (0, dialectic_core_1.generateDebateId)(debateIdDate);
491
- const clarificationRequested = options.clarify === true || sysConfig.debate?.interactiveClarifications === true;
492
- const tracingContext = initializeTracingContext(debateCfg, debateId, debateIdDate, options, resolvedConfigPath, clarificationRequested, agentConfigs, sysConfig);
493
- const agents = buildAgents(agentConfigs, sysConfig.configDir || process.cwd(), systemSummaryConfig, promptSources, agentLogger, tracingContext);
494
- const judge = createJudgeWithPromptResolution(sysConfig, systemSummaryConfig, promptSources, tracingContext);
495
- let finalClarifications = undefined;
496
- if (clarificationRequested) {
497
- const maxPer = sysConfig.debate?.clarificationsMaxPerAgent ?? DEFAULT_CLARIFICATIONS_MAX_PER_AGENT;
498
- finalClarifications = await collectAndAnswerClarifications(resolvedProblem, agents, maxPer);
499
- }
500
- if (options.verbose) {
501
- (0, dialectic_core_1.writeStderr)('Running debate (verbose)\n');
502
- (0, dialectic_core_1.writeStderr)('Active Agents:\n');
503
- agentConfigs.forEach(a => {
504
- const used = promptSources.agents.find(p => p.agentId === a.id);
505
- (0, dialectic_core_1.writeStderr)(` • ${a.name} (${a.model})\n`);
506
- (0, dialectic_core_1.writeStderr)(` - System prompt: ${used?.source === 'file' ? (used.path || 'file') : 'built-in default'}\n`);
507
- });
508
- (0, dialectic_core_1.writeStderr)(`Judge: ${sysConfig.judge.name} (${sysConfig.judge.model})\n`);
509
- (0, dialectic_core_1.writeStderr)(` - System prompt: ${promptSources.judge.source === 'file' ? (promptSources.judge.path || 'file') : 'built-in default'}\n`);
510
- (0, dialectic_core_1.writeStderr)('\nSummarization:\n');
511
- (0, dialectic_core_1.writeStderr)(` - Enabled: ${systemSummaryConfig.enabled}\n`);
512
- (0, dialectic_core_1.writeStderr)(` - Threshold: ${systemSummaryConfig.threshold} characters\n`);
513
- (0, dialectic_core_1.writeStderr)(` - Max summary length: ${systemSummaryConfig.maxLength} characters\n`);
514
- (0, dialectic_core_1.writeStderr)(` - Method: ${systemSummaryConfig.method}\n`);
515
- (0, dialectic_core_1.writeStderr)('\n');
516
- }
517
- const hooks = createOrchestratorHooks(progressUI, options);
518
- const orchestrator = new dialectic_core_1.DebateOrchestrator(agents, judge, stateManager, debateCfg, hooks, tracingContext);
609
+ const clarificationRequested = isClarificationRequested(options, sysConfig);
610
+ const tracingContext = initializeTracingContext({
611
+ debateCfg, debateId, debateIdDate,
612
+ options, clarificationRequested,
613
+ agentConfigs, sysConfig
614
+ });
615
+ const agents = buildAgents({
616
+ agentConfigs,
617
+ configDir: sysConfig.configDir || process.cwd(),
618
+ systemSummaryConfig,
619
+ collect: promptSources,
620
+ logger: agentLogger,
621
+ tracingContext,
622
+ contextDirectory
623
+ });
624
+ const orchestrator = createOrchestratorForDebate({ agents, sysConfig, systemSummaryConfig,
625
+ promptSources, tracingContext, progressUI,
626
+ options, stateManager, debateCfg,
627
+ contextDirectory, agentLogger });
628
+ if (options.verbose)
629
+ outputVerboseDebateInfo(agentConfigs, promptSources, sysConfig, systemSummaryConfig, orchestrator);
630
+ const clarificationContext = { clarificationRequested, resolvedProblem, agents, sysConfig };
631
+ (0, index_1.infoUser)('Running debate');
519
632
  await progressUI.start();
520
- const result = await orchestrator.runDebate(resolvedProblem, contextString, finalClarifications, debateId);
633
+ const result = await runDebateWithClarifications(orchestrator, resolvedProblem, undefined, debateId, clarificationContext);
521
634
  await progressUI.complete();
522
- if (tracingContext) {
523
- try {
524
- await tracingContext.langfuse.flushAsync();
525
- }
526
- catch (error) {
527
- (0, dialectic_core_1.logWarning)(`Failed to flush Langfuse trace: ${error.message}`);
528
- }
529
- }
635
+ await flushTracingContext(tracingContext);
530
636
  await stateManager.setPromptSources(result.debateId, promptSources);
531
637
  (0, index_1.infoUser)(`Saved debate to ./debates/${result.debateId}.json`);
532
638
  await outputResults(result, stateManager, options);
533
- if (options.report) {
534
- await generateReport(result, stateManager, agentConfigs, sysConfig.judge, resolvedProblem, options);
535
- }
639
+ await generateReportIfRequested(options, result, stateManager, agentConfigs, sysConfig.judge, resolvedProblem);
536
640
  }
537
641
  catch (err) {
538
- const code = typeof err?.code === 'number' ? err.code : dialectic_core_1.EXIT_GENERAL_ERROR;
539
- (0, dialectic_core_1.writeStderr)((err?.message || 'Unknown error') + '\n');
540
- throw Object.assign(new Error(err?.message || 'Unknown error'), { code });
642
+ const errorWithCode = err;
643
+ const code = (errorWithCode && typeof errorWithCode.code === 'number') ? errorWithCode.code : dialectic_core_1.EXIT_GENERAL_ERROR;
644
+ (0, dialectic_core_1.writeStderr)((errorWithCode?.message || 'Unknown error') + '\n');
645
+ throw Object.assign(new Error(errorWithCode?.message || 'Unknown error'), { code });
541
646
  }
542
647
  });
543
648
  }
@@ -1 +1 @@
1
- {"version":3,"file":"debate.js","sourceRoot":"","sources":["../../src/commands/debate.ts"],"names":[],"mappings":";;;;;AAkRA,0CA6BC;AAqBD,gCA+BC;AAqgBD,sCAsIC;AA9+BD,4CAAoB;AACpB,gDAAwB;AACxB,wDAAgC;AAEhC,oCAA8C;AAC9C,sDAAwD;AAGxD,mDA6DwB;AAExB,MAAM,mBAAmB,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,oBAAoB,CAAC,CAAC;AAC9E,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,oCAAoC,GAAG,CAAC,CAAC;AAG/C,MAAM,kBAAkB,GAAG,OAAO,CAAC;AACnC,MAAM,mBAAmB,GAAG,OAAO,CAAC;AACpC,MAAM,uBAAuB,GAAG,KAAK,CAAC;AACtC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAGhC,MAAM,0BAA0B,GAAG,6EAA6E,CAAC;AACjH,MAAM,uBAAuB,GAAG,oFAAoF,CAAC;AACrH,MAAM,oBAAoB,GAAG,uDAAuD,CAAC;AACrF,MAAM,uBAAuB,GAAG,4DAA4D,CAAC;AAC7F,MAAM,gBAAgB,GAAG,sDAAsD,CAAC;AAChF,MAAM,sBAAsB,GAAG,yCAAyC,CAAC;AAGzE,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AAC/C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC;AAClD,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AACnD,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AACxD,MAAM,eAAe,GAAG,YAAY,CAAC;AACrC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC;AAChD,MAAM,gBAAgB,GAAG,YAAY,CAAC;AACtC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAG7C,MAAM,iBAAiB,GAAG,OAAO,CAAC;AAClC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AACtC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAGtC,MAAM,+BAA+B,GAAG,oGAAoG,CAAC;AAY7I,KAAK,UAAU,8BAA8B,CAAE,eAAuB,EAAE,MAAe,EAAE,WAAmB;IAG1G,MAAM,SAAS,GAA0B,MAAM,IAAA,sCAAqB,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAA,gBAAQ,EAAC,GAAG,CAAC,CAAE,CAAC;IAErI,MAAM,EAAE,GAAG,kBAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAGtF,KAAK,UAAU,OAAO,CAAC,UAAkB;QACvC,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,CAAC;QACH,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC9B,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACvC,IAAA,4BAAW,EAAC,MAAM,KAAK,CAAC,SAAS,0BAA0B,CAAC,CAAC;YAC7D,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC/B,MAAM,GAAG,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,QAAQ,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC3E,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAUD,SAAS,iBAAiB,CAAC,UAA4B,EAAE,OAAgB;IACvE,OAAO,CAAC,OAAe,EAAE,WAAqB,EAAQ,EAAE;QACtD,IAAI,WAAW,KAAK,KAAK,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC;YAC/D,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AASD,SAAS,uBAAuB,CAAC,UAA4B,EAAE,OAAY;IACzE,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;IACrD,OAAO;QACL,YAAY,EAAE,CAAC,WAAmB,EAAE,YAAoB,EAAE,EAAE;YAC1D,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACrC,CAAC;QACD,YAAY,EAAE,CAAC,YAAoB,EAAE,KAAuB,EAAE,iBAAyB,EAAE,EAAE;YACzF,UAAU,CAAC,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;QAClD,CAAC;QACD,YAAY,EAAE,CAAC,SAAiB,EAAE,QAAgB,EAAE,EAAE;YACpD,UAAU,CAAC,kBAAkB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACrD,CAAC;QACD,eAAe,EAAE,CAAC,SAAiB,EAAE,QAAgB,EAAE,EAAE;YACvD,UAAU,CAAC,qBAAqB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACxD,CAAC;QACD,eAAe,EAAE,CAAC,YAAoB,EAAE,KAAuB,EAAE,EAAE;YACjE,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QACD,oBAAoB,EAAE,CAAC,SAAiB,EAAE,EAAE;YAC1C,UAAU,CAAC,kBAAkB,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QACnE,CAAC;QACD,uBAAuB,EAAE,CAAC,SAAiB,EAAE,WAAmB,EAAE,UAAkB,EAAE,EAAE;YACtF,UAAU,CAAC,qBAAqB,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;YACpE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,UAAU,CAAC,GAAG,CAAC,MAAM,SAAS,iBAAiB,WAAW,MAAM,UAAU,QAAQ,EAAE,4BAAW,CAAC,OAAO,CAAC,CAAC;YAC3G,CAAC;QACH,CAAC;QAED,kBAAkB,EAAE,CAAC,SAAiB,EAAE,EAAE;YACxC,UAAU,CAAC,qBAAqB,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QACtE,CAAC;QACD,gBAAgB,EAAE,GAAG,EAAE;YACrB,UAAU,CAAC,cAAc,EAAE,CAAC;QAC9B,CAAC;QACD,mBAAmB,EAAE,GAAG,EAAE;YACxB,UAAU,CAAC,iBAAiB,EAAE,CAAC;QACjC,CAAC;KACF,CAAC;AACJ,CAAC;AAUD,SAAS,+BAA+B,CACtC,SAAuB,EACvB,mBAAwC,EACxC,aAA6C,EAC7C,cAA+B;IAG/B,MAAM,YAAY,GAAG,2BAAU,CAAC,mBAAmB,EAAE,CAAC;IACtD,MAAM,IAAI,GAAG,IAAA,8BAAa,EAAC;QACzB,KAAK,EAAE,SAAS,CAAC,KAAM,CAAC,IAAI;QAC5B,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE;QAC/C,GAAG,CAAC,CAAC,SAAS,CAAC,KAAM,CAAC,gBAAgB,KAAK,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,CAAC,KAAM,CAAC,gBAAgB,EAAE,CAAC;QAC3G,WAAW,EAAE,YAAY;KAC1B,CAAC,CAAC;IAGH,MAAM,mBAAmB,GAAG,2BAAU,CAAC,oBAAoB,CAAC,EAAE,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC/F,MAAM,KAAK,GAAG,IAAA,8BAAa,EAAC;QAC1B,KAAK,EAAE,GAAG,SAAS,CAAC,KAAM,CAAC,IAAI,YAAY;QAC3C,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE;QAC/C,GAAG,CAAC,CAAC,SAAS,CAAC,KAAM,CAAC,iBAAiB,KAAK,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,CAAC,KAAM,CAAC,iBAAiB,EAAE,CAAC;QAC7G,WAAW,EAAE,mBAAmB;KACjC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,IAAA,+BAAc,EAAC,SAAS,CAAC,KAAM,CAAC,QAAQ,CAAC,CAAC;IAChE,MAAM,oBAAoB,GAAG,IAAA,sCAAqB,EAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAClF,MAAM,KAAK,GAAG,IAAI,2BAAU,CAC1B,SAAS,CAAC,KAAM,EAChB,oBAAoB,EACpB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,MAAM,KAAK,+BAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,+BAAc,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,+BAAc,CAAC,QAAQ,EAAE,CAAC,EAC7K,mBAAmB,EACnB,KAAK,CAAC,MAAM,KAAK,+BAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,+BAAc,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,+BAAc,CAAC,QAAQ,EAAE,CAAC,CACjL,CAAC;IAGF,aAAa,CAAC,KAAK,GAAG;QACpB,EAAE,EAAE,SAAS,CAAC,KAAM,CAAC,EAAE;QACvB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QACzD,aAAa,EAAE,KAAK,CAAC,MAAM;QAC3B,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;KACnE,CAAC;IAEF,OAAO,KAAK,CAAC;AACf,CAAC;AAYD,SAAgB,eAAe;IAC7B,MAAM,aAAa,GAAkB;QACnC,EAAE,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,4BAAW,CAAC,SAAS;YACnF,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,8BAAa,CAAC,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE,OAAO,EAAE,IAAI,EAAE;QACnH,EAAE,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,4BAAW,CAAC,WAAW;YACzF,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,8BAAa,CAAC,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE,OAAO,EAAE,IAAI,EAAE;QACnH,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,4BAAW,CAAC,IAAI;YACpE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,8BAAa,CAAC,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE,OAAO,EAAE,IAAI,EAAE;KACpH,CAAC;IACF,MAAM,KAAK,GAAgB,EAAG,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,4BAAW,CAAC,UAAU;QAC5E,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,8BAAa,CAAC,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE,CAAC;IAGjI,MAAM,aAAa,GAAG;QACpB,OAAO,EAAE,8CAA6B;QACtC,SAAS,EAAE,gDAA+B;QAC1C,SAAS,EAAE,iDAAgC;QAC3C,MAAM,EAAE,6CAA4B;KACrC,CAAC;IAEF,MAAM,MAAM,GAAiB;QAC3B,MAAM,EAAE,cAAc;QACtB,oBAAoB,EAAE,EAAE,IAAI,EAAE,kCAAiB,CAAC,KAAK,EAAE;QACvD,eAAe,EAAE,kCAAiB,CAAC,KAAK;QACxC,kBAAkB,EAAE,IAAI;QACxB,eAAe,EAAE,MAAM;QACvB,aAAa;KACd,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAkB,CAAC;AAClE,CAAC;AAqBM,KAAK,UAAU,UAAU,CAAC,UAAmB;IAClD,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAC7F,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;IAEnC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,IAAA,gBAAQ,EAAC,uBAAuB,SAAS,4BAA4B,CAAC,CAAC;QACvE,QAAQ,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QACnC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAG/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChE,IAAA,gBAAQ,EAAC,iDAAiD,CAAC,CAAC;QAC5D,QAAQ,CAAC,SAAS,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC7C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,IAAA,gBAAQ,EAAC,4CAA4C,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,SAAS,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3C,OAAO,MAAsB,CAAC;AAChC,CAAC;AAeD,SAAS,+BAA+B,CACtC,GAAgB,EAAG,QAAqB,EAAG,SAAiB,EAC5D,mBAAwC,EAAE,OAAsC,EAAE,MAAoB;IAEtG,MAAM,WAAW,GAAG,+BAAc,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,GAAG,GAAG,IAAA,8BAAa,EAAC;QACxB,KAAK,EAAE,GAAG,CAAC,IAAI;QACf,SAAS;QACT,GAAG,CAAC,GAAG,CAAC,gBAAgB,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC/E,WAAW;KACZ,CAAC,CAAC;IAEH,MAAM,YAAY,GAAiB,GAAG,CAAC,MAAM,KAAK,+BAAc,CAAC,IAAI;QACnE,CAAC,CAAC,EAAE,MAAM,EAAE,+BAAc,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE;QAC7F,CAAC,CAAC,EAAE,MAAM,EAAE,+BAAc,CAAC,QAAQ,EAAE,CAAC;IAExC,MAAM,mBAAmB,GAAwB;QAC/C,GAAG,mBAAmB;QACtB,GAAG,GAAG,CAAC,aAAa;KACrB,CAAC;IAIF,MAAM,UAAU,GAAG,IAAA,8BAAa,EAAC;QAC/B,KAAK,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY;QAC9B,SAAS;QACT,GAAG,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACjF,WAAW,EAAE,+BAA+B;KAC7C,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAiB,UAAU,CAAC,MAAM,KAAK,+BAAc,CAAC,IAAI;QACjF,CAAC,CAAC,EAAE,MAAM,EAAE,+BAAc,CAAC,IAAI,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE;QAC3G,CAAC,CAAC,EAAE,MAAM,EAAE,+BAAc,CAAC,QAAQ,EAAE,CAAC;IAGxC,MAAM,gBAAgB,GAAG,IAAA,8BAAa,EAAC;QACrC,KAAK,EAAE,GAAG,GAAG,CAAC,IAAI,mBAAmB;QACrC,SAAS;QACT,GAAG,CAAC,GAAG,CAAC,uBAAuB,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,uBAAuB,EAAE,CAAC;QAC7F,WAAW,EAAE,EAAE;KAChB,CAAC,CAAC;IAEH,MAAM,iBAAiB,GAAG,IAAA,kCAAiB,EAAC,GAAG,CAAC,CAAC;IAGjD,MAAM,WAAW,GAAG,iBAAiB,CAAC,aAAa,EAAE,CAAC;IACtD,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC;QACtC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACnD,CAAC,CAAC,UAAU,CAAC;IACf,IAAA,gBAAQ,EAAC,IAAI,GAAG,CAAC,IAAI,sBAAsB,SAAS,EAAE,CAAC,CAAC;IAExD,MAAM,KAAK,GAAG,+BAAc,CAAC,MAAM,CAAG,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,IAAI,EAAE,YAAY,EACrC,mBAAmB,EAAE,mBAAmB,EACxC,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,CAAE,CAAC;IAEzF,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;QAClB,OAAO,EAAE,GAAG,CAAC,EAAE;QACf,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,GAAG,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;KACxD,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC;AAiBD,SAAS,WAAW,CAClB,YAA2B,EAAE,SAAiB,EAAE,mBAAwC,EAAE,OAAsC,EAAE,MAAoB,EAAE,cAA+B;IAEvL,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC9B,MAAM,QAAQ,GAAG,IAAA,+BAAc,EAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,eAAe,GAAG,IAAA,sCAAqB,EAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QACxE,MAAM,KAAK,GAAG,+BAA+B,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACrH,OAAO,IAAA,mCAAkB,EAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC;AAWD,SAAS,yBAAyB,CAAC,SAAuB,EAAE,OAAY;IACtE,MAAM,SAAS,GAAiB;QAC9B,GAAG,SAAS,CAAC,MAAO;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,IAAI,cAAc,CAAC;KACrF,CAAC;IAElB,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAA,sCAAqB,EAAC,0CAA0C,EAAE,kCAAiB,CAAC,CAAC;IAC7F,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAWD,SAAS,yBAAyB,CAAC,SAAuB,EAAE,OAAY;IACtE,IAAI,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;IAEvE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7E,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,IAAA,gBAAQ,EAAC,0DAA0D,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAG,eAAe,EAAE,CAAC;QACnC,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC;IACjC,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AASD,SAAS,+BAA+B,CAAC,UAAmB,EAAE,OAAgB;IAC5E,IAAI,UAAU,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,IAAA,sCAAqB,EAAC,0BAA0B,EAAE,kCAAiB,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAA,sCAAqB,EAAC,uBAAuB,EAAE,kCAAiB,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAOD,SAAS,sBAAsB,CAAC,QAAgB;IAC9C,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAA,sCAAqB,EAAC,GAAG,oBAAoB,KAAK,QAAQ,EAAE,EAAE,kCAAiB,CAAC,CAAC;IACzF,CAAC;IAED,MAAM,KAAK,GAAG,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;QACxB,MAAM,IAAA,sCAAqB,EAAC,GAAG,uBAAuB,KAAK,QAAQ,EAAE,EAAE,kCAAiB,CAAC,CAAC;IAC5F,CAAC;AACH,CAAC;AAQD,KAAK,UAAU,0BAA0B,CAAC,QAAgB;IACxD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAGzE,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAA,sCAAqB,EAAC,GAAG,gBAAgB,KAAK,QAAQ,EAAE,EAAE,kCAAiB,CAAC,CAAC;QACrF,CAAC;QAGD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,IAAI,KAAK,kCAAiB,EAAE,CAAC;YACrC,MAAM,KAAK,CAAC;QACd,CAAC;QAED,MAAM,IAAA,sCAAqB,EAAC,GAAG,sBAAsB,KAAK,KAAK,CAAC,OAAO,EAAE,EAAE,mCAAkB,CAAC,CAAC;IACjG,CAAC;AACH,CAAC;AAUD,KAAK,UAAU,eAAe,CAAC,WAAmB;IAChD,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;IAE1D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,IAAA,gBAAQ,EAAC,2BAA2B,QAAQ,+BAA+B,CAAC,CAAC;QAC7E,OAAO,SAAS,CAAC;IACnB,CAAC;IAGD,MAAM,KAAK,GAAG,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;QACxB,IAAA,gBAAQ,EAAC,gCAAgC,QAAQ,+BAA+B,CAAC,CAAC;QAClF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAEzE,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAEtC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,IAAA,gBAAQ,EAAC,0BAA0B,QAAQ,+BAA+B,CAAC,CAAC;YAC5E,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,cAAc,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;YAC/C,IAAA,gBAAQ,EAAC,wBAAwB,kBAAkB,gBAAgB,cAAc,CAAC,MAAM,oBAAoB,kBAAkB,cAAc,CAAC,CAAC;YAC9I,OAAO,cAAc,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAA,gBAAQ,EAAC,gCAAgC,QAAQ,YAAY,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;QAC3G,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAWD,KAAK,UAAU,yBAAyB,CAAC,OAA2B,EAAE,OAAY;IAGhF,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;IAC7C,IAAI,OAAO,EAAE,CAAC;QAIZ,OAAO,GAAG,SAAS,CAAC;IACtB,CAAC;IAED,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAG5D,+BAA+B,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAGrD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,OAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAGD,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACzE,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACjC,OAAO,MAAM,0BAA0B,CAAC,QAAQ,CAAC,CAAC;AACpD,CAAC;AAQD,SAAS,kBAAkB,CAAC,KAAkB;IAC5C,IAAA,4BAAW,EAAC,SAAS,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC;IAG5C,IAAI,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/D,IAAA,4BAAW,EAAC,gBAAgB,CAAC,CAAC;QAC9B,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC3C,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7E,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YAC/E,IAAA,4BAAW,EAAC,QAAQ,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,MAAM,CAAC,CAAC,QAAQ,CAAC,UAAU,UAAU,CAAC,CAAC;YACjG,IAAA,4BAAW,EAAC,kBAAkB,GAAG,YAAY,MAAM,YAAY,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;QACzF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,mCAAkB,CAAC,QAAQ,EAAE,mCAAkB,CAAC,QAAQ,EAAE,mCAAkB,CAAC,UAAU,CAAU,CAAC;IACjH,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAClB,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;QAC5E,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,IAAA,4BAAW,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAe,EAAE,EAAE;gBAChC,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC7F,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC/F,IAAA,4BAAW,EAAC,QAAQ,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC;gBACnD,IAAA,4BAAW,EAAC,kBAAkB,GAAG,YAAY,MAAM,KAAK,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAaD,KAAK,UAAU,aAAa,CAAC,MAAoB,EAAE,YAA0B,EAAE,OAAY;IACzF,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;IAErD,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC3D,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChE,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,CAAC;QACnH,CAAC;aAAM,CAAC;YACN,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;SAAM,CAAC;QAEN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;IAGD,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,MAAM,EAAE,CAAC;YACX,IAAA,4BAAW,EAAC,uBAAuB,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC1C,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACrI,IAAA,4BAAW,EAAC,oBAAoB,MAAM,CAAC,QAAQ,CAAC,WAAW,cAAc,MAAM,CAAC,QAAQ,CAAC,UAAU,cAAc,WAAW,IAAI,KAAK,IAAI,CAAC,CAAC;QAC7I,CAAC;IACH,CAAC;AACH,CAAC;AAgBD,KAAK,UAAU,cAAc,CAC3B,MAAoB,EACpB,YAA0B,EAC1B,YAA2B,EAC3B,WAAwB,EACxB,kBAA0B,EAC1B,OAAY;IAEZ,IAAI,CAAC;QAEH,IAAI,UAAU,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAG7D,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;YAChE,UAAU,IAAI,uBAAuB,CAAC;YACtC,IAAA,gBAAQ,EAAC,iCAAiC,uBAAuB,eAAe,uBAAuB,eAAe,cAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACrJ,CAAC;QAGD,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,kCAAkC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvE,CAAC;QAGD,MAAM,aAAa,GAAG,IAAA,qCAAoB,EACxC,WAAW,EACX,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAC7B,CAAC;QAGF,MAAM,WAAW,GAAG,MAAM,IAAA,yCAAwB,EAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAG9E,IAAA,gBAAQ,EAAC,qBAAqB,WAAW,EAAE,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAA,gBAAQ,EAAC,8BAA8B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAE1D,CAAC;AACH,CAAC;AAQD,SAAS,sBAAsB,CAAC,OAAY;IAC1C,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAC/B,OAAO,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAQD,SAAS,sBAAsB,CAAC,OAAY;IAC1C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAiBD,SAAS,wBAAwB,CAC/B,SAAuB,EACvB,QAAgB,EAChB,YAAkB,EAClB,OAAY,EACZ,kBAA0B,EAC1B,sBAA+B,EAC/B,YAA2B,EAC3B,SAAuB;IAEvB,IAAI,SAAS,CAAC,KAAK,KAAK,8BAAa,CAAC,QAAQ,EAAE,CAAC;QAC/C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,CAAC;QACH,IAAA,uCAAsB,GAAE,CAAC;QAGzB,MAAM,eAAe,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,eAAe,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,aAAa,GAAkB;YACnC,QAAQ;YACR,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;YACzD,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,EAAE,eAAe,EAAE,CAAC;YACzD,sBAAsB;YACtB,UAAU,EAAE,OAAO,CAAC,OAAO,KAAK,IAAI;YACpC,cAAc,EAAE,cAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YACjD,YAAY,EAAE,SAAS;YACvB,YAAY;YACZ,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;SACzD,CAAC;QAGF,MAAM,SAAS,GAAG,IAAA,6CAA4B,EAAC,YAAY,CAAC,CAAC;QAG7D,MAAM,IAAI,GAAG,IAAA,+BAAc,EAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC;QAElE,MAAM,cAAc,GAAG,IAAA,qCAAoB,EAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACvF,IAAI,cAAc,EAAE,CAAC;YACnB,IAAA,gBAAQ,EAAC,0BAA0B,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAA,gBAAQ,EAAC,2CAA2C,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;QAClG,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAGD,SAAgB,aAAa,CAAC,OAAgB;IAC5C,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,WAAW,EAAE,mFAAmF,CAAC;SAC1G,MAAM,CAAC,sBAAsB,EAAE,yDAAyD,CAAC;SACzF,MAAM,CAAC,uBAAuB,EAAE,6BAA6B,cAAc,GAAG,CAAC;SAC/E,MAAM,CAAC,qBAAqB,EAAE,2DAA2D,CAAC;SAC1F,MAAM,CAAC,qBAAqB,EAAE,wEAAwE,CAAC;SACvG,MAAM,CAAC,iCAAiC,EAAE,wDAAwD,CAAC;SACnG,MAAM,CAAC,kBAAkB,EAAE,qEAAqE,CAAC;SACjG,MAAM,CAAC,uBAAuB,EAAE,0CAA0C,CAAC;SAC3E,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;SACzC,MAAM,CAAC,iBAAiB,EAAE,+BAA+B,CAAC;SAC1D,MAAM,CAAC,WAAW,EAAE,gDAAgD,CAAC;SACrE,MAAM,CAAC,KAAK,EAAE,OAA2B,EAAE,OAAY,EAAE,EAAE;QAC1D,IAAI,CAAC;YAEH,IAAA,oCAAmB,EAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAEtD,MAAM,eAAe,GAAG,MAAM,yBAAyB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAG1E,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAG3F,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;YAE9G,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,SAAS,GAAG,yBAAyB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAChE,MAAM,YAAY,GAAG,yBAAyB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAEnE,MAAM,aAAa,GAAkE;gBACnF,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC,KAAM,CAAC,EAAE,EAAE,MAAM,EAAE,+BAAc,CAAC,QAAQ,EAAE;aACpE,CAAC;YAGF,MAAM,mBAAmB,GAAwB,SAAS,CAAC,aAAa,IAAI;gBAC1E,OAAO,EAAE,8CAA6B;gBACtC,SAAS,EAAE,gDAA+B;gBAC1C,SAAS,EAAE,iDAAgC;gBAC3C,MAAM,EAAE,6CAA4B;aACrC,CAAC;YAGF,MAAM,UAAU,GAAG,IAAI,8BAAgB,EAAE,CAAC;YAC1C,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAExC,MAAM,WAAW,GAAG,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;YAE5E,MAAM,YAAY,GAAG,IAAI,6BAAY,EAAE,CAAC;YAIxC,MAAM,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,IAAA,iCAAgB,EAAC,YAAY,CAAC,CAAC;YAGhD,MAAM,sBAAsB,GAAG,OAAO,CAAC,OAAO,KAAK,IAAI,IAAI,SAAS,CAAC,MAAM,EAAE,yBAAyB,KAAK,IAAI,CAAC;YAGhH,MAAM,cAAc,GAAG,wBAAwB,CAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EACzC,kBAAkB,EAAE,sBAAsB,EAAE,YAAY,EAAE,SAAS,CAAE,CAAC;YAExH,MAAM,MAAM,GAAG,WAAW,CAAC,YAAY,EAAE,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,mBAAmB,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;YAGhJ,MAAM,KAAK,GAAG,+BAA+B,CAAC,SAAS,EAAE,mBAAmB,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;YAG7G,IAAI,mBAAmB,GAAsC,SAAS,CAAC;YACvE,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,yBAAyB,IAAI,oCAAoC,CAAC;gBACnG,mBAAmB,GAAG,MAAM,8BAA8B,CAAC,eAAe,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC9F,CAAC;YAGD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAA,4BAAW,EAAC,4BAA4B,CAAC,CAAC;gBAC1C,IAAA,4BAAW,EAAC,kBAAkB,CAAC,CAAC;gBAChC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACvB,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;oBAChE,IAAA,4BAAW,EAAC,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;oBAC5C,IAAA,4BAAW,EAAC,wBAAwB,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,CAAC;gBAChH,CAAC,CAAC,CAAC;gBACH,IAAA,4BAAW,EAAC,UAAU,SAAS,CAAC,KAAM,CAAC,IAAI,KAAK,SAAS,CAAC,KAAM,CAAC,KAAK,KAAK,CAAC,CAAC;gBAC7E,IAAA,4BAAW,EAAC,sBAAsB,aAAa,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,CAAC;gBACzI,IAAA,4BAAW,EAAC,oBAAoB,CAAC,CAAC;gBAClC,IAAA,4BAAW,EAAC,gBAAgB,mBAAmB,CAAC,OAAO,IAAI,CAAC,CAAC;gBAC7D,IAAA,4BAAW,EAAC,kBAAkB,mBAAmB,CAAC,SAAS,eAAe,CAAC,CAAC;gBAC5E,IAAA,4BAAW,EAAC,2BAA2B,mBAAmB,CAAC,SAAS,eAAe,CAAC,CAAC;gBACrF,IAAA,4BAAW,EAAC,eAAe,mBAAmB,CAAC,MAAM,IAAI,CAAC,CAAC;gBAC3D,IAAA,4BAAW,EAAC,IAAI,CAAC,CAAC;YACpB,CAAC;YAGD,MAAM,KAAK,GAAG,uBAAuB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAE3D,MAAM,YAAY,GAAG,IAAI,mCAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;YAG3G,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;YACzB,MAAM,MAAM,GAAiB,MAAM,YAAY,CAAC,SAAS,CAAC,eAAe,EAAE,aAAa,EAAE,mBAAmB,EAAE,QAAQ,CAAC,CAAC;YACzH,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC;YAI5B,IAAI,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC;oBACH,MAAM,cAAc,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAC7C,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,IAAA,2BAAU,EAAC,mCAAmC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;YAGD,MAAM,YAAY,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YAGpE,IAAA,gBAAQ,EAAC,6BAA6B,MAAM,CAAC,QAAQ,OAAO,CAAC,CAAC;YAE9D,MAAM,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;YAGnD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,MAAM,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,KAAM,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;YACvG,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,OAAO,GAAG,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,mCAAkB,CAAC;YAC3E,IAAA,4BAAW,EAAC,CAAC,GAAG,EAAE,OAAO,IAAI,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC;YAEtD,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,EAAE,OAAO,IAAI,eAAe,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"debate.js","sourceRoot":"","sources":["../../src/commands/debate.ts"],"names":[],"mappings":"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"}