dialectic 0.5.2 → 0.6.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,EAUL,YAAY,EAsDb,MAAM,gBAAgB,CAAC;AAoRxB,wBAAgB,eAAe,IAAI,YAAY,CA6B9C;AAqBD,wBAAsB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CA+B3E;AAqpBD,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA+GpD"}
@@ -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,14 @@ 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;
23
22
  const ERROR_BOTH_PROBLEM_SOURCES = 'Invalid arguments: provide exactly one of <problem> or --problemDescription';
23
+ function rethrowIfErrorCode(error, expectedCode) {
24
+ const errorWithCode = error;
25
+ if (errorWithCode && typeof errorWithCode === 'object' && 'code' in errorWithCode && typeof errorWithCode.code === 'number' && errorWithCode.code === expectedCode) {
26
+ throw error;
27
+ }
28
+ return errorWithCode;
29
+ }
24
30
  const ERROR_NO_PROBLEM_SOURCE = 'Invalid arguments: problem is required (provide <problem> or --problemDescription)';
25
31
  const ERROR_FILE_NOT_FOUND = 'Invalid arguments: problem description file not found';
26
32
  const ERROR_PATH_IS_DIRECTORY = 'Invalid arguments: problem description path is a directory';
@@ -105,21 +111,27 @@ function createOrchestratorHooks(progressUI, options) {
105
111
  },
106
112
  };
107
113
  }
108
- function createJudgeWithPromptResolution(sysConfig, systemSummaryConfig, promptSources, tracingContext) {
114
+ function resolveJudgeSystemPromptWithDefault(judgeName, configDir, systemPromptPath) {
109
115
  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 }),
116
+ return (0, dialectic_core_1.resolvePrompt)({
117
+ label: judgeName,
118
+ configDir: configDir || process.cwd(),
119
+ ...(systemPromptPath !== undefined && { promptPath: systemPromptPath }),
114
120
  defaultText: judgeDefault
115
121
  });
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 }),
122
+ }
123
+ function resolveJudgeSummaryPromptWithDefault(judgeName, configDir, summaryPromptPath, maxLength) {
124
+ const judgeSummaryDefault = dialectic_core_1.JudgeAgent.defaultSummaryPrompt('', maxLength);
125
+ return (0, dialectic_core_1.resolvePrompt)({
126
+ label: `${judgeName} (summary)`,
127
+ configDir: configDir || process.cwd(),
128
+ ...(summaryPromptPath !== undefined && { promptPath: summaryPromptPath }),
121
129
  defaultText: judgeSummaryDefault
122
130
  });
131
+ }
132
+ function createJudgeWithPromptResolution(sysConfig, systemSummaryConfig, promptSources, tracingContext) {
133
+ const jres = resolveJudgeSystemPromptWithDefault(sysConfig.judge.name, sysConfig.configDir, sysConfig.judge.systemPromptPath);
134
+ const jsres = resolveJudgeSummaryPromptWithDefault(sysConfig.judge.name, sysConfig.configDir, sysConfig.judge.summaryPromptPath, systemSummaryConfig.maxLength);
123
135
  const judgeProvider = (0, dialectic_core_1.createProvider)(sysConfig.judge.provider);
124
136
  const wrappedJudgeProvider = (0, dialectic_core_1.createTracingProvider)(judgeProvider, tracingContext);
125
137
  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 }));
@@ -184,7 +196,8 @@ async function loadConfig(configPath) {
184
196
  parsed.configDir = path_1.default.dirname(finalPath);
185
197
  return parsed;
186
198
  }
187
- function createAgentWithPromptResolution(cfg, provider, configDir, systemSummaryConfig, collect, logger) {
199
+ function createAgentWithPromptResolution(params) {
200
+ const { cfg, provider, configDir, systemSummaryConfig, collect, logger, contextDirectory } = params;
188
201
  const defaultText = dialectic_core_1.RoleBasedAgent.defaultSystemPrompt(cfg.role);
189
202
  const res = (0, dialectic_core_1.resolvePrompt)({
190
203
  label: cfg.name,
@@ -214,7 +227,7 @@ function createAgentWithPromptResolution(cfg, provider, configDir, systemSummary
214
227
  ...(cfg.clarificationPromptPath !== undefined && { promptPath: cfg.clarificationPromptPath }),
215
228
  defaultText: ''
216
229
  });
217
- const agentToolRegistry = (0, dialectic_core_1.buildToolRegistry)(cfg);
230
+ const agentToolRegistry = (0, dialectic_core_1.buildToolRegistry)(cfg, contextDirectory);
218
231
  const toolSchemas = agentToolRegistry.getAllSchemas();
219
232
  const toolNames = toolSchemas.length > 0
220
233
  ? toolSchemas.map(schema => schema.name).join(', ')
@@ -229,11 +242,12 @@ function createAgentWithPromptResolution(cfg, provider, configDir, systemSummary
229
242
  });
230
243
  return agent;
231
244
  }
232
- function buildAgents(agentConfigs, configDir, systemSummaryConfig, collect, logger, tracingContext) {
245
+ function buildAgents(params) {
246
+ const { agentConfigs, configDir, systemSummaryConfig, collect, logger, tracingContext, contextDirectory } = params;
233
247
  return agentConfigs.map((cfg) => {
234
248
  const provider = (0, dialectic_core_1.createProvider)(cfg.provider);
235
249
  const wrappedProvider = (0, dialectic_core_1.createTracingProvider)(provider, tracingContext);
236
- const agent = createAgentWithPromptResolution(cfg, wrappedProvider, configDir, systemSummaryConfig, collect, logger);
250
+ const agent = createAgentWithPromptResolution({ cfg, provider: wrappedProvider, configDir, systemSummaryConfig, collect, logger, contextDirectory });
237
251
  return (0, dialectic_core_1.createTracingAgent)(agent, tracingContext);
238
252
  });
239
253
  }
@@ -286,48 +300,28 @@ async function readAndValidateFileContent(filePath) {
286
300
  return content;
287
301
  }
288
302
  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);
303
+ const errorWithCode = rethrowIfErrorCode(error, dialectic_core_1.EXIT_INVALID_ARGS);
304
+ throw (0, dialectic_core_1.createValidationError)(`${ERROR_FILE_READ_FAILED}: ${errorWithCode.message}`, dialectic_core_1.EXIT_GENERAL_ERROR);
293
305
  }
294
306
  }
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;
307
+ function validateContextDirectory(contextPath) {
308
+ const resolvedPath = path_1.default.resolve(process.cwd(), contextPath);
309
+ if (!fs_1.default.existsSync(resolvedPath)) {
310
+ throw (0, dialectic_core_1.createValidationError)(`Context directory not found: ${resolvedPath}`, dialectic_core_1.EXIT_INVALID_ARGS);
300
311
  }
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;
312
+ const stats = fs_1.default.statSync(resolvedPath);
313
+ if (!stats.isDirectory()) {
314
+ throw (0, dialectic_core_1.createValidationError)(`Context path is not a directory: ${resolvedPath}`, dialectic_core_1.EXIT_INVALID_ARGS);
322
315
  }
316
+ return resolvedPath;
323
317
  }
324
318
  async function resolveProblemDescription(problem, options) {
325
319
  const hasFile = !!options.problemDescription;
320
+ const hasProblem = !!(problem && problem.trim().length > 0);
321
+ validateExactlyOneProblemSource(hasProblem, hasFile);
326
322
  if (hasFile) {
327
323
  problem = undefined;
328
324
  }
329
- const hasProblem = !!(problem && problem.trim().length > 0);
330
- validateExactlyOneProblemSource(hasProblem, hasFile);
331
325
  if (hasProblem) {
332
326
  return problem.trim();
333
327
  }
@@ -386,7 +380,8 @@ async function outputResults(result, stateManager, options) {
386
380
  }
387
381
  }
388
382
  }
389
- async function generateReport(result, stateManager, agentConfigs, judgeConfig, problemDescription, options) {
383
+ async function generateReport(params) {
384
+ const { result, stateManager, agentConfigs, judgeConfig, problemDescription, options } = params;
390
385
  try {
391
386
  let reportPath = path_1.default.resolve(process.cwd(), options.report);
392
387
  if (!reportPath.toLowerCase().endsWith(MARKDOWN_FILE_EXTENSION)) {
@@ -397,12 +392,13 @@ async function generateReport(result, stateManager, agentConfigs, judgeConfig, p
397
392
  if (!debateState) {
398
393
  throw new Error(`Debate state not found for ID: ${result.debateId}`);
399
394
  }
400
- const reportContent = (0, dialectic_core_1.generateDebateReport)(debateState, agentConfigs, judgeConfig, problemDescription, { verbose: options.verbose });
395
+ const reportContent = (0, dialectic_core_1.generateDebateReport)(debateState, agentConfigs, judgeConfig, problemDescription, { verbose: options.verbose ?? false });
401
396
  const writtenPath = await (0, dialectic_core_1.writeFileWithDirectories)(reportPath, reportContent);
402
397
  (0, index_1.infoUser)(`Generated report: ${writtenPath}`);
403
398
  }
404
399
  catch (error) {
405
- (0, index_1.warnUser)(`Failed to generate report: ${error.message}`);
400
+ const errorWithCode = error;
401
+ (0, index_1.warnUser)(`Failed to generate report: ${errorWithCode.message}`);
406
402
  }
407
403
  }
408
404
  function extractProblemFileName(options) {
@@ -411,24 +407,26 @@ function extractProblemFileName(options) {
411
407
  }
412
408
  return undefined;
413
409
  }
414
- function extractContextFileName(options) {
410
+ function extractContextDirectoryName(options) {
415
411
  if (options.context) {
416
412
  return path_1.default.basename(options.context);
417
413
  }
418
414
  return undefined;
419
415
  }
420
- function initializeTracingContext(debateCfg, debateId, debateIdDate, options, resolvedConfigPath, clarificationRequested, agentConfigs, sysConfig) {
416
+ function initializeTracingContext(params) {
417
+ const { debateCfg, debateId, debateIdDate, options, clarificationRequested, agentConfigs, sysConfig } = params;
418
+ const resolvedConfigPath = options.config ? path_1.default.resolve(process.cwd(), options.config) : DEFAULT_CONFIG_PATH;
421
419
  if (debateCfg.trace !== dialectic_core_1.TRACE_OPTIONS.LANGFUSE) {
422
420
  return undefined;
423
421
  }
424
422
  try {
425
423
  (0, dialectic_core_1.validateLangfuseConfig)();
426
424
  const problemFileName = extractProblemFileName(options);
427
- const contextFileName = extractContextFileName(options);
425
+ const contextDirectoryName = extractContextDirectoryName(options);
428
426
  const traceMetadata = {
429
427
  debateId,
430
428
  ...(problemFileName !== undefined && { problemFileName }),
431
- ...(contextFileName !== undefined && { contextFileName }),
429
+ ...(contextDirectoryName !== undefined && { contextFileName: contextDirectoryName }),
432
430
  clarificationRequested,
433
431
  verboseRun: options.verbose === true,
434
432
  configFileName: path_1.default.basename(resolvedConfigPath),
@@ -445,9 +443,66 @@ function initializeTracingContext(debateCfg, debateId, debateIdDate, options, re
445
443
  return tracingContext;
446
444
  }
447
445
  catch (error) {
448
- (0, index_1.warnUser)(`Langfuse tracing initialization failed: ${error.message}. Continuing without tracing.`);
446
+ const errorWithCode = error;
447
+ (0, index_1.warnUser)(`Langfuse tracing initialization failed: ${errorWithCode.message}. Continuing without tracing.`);
448
+ return undefined;
449
+ }
450
+ }
451
+ function outputVerboseDebateInfo(verbose, agentConfigs, promptSources, sysConfig, systemSummaryConfig) {
452
+ if (!verbose) {
453
+ return;
454
+ }
455
+ (0, dialectic_core_1.writeStderr)('Running debate (verbose)\n');
456
+ (0, dialectic_core_1.writeStderr)('Active Agents:\n');
457
+ agentConfigs.forEach(a => {
458
+ const used = promptSources.agents.find(p => p.agentId === a.id);
459
+ (0, dialectic_core_1.writeStderr)(` • ${a.name} (${a.model})\n`);
460
+ (0, dialectic_core_1.writeStderr)(` - System prompt: ${used?.source === 'file' ? (used.path || 'file') : 'built-in default'}\n`);
461
+ });
462
+ (0, dialectic_core_1.writeStderr)(`Judge: ${sysConfig.judge.name} (${sysConfig.judge.model})\n`);
463
+ (0, dialectic_core_1.writeStderr)(` - System prompt: ${promptSources.judge.source === 'file' ? (promptSources.judge.path || 'file') : 'built-in default'}\n`);
464
+ (0, dialectic_core_1.writeStderr)('\nSummarization:\n');
465
+ (0, dialectic_core_1.writeStderr)(` - Enabled: ${systemSummaryConfig.enabled}\n`);
466
+ (0, dialectic_core_1.writeStderr)(` - Threshold: ${systemSummaryConfig.threshold} characters\n`);
467
+ (0, dialectic_core_1.writeStderr)(` - Max summary length: ${systemSummaryConfig.maxLength} characters\n`);
468
+ (0, dialectic_core_1.writeStderr)(` - Method: ${systemSummaryConfig.method}\n`);
469
+ (0, dialectic_core_1.writeStderr)('\n');
470
+ }
471
+ async function flushTracingContext(tracingContext) {
472
+ if (!tracingContext) {
473
+ return;
474
+ }
475
+ try {
476
+ await tracingContext.langfuse.flushAsync();
477
+ }
478
+ catch (error) {
479
+ const errorWithCode = error;
480
+ (0, dialectic_core_1.logWarning)(`Failed to flush Langfuse trace: ${errorWithCode.message}`);
481
+ }
482
+ }
483
+ async function generateReportIfRequested(options, result, stateManager, agentConfigs, judgeConfig, problemDescription) {
484
+ if (!options.report) {
485
+ return;
486
+ }
487
+ await generateReport({ result, stateManager, agentConfigs, judgeConfig, problemDescription, options });
488
+ }
489
+ function getSystemSummaryConfig(debateCfg) {
490
+ return debateCfg.summarization || {
491
+ enabled: dialectic_core_1.DEFAULT_SUMMARIZATION_ENABLED,
492
+ threshold: dialectic_core_1.DEFAULT_SUMMARIZATION_THRESHOLD,
493
+ maxLength: dialectic_core_1.DEFAULT_SUMMARIZATION_MAX_LENGTH,
494
+ method: dialectic_core_1.DEFAULT_SUMMARIZATION_METHOD,
495
+ };
496
+ }
497
+ function isClarificationRequested(options, sysConfig) {
498
+ return options.clarify === true || sysConfig.debate?.interactiveClarifications === true;
499
+ }
500
+ async function collectFinalClarifications(clarificationRequested, resolvedProblem, agents, sysConfig) {
501
+ if (!clarificationRequested) {
449
502
  return undefined;
450
503
  }
504
+ const maxPer = sysConfig.debate?.clarificationsMaxPerAgent ?? DEFAULT_CLARIFICATIONS_MAX_PER_AGENT;
505
+ return await collectAndAnswerClarifications(resolvedProblem, agents, maxPer);
451
506
  }
452
507
  function debateCommand(program) {
453
508
  program
@@ -458,7 +513,7 @@ function debateCommand(program) {
458
513
  .option('-c, --config <path>', 'Path to configuration file (default ./debate-config.json)')
459
514
  .option('-o, --output <path>', 'Output file; .json writes full state, others write final solution text')
460
515
  .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')
516
+ .option('--context <path>', 'Path to a context directory for file access tools (default: current working directory)')
462
517
  .option('-e, --env-file <path>', 'Path to environment file (default: .env)')
463
518
  .option('-v, --verbose', 'Verbose output')
464
519
  .option('--report <path>', 'Generate markdown report file')
@@ -467,8 +522,9 @@ function debateCommand(program) {
467
522
  try {
468
523
  (0, dialectic_core_1.loadEnvironmentFile)(options.envFile, options.verbose);
469
524
  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;
525
+ const contextDirectory = options.context
526
+ ? validateContextDirectory(options.context)
527
+ : process.cwd();
472
528
  const sysConfig = await loadConfig(options.config);
473
529
  const debateCfg = debateConfigFromSysConfig(sysConfig, options);
474
530
  const agentConfigs = agentConfigsFromSysConfig(sysConfig, options);
@@ -476,68 +532,47 @@ function debateCommand(program) {
476
532
  agents: [],
477
533
  judge: { id: sysConfig.judge.id, source: dialectic_core_1.PROMPT_SOURCES.BUILT_IN },
478
534
  };
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
- };
535
+ const systemSummaryConfig = getSystemSummaryConfig(debateCfg);
485
536
  const progressUI = new progress_ui_1.DebateProgressUI();
486
537
  progressUI.initialize(debateCfg.rounds);
487
538
  const agentLogger = createAgentLogger(progressUI, options.verbose || false);
488
539
  const stateManager = new dialectic_core_1.StateManager();
489
540
  const debateIdDate = new Date();
490
541
  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);
542
+ const clarificationRequested = isClarificationRequested(options, sysConfig);
543
+ const tracingContext = initializeTracingContext({
544
+ debateCfg, debateId, debateIdDate,
545
+ options, clarificationRequested,
546
+ agentConfigs, sysConfig
547
+ });
548
+ const agents = buildAgents({
549
+ agentConfigs,
550
+ configDir: sysConfig.configDir || process.cwd(),
551
+ systemSummaryConfig,
552
+ collect: promptSources,
553
+ logger: agentLogger,
554
+ tracingContext,
555
+ contextDirectory
556
+ });
494
557
  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
- }
558
+ const finalClarifications = await collectFinalClarifications(clarificationRequested, resolvedProblem, agents, sysConfig);
559
+ outputVerboseDebateInfo(options.verbose || false, agentConfigs, promptSources, sysConfig, systemSummaryConfig);
517
560
  const hooks = createOrchestratorHooks(progressUI, options);
518
- const orchestrator = new dialectic_core_1.DebateOrchestrator(agents, judge, stateManager, debateCfg, hooks, tracingContext);
561
+ const orchestrator = new dialectic_core_1.DebateOrchestrator(agents, judge, stateManager, debateCfg, hooks, tracingContext, contextDirectory);
519
562
  await progressUI.start();
520
- const result = await orchestrator.runDebate(resolvedProblem, contextString, finalClarifications, debateId);
563
+ const result = await orchestrator.runDebate(resolvedProblem, undefined, finalClarifications, debateId);
521
564
  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
- }
565
+ await flushTracingContext(tracingContext);
530
566
  await stateManager.setPromptSources(result.debateId, promptSources);
531
567
  (0, index_1.infoUser)(`Saved debate to ./debates/${result.debateId}.json`);
532
568
  await outputResults(result, stateManager, options);
533
- if (options.report) {
534
- await generateReport(result, stateManager, agentConfigs, sysConfig.judge, resolvedProblem, options);
535
- }
569
+ await generateReportIfRequested(options, result, stateManager, agentConfigs, sysConfig.judge, resolvedProblem);
536
570
  }
537
571
  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 });
572
+ const errorWithCode = err;
573
+ const code = (errorWithCode && typeof errorWithCode.code === 'number') ? errorWithCode.code : dialectic_core_1.EXIT_GENERAL_ERROR;
574
+ (0, dialectic_core_1.writeStderr)((errorWithCode?.message || 'Unknown error') + '\n');
575
+ throw Object.assign(new Error(errorWithCode?.message || 'Unknown error'), { code });
541
576
  }
542
577
  });
543
578
  }
@@ -1 +1 @@
1
- {"version":3,"file":"debate.js","sourceRoot":"","sources":["../../src/commands/debate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debate.js","sourceRoot":"","sources":["../../src/commands/debate.ts"],"names":[],"mappings":"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"}