dialectic 0.2.2 → 0.4.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.
Files changed (128) hide show
  1. package/README.md +8 -1
  2. package/dist/agents/role-based-agent.d.ts +7 -6
  3. package/dist/agents/role-based-agent.d.ts.map +1 -1
  4. package/dist/agents/role-based-agent.js +14 -14
  5. package/dist/agents/role-based-agent.js.map +1 -1
  6. package/dist/cli/commands/debate.d.ts.map +1 -1
  7. package/dist/cli/commands/debate.js +118 -38
  8. package/dist/cli/commands/debate.js.map +1 -1
  9. package/dist/cli/commands/eval.js +7 -7
  10. package/dist/cli/commands/eval.js.map +1 -1
  11. package/dist/cli/commands/report.d.ts.map +1 -1
  12. package/dist/cli/commands/report.js +2 -1
  13. package/dist/cli/commands/report.js.map +1 -1
  14. package/dist/cli/index.d.ts +0 -3
  15. package/dist/cli/index.d.ts.map +1 -1
  16. package/dist/cli/index.js +4 -19
  17. package/dist/cli/index.js.map +1 -1
  18. package/dist/core/agent.d.ts +29 -9
  19. package/dist/core/agent.d.ts.map +1 -1
  20. package/dist/core/agent.js +206 -13
  21. package/dist/core/agent.js.map +1 -1
  22. package/dist/core/judge.d.ts +7 -2
  23. package/dist/core/judge.d.ts.map +1 -1
  24. package/dist/core/judge.js +215 -6
  25. package/dist/core/judge.js.map +1 -1
  26. package/dist/core/orchestrator.d.ts +4 -2
  27. package/dist/core/orchestrator.d.ts.map +1 -1
  28. package/dist/core/orchestrator.js +21 -19
  29. package/dist/core/orchestrator.js.map +1 -1
  30. package/dist/core/state-manager.d.ts +1 -2
  31. package/dist/core/state-manager.d.ts.map +1 -1
  32. package/dist/core/state-manager.js +3 -14
  33. package/dist/core/state-manager.js.map +1 -1
  34. package/dist/eval/evaluator-agent.js +2 -2
  35. package/dist/eval/evaluator-agent.js.map +1 -1
  36. package/dist/providers/llm-provider.d.ts +24 -0
  37. package/dist/providers/llm-provider.d.ts.map +1 -1
  38. package/dist/providers/llm-provider.js +7 -0
  39. package/dist/providers/llm-provider.js.map +1 -1
  40. package/dist/providers/openai-provider.d.ts +3 -0
  41. package/dist/providers/openai-provider.d.ts.map +1 -1
  42. package/dist/providers/openai-provider.js +70 -9
  43. package/dist/providers/openai-provider.js.map +1 -1
  44. package/dist/providers/openrouter-provider.d.ts +3 -0
  45. package/dist/providers/openrouter-provider.d.ts.map +1 -1
  46. package/dist/providers/openrouter-provider.js +70 -9
  47. package/dist/providers/openrouter-provider.js.map +1 -1
  48. package/dist/tools/context-search-tool.d.ts +12 -0
  49. package/dist/tools/context-search-tool.d.ts.map +1 -0
  50. package/dist/tools/context-search-tool.js +70 -0
  51. package/dist/tools/context-search-tool.js.map +1 -0
  52. package/dist/tools/tool-implementation.d.ts +11 -0
  53. package/dist/tools/tool-implementation.d.ts.map +1 -0
  54. package/dist/tools/tool-implementation.js +34 -0
  55. package/dist/tools/tool-implementation.js.map +1 -0
  56. package/dist/tools/tool-registry.d.ts +13 -0
  57. package/dist/tools/tool-registry.d.ts.map +1 -0
  58. package/dist/tools/tool-registry.js +41 -0
  59. package/dist/tools/tool-registry.js.map +1 -0
  60. package/dist/types/agent.types.d.ts +11 -1
  61. package/dist/types/agent.types.d.ts.map +1 -1
  62. package/dist/types/agent.types.js +2 -1
  63. package/dist/types/agent.types.js.map +1 -1
  64. package/dist/types/debate.types.d.ts +5 -1
  65. package/dist/types/debate.types.d.ts.map +1 -1
  66. package/dist/types/debate.types.js.map +1 -1
  67. package/dist/types/tool.types.d.ts +35 -0
  68. package/dist/types/tool.types.d.ts.map +1 -0
  69. package/dist/types/tool.types.js +8 -0
  70. package/dist/types/tool.types.js.map +1 -0
  71. package/dist/types/tracing.types.d.ts +30 -0
  72. package/dist/types/tracing.types.d.ts.map +1 -0
  73. package/dist/types/tracing.types.js +10 -0
  74. package/dist/types/tracing.types.js.map +1 -0
  75. package/dist/utils/common.d.ts +1 -0
  76. package/dist/utils/common.d.ts.map +1 -1
  77. package/dist/utils/common.js +11 -2
  78. package/dist/utils/common.js.map +1 -1
  79. package/dist/utils/console.d.ts +15 -0
  80. package/dist/utils/console.d.ts.map +1 -0
  81. package/dist/utils/console.js +54 -0
  82. package/dist/utils/console.js.map +1 -0
  83. package/dist/utils/env-loader.js +2 -2
  84. package/dist/utils/env-loader.js.map +1 -1
  85. package/dist/utils/id.d.ts +1 -0
  86. package/dist/utils/id.d.ts.map +1 -1
  87. package/dist/utils/id.js +10 -0
  88. package/dist/utils/id.js.map +1 -1
  89. package/dist/utils/logger.d.ts.map +1 -1
  90. package/dist/utils/logger.js +6 -16
  91. package/dist/utils/logger.js.map +1 -1
  92. package/dist/utils/progress-ui.d.ts +6 -7
  93. package/dist/utils/progress-ui.d.ts.map +1 -1
  94. package/dist/utils/progress-ui.js +31 -83
  95. package/dist/utils/progress-ui.js.map +1 -1
  96. package/dist/utils/tool-registry-builder.d.ts +4 -0
  97. package/dist/utils/tool-registry-builder.d.ts.map +1 -0
  98. package/dist/utils/tool-registry-builder.js +47 -0
  99. package/dist/utils/tool-registry-builder.js.map +1 -0
  100. package/dist/utils/tracing-decorator-agent.d.ts +25 -0
  101. package/dist/utils/tracing-decorator-agent.d.ts.map +1 -0
  102. package/dist/utils/tracing-decorator-agent.js +185 -0
  103. package/dist/utils/tracing-decorator-agent.js.map +1 -0
  104. package/dist/utils/tracing-factory.d.ts +9 -0
  105. package/dist/utils/tracing-factory.d.ts.map +1 -0
  106. package/dist/utils/tracing-factory.js +68 -0
  107. package/dist/utils/tracing-factory.js.map +1 -0
  108. package/dist/utils/tracing-provider.d.ts +13 -0
  109. package/dist/utils/tracing-provider.d.ts.map +1 -0
  110. package/dist/utils/tracing-provider.js +74 -0
  111. package/dist/utils/tracing-provider.js.map +1 -0
  112. package/dist/utils/tracing-utils.d.ts +10 -0
  113. package/dist/utils/tracing-utils.d.ts.map +1 -0
  114. package/dist/utils/tracing-utils.js +55 -0
  115. package/dist/utils/tracing-utils.js.map +1 -0
  116. package/package.json +2 -1
  117. package/dist/agents/architect-agent.d.ts +0 -15
  118. package/dist/agents/architect-agent.d.ts.map +0 -1
  119. package/dist/agents/architect-agent.js +0 -41
  120. package/dist/agents/architect-agent.js.map +0 -1
  121. package/dist/agents/performance-agent.d.ts +0 -15
  122. package/dist/agents/performance-agent.d.ts.map +0 -1
  123. package/dist/agents/performance-agent.js +0 -41
  124. package/dist/agents/performance-agent.js.map +0 -1
  125. package/dist/agents/security-agent.d.ts +0 -15
  126. package/dist/agents/security-agent.d.ts.map +0 -1
  127. package/dist/agents/security-agent.js +0 -41
  128. package/dist/agents/security-agent.js.map +0 -1
@@ -2,32 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DebateProgressUI = void 0;
4
4
  const debate_types_1 = require("../types/debate.types");
5
- const index_1 = require("../cli/index");
6
- let chalk;
7
- try {
8
- chalk = require('chalk');
9
- }
10
- catch {
11
- chalk = new Proxy({}, {
12
- get: () => (text) => text
13
- });
14
- }
5
+ const console_1 = require("./console");
15
6
  const PHASE_LABELS = {
16
7
  [debate_types_1.CONTRIBUTION_TYPES.PROPOSAL]: 'Proposals',
17
8
  [debate_types_1.CONTRIBUTION_TYPES.CRITIQUE]: 'Critiques',
18
9
  [debate_types_1.CONTRIBUTION_TYPES.REFINEMENT]: 'Refinements',
19
10
  };
20
11
  const SYNTHESIS_LABEL = 'Synthesis';
21
- const ANSI_MOVE_UP = '\x1b[1A';
22
- const ANSI_CLEAR_LINE = '\x1b[2K';
23
- const SPINNER_ICON = '⠋';
24
- const SUMMARIZATION_SECTION_LABEL = 'Summarization';
25
- const COLOR_STRUCTURE = chalk.blue;
26
- const COLOR_SPINNER = chalk.cyan;
27
12
  class DebateProgressUI {
28
13
  state;
29
14
  totalRounds = 0;
30
- lastOutput = '';
31
15
  constructor() {
32
16
  this.state = {
33
17
  currentRound: 0,
@@ -40,18 +24,15 @@ class DebateProgressUI {
40
24
  this.totalRounds = totalRounds;
41
25
  }
42
26
  async start() {
43
- this.clearOutput();
44
27
  }
45
- log(message) {
46
- this.clearOutput();
47
- const text = message.endsWith('\n') ? message : `${message}\n`;
48
- (0, index_1.writeStderr)(text);
49
- this.updateDisplay();
28
+ log(message, type = console_1.MessageType.INFO) {
29
+ const formattedMessage = this.formatMessageWithRound(message, type);
30
+ this.appendMessage(formattedMessage, type);
50
31
  }
51
32
  startRound(roundNumber) {
52
33
  this.state.currentRound = roundNumber;
53
34
  this.state.currentPhase = '';
54
- this.updateDisplay();
35
+ this.appendMessage(`Round ${roundNumber}/${this.totalRounds} starting`, console_1.MessageType.INFO);
55
36
  }
56
37
  startPhase(phase, expectedAgentCount) {
57
38
  const phaseLabel = PHASE_LABELS[phase];
@@ -59,13 +40,15 @@ class DebateProgressUI {
59
40
  const phaseKey = `${this.state.currentRound}-${phase}`;
60
41
  this.state.phaseProgress.set(phaseKey, { current: 0, total: expectedAgentCount });
61
42
  this.state.agentActivity.clear();
62
- this.updateDisplay();
43
+ const message = this.formatMessageWithRound(`${phaseLabel} phase starting`, console_1.MessageType.INFO);
44
+ this.appendMessage(message, console_1.MessageType.INFO);
63
45
  }
64
46
  startAgentActivity(agentName, activity) {
65
47
  const activities = this.state.agentActivity.get(agentName) ?? [];
66
48
  activities.push(activity);
67
49
  this.state.agentActivity.set(agentName, activities);
68
- this.updateDisplay();
50
+ const message = this.formatMessageWithRound(`${agentName} is ${activity}...`, console_1.MessageType.INFO);
51
+ this.appendMessage(message, console_1.MessageType.INFO);
69
52
  }
70
53
  completeAgentActivity(agentName, activity) {
71
54
  const activities = this.state.agentActivity.get(agentName);
@@ -91,81 +74,46 @@ class DebateProgressUI {
91
74
  this.state.phaseProgress.set(phaseKey, progress);
92
75
  }
93
76
  }
94
- this.updateDisplay();
77
+ const message = this.formatMessageWithRound(`${agentName} completed ${activity}`, console_1.MessageType.SUCCESS);
78
+ this.appendMessage(message, console_1.MessageType.SUCCESS);
95
79
  }
96
- completePhase(_phase) {
80
+ completePhase(phase) {
81
+ const phaseLabel = PHASE_LABELS[phase];
97
82
  this.state.currentPhase = '';
98
83
  this.state.agentActivity.clear();
99
- this.updateDisplay();
84
+ const message = this.formatMessageWithRound(`${phaseLabel} phase completed`, console_1.MessageType.SUCCESS);
85
+ this.appendMessage(message, console_1.MessageType.SUCCESS);
100
86
  }
101
87
  startSynthesis() {
102
88
  this.state.currentPhase = SYNTHESIS_LABEL;
103
89
  this.state.agentActivity.clear();
104
- this.updateDisplay();
90
+ this.appendMessage('Synthesis starting', console_1.MessageType.INFO);
105
91
  }
106
92
  completeSynthesis() {
107
93
  this.state.currentPhase = '';
108
- this.updateDisplay();
94
+ this.appendMessage('Synthesis completed', console_1.MessageType.SUCCESS);
109
95
  }
110
96
  async complete() {
111
- this.clearOutput();
97
+ this.appendMessage('Debate completed', console_1.MessageType.SUCCESS);
112
98
  }
113
- handleError(_error) {
114
- this.clearOutput();
99
+ handleError(error) {
100
+ this.appendMessage(`Error: ${error.message}`, console_1.MessageType.WARNING);
115
101
  }
116
- updateDisplay() {
117
- let output = this.buildProgressText();
118
- if (output !== this.lastOutput) {
119
- this.clearOutput();
120
- (0, index_1.writeStderr)(output);
121
- this.lastOutput = output;
102
+ formatMessageWithRound(message, _type) {
103
+ if (this.state.currentRound > 0) {
104
+ return `[Round ${this.state.currentRound}] ${message}`;
122
105
  }
106
+ return message;
123
107
  }
124
- buildProgressText() {
125
- if (this.state.currentRound === 0) {
126
- return '';
127
- }
128
- const lines = [];
129
- lines.push(COLOR_STRUCTURE(`┌─ Round ${this.state.currentRound}/${this.totalRounds}`));
130
- if (this.state.currentPhase) {
131
- const currentPhase = this.state.currentPhase.toLowerCase();
132
- const phaseType = Object.keys(PHASE_LABELS).find(key => PHASE_LABELS[key].toLowerCase() === currentPhase);
133
- let phaseText = `${this.state.currentPhase}`;
134
- if (phaseType) {
135
- const phaseKey = `${this.state.currentRound}-${phaseType}`;
136
- const progress = this.state.phaseProgress.get(phaseKey);
137
- if (progress) {
138
- phaseText += ` (${progress.current}/${progress.total})`;
139
- }
140
- }
141
- lines.push(COLOR_STRUCTURE('│ ') + phaseText);
142
- if (this.state.agentActivity.size > 0) {
143
- this.state.agentActivity.forEach((activities, agentName) => {
144
- activities.forEach((activity) => {
145
- lines.push(COLOR_STRUCTURE('│ ') + COLOR_SPINNER(SPINNER_ICON) + ` ${agentName} ${activity}...`);
146
- });
147
- });
148
- }
108
+ appendMessage(message, type = console_1.MessageType.INFO) {
109
+ if (type === console_1.MessageType.INFO) {
110
+ (0, console_1.logInfo)(message);
149
111
  }
150
- else if (this.state.agentActivity.size > 0) {
151
- lines.push(COLOR_STRUCTURE('│ ') + SUMMARIZATION_SECTION_LABEL);
152
- this.state.agentActivity.forEach((activities, agentName) => {
153
- activities.forEach((activity) => {
154
- lines.push(COLOR_STRUCTURE('│ ') + COLOR_SPINNER(SPINNER_ICON) + ` ${agentName} ${activity}...`);
155
- });
156
- });
112
+ else if (type === console_1.MessageType.SUCCESS) {
113
+ (0, console_1.logSuccess)(message);
157
114
  }
158
- lines.push(COLOR_STRUCTURE('└─'));
159
- return lines.join('\n') + '\n';
160
- }
161
- clearOutput() {
162
- if (this.lastOutput) {
163
- const lineCount = (this.lastOutput.match(/\n/g) || []).length;
164
- for (let i = 0; i < lineCount; i++) {
165
- (0, index_1.writeStderr)(ANSI_MOVE_UP);
166
- (0, index_1.writeStderr)(ANSI_CLEAR_LINE);
167
- }
168
- this.lastOutput = '';
115
+ else if (type === console_1.MessageType.WARNING) {
116
+ (0, console_1.logWarning)(message);
169
117
  }
170
118
  }
171
119
  }
@@ -1 +1 @@
1
- {"version":3,"file":"progress-ui.js","sourceRoot":"","sources":["../../src/utils/progress-ui.ts"],"names":[],"mappings":";;;AAAA,wDAA6E;AAC7E,wCAA2C;AAG3C,IAAI,KAAU,CAAC;AACf,IAAI,CAAC;IACH,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC;AAAC,MAAM,CAAC;IAEP,KAAK,GAAG,IAAI,KAAK,CAAC,EAAE,EAAE;QACpB,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI;KAClC,CAAC,CAAC;AACL,CAAC;AAGD,MAAM,YAAY,GAAG;IACnB,CAAC,iCAAkB,CAAC,QAAQ,CAAC,EAAE,WAAW;IAC1C,CAAC,iCAAkB,CAAC,QAAQ,CAAC,EAAE,WAAW;IAC1C,CAAC,iCAAkB,CAAC,UAAU,CAAC,EAAE,aAAa;CACtC,CAAC;AAEX,MAAM,eAAe,GAAG,WAAW,CAAC;AAGpC,MAAM,YAAY,GAAG,SAAS,CAAC;AAC/B,MAAM,eAAe,GAAG,SAAS,CAAC;AAGlC,MAAM,YAAY,GAAG,GAAG,CAAC;AACzB,MAAM,2BAA2B,GAAG,eAAe,CAAC;AACpD,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;AACnC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC;AAuBjC,MAAa,gBAAgB;IACnB,KAAK,CAAgB;IACrB,WAAW,GAAW,CAAC,CAAC;IACxB,UAAU,GAAW,EAAE,CAAC;IAEhC;QACE,IAAI,CAAC,KAAK,GAAG;YACX,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,EAAE;YAChB,aAAa,EAAE,IAAI,GAAG,EAAoB;YAC1C,aAAa,EAAE,IAAI,GAAG,EAAE;SACzB,CAAC;IACJ,CAAC;IAOD,UAAU,CAAC,WAAmB;QAC5B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAMD,KAAK,CAAC,KAAK;QAET,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAMD,GAAG,CAAC,OAAe;QACjB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC;QAC/D,IAAA,mBAAW,EAAC,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAOD,UAAU,CAAC,WAAmB;QAC5B,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,WAAW,CAAC;QACtC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAQD,UAAU,CAAC,KAAuB,EAAE,kBAA0B;QAC5D,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,UAAU,CAAC;QACrC,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,KAAK,EAAE,CAAC;QACvD,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAQD,kBAAkB,CAAC,SAAiB,EAAE,QAAgB;QAEpD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACjE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QACpD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAQD,qBAAqB,CAAC,SAAiB,EAAE,QAAgB;QAEvD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;gBACb,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAC5B,CAAC;YACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAGD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;QAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAC9C,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,GAAuB,CAAC,CAAC,WAAW,EAAE,KAAK,YAAY,CAC5C,CAAC;QAElC,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,SAAS,EAAE,CAAC;YAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxD,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAOD,aAAa,CAAC,MAAwB;QACpC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAKD,cAAc;QACZ,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,eAAe,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAKD,iBAAiB;QACf,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAMD,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAOD,WAAW,CAAC,MAAa;QAEvB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAKO,aAAa;QACnB,IAAI,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAGtC,IAAI,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;YAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAA,mBAAW,EAAC,MAAM,CAAC,CAAC;YACpB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QAC3B,CAAC;IACH,CAAC;IAKO,iBAAiB;QACvB,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,KAAK,GAAa,EAAE,CAAC;QAG3B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAGvF,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;YAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAC9C,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,GAAuB,CAAC,CAAC,WAAW,EAAE,KAAK,YAAY,CAC5C,CAAC;YAElC,IAAI,SAAS,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YAE7C,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,SAAS,EAAE,CAAC;gBAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACxD,IAAI,QAAQ,EAAE,CAAC;oBACb,SAAS,IAAI,KAAK,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC;gBAC1D,CAAC;YACH,CAAC;YAED,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,CAAC;YAG/C,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAEtC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE;oBACzD,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;wBAC9B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,GAAG,IAAI,SAAS,IAAI,QAAQ,KAAK,CAAC,CAAC;oBACpG,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAE7C,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,2BAA2B,CAAC,CAAC;YACjE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE;gBACzD,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;oBAC9B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,GAAG,IAAI,SAAS,IAAI,QAAQ,KAAK,CAAC,CAAC;gBACpG,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;QAGlC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACjC,CAAC;IAKO,WAAW;QACjB,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAEpB,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YAK9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,IAAA,mBAAW,EAAC,YAAY,CAAC,CAAC;gBAC1B,IAAA,mBAAW,EAAC,eAAe,CAAC,CAAC;YAC/B,CAAC;YAED,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;CACF;AAlQD,4CAkQC"}
1
+ {"version":3,"file":"progress-ui.js","sourceRoot":"","sources":["../../src/utils/progress-ui.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { AgentConfig } from '../types/agent.types';
2
+ import { ToolRegistry } from '../tools/tool-registry';
3
+ export declare function buildToolRegistry(agentConfig: AgentConfig): ToolRegistry;
4
+ //# sourceMappingURL=tool-registry-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-registry-builder.d.ts","sourceRoot":"","sources":["../../src/utils/tool-registry-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAiDtD,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,WAAW,GAAG,YAAY,CAiCxE"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildToolRegistry = buildToolRegistry;
4
+ const tool_registry_1 = require("../tools/tool-registry");
5
+ const context_search_tool_1 = require("../tools/context-search-tool");
6
+ const console_1 = require("./console");
7
+ const AVAILABLE_TOOLS = {
8
+ context_search: {
9
+ schema: {
10
+ name: 'context_search',
11
+ description: 'Search for a term in the debate history. Returns relevant contributions containing the search term.',
12
+ parameters: {
13
+ type: 'object',
14
+ properties: {
15
+ term: {
16
+ type: 'string',
17
+ description: 'The search term to find in debate history',
18
+ },
19
+ },
20
+ required: ['term'],
21
+ },
22
+ },
23
+ createImplementation: () => new context_search_tool_1.ContextSearchTool(),
24
+ },
25
+ };
26
+ function buildToolRegistry(agentConfig) {
27
+ const registry = new tool_registry_1.ToolRegistry();
28
+ if (!agentConfig.tools || agentConfig.tools.length === 0) {
29
+ return registry;
30
+ }
31
+ for (const toolConfig of agentConfig.tools) {
32
+ const toolName = toolConfig.name;
33
+ if (!toolName || toolName.trim() === '') {
34
+ (0, console_1.logWarning)(`Invalid tool name (empty string) configured for agent "${agentConfig.id}". Skipping.`);
35
+ continue;
36
+ }
37
+ const toolDefinition = AVAILABLE_TOOLS[toolName];
38
+ if (!toolDefinition) {
39
+ (0, console_1.logWarning)(`Unknown tool "${toolName}" configured for agent "${agentConfig.id}". Skipping.`);
40
+ continue;
41
+ }
42
+ const toolImplementation = toolDefinition.createImplementation();
43
+ registry.register(toolImplementation);
44
+ }
45
+ return registry;
46
+ }
47
+ //# sourceMappingURL=tool-registry-builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-registry-builder.js","sourceRoot":"","sources":["../../src/utils/tool-registry-builder.ts"],"names":[],"mappings":";;AAkDA,8CAiCC;AAlFD,0DAAsD;AAGtD,sEAAiE;AACjE,uCAAuC;AAcvC,MAAM,eAAe,GAAmC;IACtD,cAAc,EAAE;QACd,MAAM,EAAE;YACN,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,qGAAqG;YAClH,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2CAA2C;qBACzD;iBACF;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;QACD,oBAAoB,EAAE,GAAG,EAAE,CAAC,IAAI,uCAAiB,EAAE;KACpD;CACF,CAAC;AAaF,SAAgB,iBAAiB,CAAC,WAAwB;IACxD,MAAM,QAAQ,GAAG,IAAI,4BAAY,EAAE,CAAC;IAGpC,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAGD,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;QAEjC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACxC,IAAA,oBAAU,EAAC,0DAA0D,WAAW,CAAC,EAAE,cAAc,CAAC,CAAC;YACnG,SAAS;QACX,CAAC;QAED,MAAM,cAAc,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEjD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,IAAA,oBAAU,EAAC,iBAAiB,QAAQ,2BAA2B,WAAW,CAAC,EAAE,cAAc,CAAC,CAAC;YAC7F,SAAS;QACX,CAAC;QAED,MAAM,kBAAkB,GAAG,cAAc,CAAC,oBAAoB,EAAE,CAAC;QAKjE,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { Agent, AgentLLMResponse } from '../core/agent';
2
+ import { Proposal, Critique } from '../types/agent.types';
3
+ import { DebateContext, ContextPreparationResult, ClarificationQuestionsResponse, DebateState } from '../types/debate.types';
4
+ import { TracingContext } from '../types/tracing.types';
5
+ import { ToolCall, ToolResult } from '../types/tool.types';
6
+ import { ToolImplementation } from '../tools/tool-implementation';
7
+ export declare class TracingDecoratorAgent extends Agent {
8
+ private readonly wrappedAgent;
9
+ private readonly tracingContext;
10
+ constructor(wrappedAgent: Agent, tracingContext: TracingContext);
11
+ propose(problem: string, context: DebateContext, state?: DebateState): Promise<Proposal>;
12
+ critique(proposal: Proposal, context: DebateContext, state?: DebateState): Promise<Critique>;
13
+ refine(originalProposal: Proposal, critiques: Critique[], context: DebateContext, state?: DebateState): Promise<Proposal>;
14
+ prepareContext(context: DebateContext, roundNumber: number): Promise<ContextPreparationResult>;
15
+ askClarifyingQuestions(problem: string, context: DebateContext): Promise<ClarificationQuestionsResponse>;
16
+ shouldSummarize(context: DebateContext): boolean;
17
+ protected proposeImpl(context: DebateContext, systemPrompt: string, userPrompt: string, state?: DebateState): Promise<Proposal>;
18
+ protected critiqueImpl(context: DebateContext, systemPrompt: string, userPrompt: string, state?: DebateState): Promise<Critique>;
19
+ protected refineImpl(context: DebateContext, systemPrompt: string, userPrompt: string, state?: DebateState): Promise<Proposal>;
20
+ protected callLLM(systemPrompt: string, userPrompt: string, context?: DebateContext, state?: DebateState): Promise<AgentLLMResponse>;
21
+ protected executeTool(tool: ToolImplementation, args: Record<string, unknown>, toolCall: ToolCall, context: DebateContext | undefined, state: DebateState | undefined, toolResultsForThisIteration: ToolResult[], allToolResults: ToolResult[]): void;
22
+ private executeWithSpan;
23
+ private extractRoundNumber;
24
+ }
25
+ //# sourceMappingURL=tracing-decorator-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing-decorator-agent.d.ts","sourceRoot":"","sources":["../../src/utils/tracing-decorator-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC7H,OAAO,EAAE,cAAc,EAAc,MAAM,wBAAwB,CAAC;AAEpE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAsB,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAclE,qBAAa,qBAAsB,SAAQ,KAAK;IAE5C,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,YAAY,EAAE,KAAK,EACnB,cAAc,EAAE,cAAc;IA+B3C,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiBxF,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiB5F,MAAM,CAAC,gBAAgB,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAkBzH,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAU9F,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,8BAA8B,CAAC;IAU9G,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO;cAchC,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;cASrH,YAAY,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;cAOtH,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;cAQpH,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAS1I,SAAS,CAAC,WAAW,CACnB,IAAI,EAAE,kBAAkB,EACxB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,aAAa,GAAG,SAAS,EAClC,KAAK,EAAE,WAAW,GAAG,SAAS,EAC9B,2BAA2B,EAAE,UAAU,EAAE,EACzC,cAAc,EAAE,UAAU,EAAE,GAC3B,IAAI;YA0EO,eAAe;IA0D7B,OAAO,CAAC,kBAAkB;CAO3B"}
@@ -0,0 +1,185 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TracingDecoratorAgent = void 0;
4
+ const agent_1 = require("../core/agent");
5
+ const tracing_types_1 = require("../types/tracing.types");
6
+ const console_1 = require("./console");
7
+ const tool_types_1 = require("../types/tool.types");
8
+ const tracing_provider_1 = require("./tracing-provider");
9
+ const tracing_utils_1 = require("./tracing-utils");
10
+ const prompts_1 = require("../agents/prompts");
11
+ class TracingDecoratorAgent extends agent_1.Agent {
12
+ wrappedAgent;
13
+ tracingContext;
14
+ constructor(wrappedAgent, tracingContext) {
15
+ const provider = wrappedAgent.provider;
16
+ const toolRegistry = wrappedAgent.toolRegistry;
17
+ const toolCallLimit = wrappedAgent.toolCallLimit;
18
+ const logger = wrappedAgent.logger;
19
+ super(wrappedAgent.config, provider, toolRegistry, toolCallLimit, logger);
20
+ this.wrappedAgent = wrappedAgent;
21
+ this.tracingContext = tracingContext;
22
+ if (provider instanceof tracing_provider_1.TracingLLMProvider) {
23
+ provider.setAgentId(this.config.id);
24
+ }
25
+ }
26
+ async propose(problem, context, state) {
27
+ const spanName = `agent-propose-${this.config.id}`;
28
+ return this.executeWithSpan(spanName, context, async () => {
29
+ const wrappedAgentAny = this.wrappedAgent;
30
+ const systemPrompt = wrappedAgentAny.resolvedSystemPrompt;
31
+ const rolePrompts = wrappedAgentAny.rolePrompts || (0, prompts_1.getPromptsForRole)(this.config.role);
32
+ const userPrompt = rolePrompts.proposePrompt(problem, context, this.config.id, context.includeFullHistory);
33
+ return await this.proposeImpl(context, systemPrompt, userPrompt, state);
34
+ });
35
+ }
36
+ async critique(proposal, context, state) {
37
+ const spanName = `agent-critique-${this.config.id}`;
38
+ return this.executeWithSpan(spanName, context, async () => {
39
+ const wrappedAgentAny = this.wrappedAgent;
40
+ const systemPrompt = wrappedAgentAny.resolvedSystemPrompt;
41
+ const rolePrompts = wrappedAgentAny.rolePrompts || (0, prompts_1.getPromptsForRole)(this.config.role);
42
+ const userPrompt = rolePrompts.critiquePrompt(proposal.content, context, this.config.id, context.includeFullHistory);
43
+ return await this.critiqueImpl(context, systemPrompt, userPrompt, state);
44
+ });
45
+ }
46
+ async refine(originalProposal, critiques, context, state) {
47
+ const spanName = `agent-refine-${this.config.id}`;
48
+ return this.executeWithSpan(spanName, context, async () => {
49
+ const wrappedAgentAny = this.wrappedAgent;
50
+ const systemPrompt = wrappedAgentAny.resolvedSystemPrompt;
51
+ const rolePrompts = wrappedAgentAny.rolePrompts || (0, prompts_1.getPromptsForRole)(this.config.role);
52
+ const critiquesText = critiques.map((c, i) => `Critique ${i + 1}:\n${c.content}`).join('\n\n');
53
+ const userPrompt = rolePrompts.refinePrompt(originalProposal.content, critiquesText, context, this.config.id, context.includeFullHistory);
54
+ return await this.refineImpl(context, systemPrompt, userPrompt, state);
55
+ });
56
+ }
57
+ async prepareContext(context, roundNumber) {
58
+ const spanName = `agent-prepareContext-${this.config.id}`;
59
+ return this.executeWithSpan(spanName, context, async () => {
60
+ return await this.wrappedAgent.prepareContext(context, roundNumber);
61
+ });
62
+ }
63
+ async askClarifyingQuestions(problem, context) {
64
+ const spanName = `agent-askClarifyingQuestions-${this.config.id}`;
65
+ return this.executeWithSpan(spanName, context, async () => {
66
+ return await this.wrappedAgent.askClarifyingQuestions(problem, context);
67
+ });
68
+ }
69
+ shouldSummarize(context) {
70
+ return this.wrappedAgent.shouldSummarize(context);
71
+ }
72
+ async proposeImpl(context, systemPrompt, userPrompt, state) {
73
+ return super.proposeImpl(context, systemPrompt, userPrompt, state);
74
+ }
75
+ async critiqueImpl(context, systemPrompt, userPrompt, state) {
76
+ return super.critiqueImpl(context, systemPrompt, userPrompt, state);
77
+ }
78
+ async refineImpl(context, systemPrompt, userPrompt, state) {
79
+ return super.refineImpl(context, systemPrompt, userPrompt, state);
80
+ }
81
+ async callLLM(systemPrompt, userPrompt, context, state) {
82
+ return super.callLLM(systemPrompt, userPrompt, context, state);
83
+ }
84
+ executeTool(tool, args, toolCall, context, state, toolResultsForThisIteration, allToolResults) {
85
+ const spanName = `tool-execution-${toolCall.name}`;
86
+ if (!this.tracingContext) {
87
+ super.executeTool(tool, args, toolCall, context, state, toolResultsForThisIteration, allToolResults);
88
+ return;
89
+ }
90
+ try {
91
+ const toolSpan = (0, tracing_utils_1.getSpanParent)(this.tracingContext, this.config.id).span({
92
+ name: spanName,
93
+ input: args,
94
+ metadata: {
95
+ toolName: toolCall.name,
96
+ agentId: this.config.id,
97
+ debateId: context?.tracingContext?.trace?.id || 'unknown',
98
+ },
99
+ });
100
+ const resultCountBefore = toolResultsForThisIteration.length;
101
+ super.executeTool(tool, args, toolCall, context, state, toolResultsForThisIteration, allToolResults);
102
+ const result = toolResultsForThisIteration[resultCountBefore];
103
+ if (result) {
104
+ try {
105
+ const resultContent = JSON.parse(result.content);
106
+ if (resultContent.status === tool_types_1.TOOL_RESULT_STATUS.ERROR) {
107
+ toolSpan.end({
108
+ level: tracing_types_1.SPAN_LEVEL.ERROR,
109
+ statusMessage: resultContent.error || 'Tool execution failed',
110
+ });
111
+ }
112
+ else {
113
+ toolSpan.end({
114
+ output: result.content,
115
+ });
116
+ }
117
+ }
118
+ catch (parseError) {
119
+ toolSpan.end({
120
+ output: result.content,
121
+ });
122
+ }
123
+ }
124
+ else {
125
+ toolSpan.end();
126
+ }
127
+ }
128
+ catch (tracingError) {
129
+ (0, console_1.logWarning)(`Langfuse tracing failed for tool execution: ${tracingError.message}`);
130
+ super.executeTool(tool, args, toolCall, context, state, toolResultsForThisIteration, allToolResults);
131
+ }
132
+ }
133
+ async executeWithSpan(spanName, context, fn) {
134
+ const provider = this.wrappedAgent.provider;
135
+ if (provider instanceof tracing_provider_1.TracingLLMProvider) {
136
+ provider.resetIterationCount();
137
+ }
138
+ try {
139
+ const span = this.tracingContext.trace.span({
140
+ name: spanName,
141
+ metadata: {
142
+ agentName: this.config.name,
143
+ agentRole: this.config.role,
144
+ agentId: this.config.id,
145
+ debateId: context.tracingContext?.trace?.id || 'unknown',
146
+ roundNumber: this.extractRoundNumber(context),
147
+ },
148
+ });
149
+ const previousSpan = this.tracingContext.currentSpans.get(this.config.id);
150
+ this.tracingContext.currentSpans.set(this.config.id, span);
151
+ try {
152
+ const result = await fn();
153
+ span.end();
154
+ return result;
155
+ }
156
+ catch (error) {
157
+ span.end({
158
+ level: tracing_types_1.SPAN_LEVEL.ERROR,
159
+ statusMessage: error.message,
160
+ });
161
+ throw error;
162
+ }
163
+ finally {
164
+ if (previousSpan !== undefined) {
165
+ this.tracingContext.currentSpans.set(this.config.id, previousSpan);
166
+ }
167
+ else {
168
+ this.tracingContext.currentSpans.delete(this.config.id);
169
+ }
170
+ }
171
+ }
172
+ catch (tracingError) {
173
+ (0, console_1.logWarning)(`Langfuse tracing failed for ${spanName}: ${tracingError.message}`);
174
+ return await fn();
175
+ }
176
+ }
177
+ extractRoundNumber(context) {
178
+ if (context.history && context.history.length > 0) {
179
+ return context.history[context.history.length - 1]?.roundNumber;
180
+ }
181
+ return undefined;
182
+ }
183
+ }
184
+ exports.TracingDecoratorAgent = TracingDecoratorAgent;
185
+ //# sourceMappingURL=tracing-decorator-agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing-decorator-agent.js","sourceRoot":"","sources":["../../src/utils/tracing-decorator-agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { TracingContext, TraceMetadata } from '../types/tracing.types';
2
+ import { DebateConfig } from '../types/debate.types';
3
+ import { Agent } from '../core/agent';
4
+ import { LLMProvider } from '../providers/llm-provider';
5
+ export declare function validateLangfuseConfig(): void;
6
+ export declare function createTracingContext(debateConfig: DebateConfig, traceMetadata: TraceMetadata, traceName: string, tags: string[]): TracingContext | undefined;
7
+ export declare function createTracingProvider(provider: LLMProvider, tracingContext?: TracingContext): LLMProvider;
8
+ export declare function createTracingAgent(agent: Agent, tracingContext?: TracingContext): Agent;
9
+ //# sourceMappingURL=tracing-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing-factory.d.ts","sourceRoot":"","sources":["../../src/utils/tracing-factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAiB,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAsBxD,wBAAgB,sBAAsB,IAAI,IAAI,CAW7C;AAWD,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EAAE,GACb,cAAc,GAAG,SAAS,CAuC5B;AASD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,WAAW,EACrB,cAAc,CAAC,EAAE,cAAc,GAC9B,WAAW,CAMb;AASD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,cAAc,CAAC,EAAE,cAAc,GAC9B,KAAK,CAMP"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateLangfuseConfig = validateLangfuseConfig;
4
+ exports.createTracingContext = createTracingContext;
5
+ exports.createTracingProvider = createTracingProvider;
6
+ exports.createTracingAgent = createTracingAgent;
7
+ const langfuse_1 = require("langfuse");
8
+ const tracing_types_1 = require("../types/tracing.types");
9
+ const tracing_provider_1 = require("./tracing-provider");
10
+ const tracing_decorator_agent_1 = require("./tracing-decorator-agent");
11
+ const console_1 = require("./console");
12
+ const DEFAULT_LANGFUSE_BASE_URL = 'https://cloud.langfuse.com';
13
+ const LANGFUSE_SECRET_KEY_ENV = 'LANGFUSE_SECRET_KEY';
14
+ const LANGFUSE_PUBLIC_KEY_ENV = 'LANGFUSE_PUBLIC_KEY';
15
+ const LANGFUSE_BASE_URL_ENV = 'LANGFUSE_BASE_URL';
16
+ function validateLangfuseConfig() {
17
+ const secretKey = process.env[LANGFUSE_SECRET_KEY_ENV];
18
+ const publicKey = process.env[LANGFUSE_PUBLIC_KEY_ENV];
19
+ if (!secretKey || secretKey.trim() === '') {
20
+ throw new Error(`${LANGFUSE_SECRET_KEY_ENV} is not set or is empty`);
21
+ }
22
+ if (!publicKey || publicKey.trim() === '') {
23
+ throw new Error(`${LANGFUSE_PUBLIC_KEY_ENV} is not set or is empty`);
24
+ }
25
+ }
26
+ function createTracingContext(debateConfig, traceMetadata, traceName, tags) {
27
+ if (debateConfig.trace !== tracing_types_1.TRACE_OPTIONS.LANGFUSE) {
28
+ return undefined;
29
+ }
30
+ try {
31
+ validateLangfuseConfig();
32
+ const secretKey = process.env[LANGFUSE_SECRET_KEY_ENV];
33
+ const publicKey = process.env[LANGFUSE_PUBLIC_KEY_ENV];
34
+ const baseUrl = process.env[LANGFUSE_BASE_URL_ENV] || DEFAULT_LANGFUSE_BASE_URL;
35
+ const langfuse = new langfuse_1.Langfuse({
36
+ secretKey,
37
+ publicKey,
38
+ baseUrl,
39
+ });
40
+ const trace = langfuse.trace({
41
+ name: traceName,
42
+ metadata: traceMetadata,
43
+ ...(tags.length > 0 && { tags }),
44
+ });
45
+ return {
46
+ langfuse,
47
+ trace,
48
+ currentSpans: new Map(),
49
+ };
50
+ }
51
+ catch (error) {
52
+ (0, console_1.logWarning)(`Failed to create Langfuse tracing context: ${error.message}`);
53
+ return undefined;
54
+ }
55
+ }
56
+ function createTracingProvider(provider, tracingContext) {
57
+ if (!tracingContext) {
58
+ return provider;
59
+ }
60
+ return new tracing_provider_1.TracingLLMProvider(provider, tracingContext);
61
+ }
62
+ function createTracingAgent(agent, tracingContext) {
63
+ if (!tracingContext) {
64
+ return agent;
65
+ }
66
+ return new tracing_decorator_agent_1.TracingDecoratorAgent(agent, tracingContext);
67
+ }
68
+ //# sourceMappingURL=tracing-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing-factory.js","sourceRoot":"","sources":["../../src/utils/tracing-factory.ts"],"names":[],"mappings":";;AA0BA,wDAWC;AAWD,oDA4CC;AASD,sDASC;AASD,gDASC;AAhID,uCAAoC;AACpC,0DAAsF;AAItF,yDAAwD;AACxD,uEAAkE;AAClE,uCAAuC;AAKvC,MAAM,yBAAyB,GAAG,4BAA4B,CAAC;AAK/D,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;AACtD,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;AACtD,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AAOlD,SAAgB,sBAAsB;IACpC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAEvD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,GAAG,uBAAuB,yBAAyB,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,GAAG,uBAAuB,yBAAyB,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAWD,SAAgB,oBAAoB,CAClC,YAA0B,EAC1B,aAA4B,EAC5B,SAAiB,EACjB,IAAc;IAGd,IAAI,YAAY,CAAC,KAAK,KAAK,6BAAa,CAAC,QAAQ,EAAE,CAAC;QAClD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,CAAC;QAEH,sBAAsB,EAAE,CAAC;QAGzB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAE,CAAC;QACxD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAE,CAAC;QACxD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,yBAAyB,CAAC;QAGhF,MAAM,QAAQ,GAAG,IAAI,mBAAQ,CAAC;YAC5B,SAAS;YACT,SAAS;YACT,OAAO;SACR,CAAC,CAAC;QAGH,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;YAC3B,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,aAAa;YACvB,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;SACjC,CAAC,CAAC;QAEH,OAAO;YACL,QAAQ;YACR,KAAK;YACL,YAAY,EAAE,IAAI,GAAG,EAAE;SACxB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAEpB,IAAA,oBAAU,EAAC,8CAA8C,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1E,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AASD,SAAgB,qBAAqB,CACnC,QAAqB,EACrB,cAA+B;IAE/B,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,IAAI,qCAAkB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;AAC1D,CAAC;AASD,SAAgB,kBAAkB,CAChC,KAAY,EACZ,cAA+B;IAE/B,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,+CAAqB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;AAC1D,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { LLMProvider, CompletionRequest, CompletionResponse } from '../providers/llm-provider';
2
+ import { TracingContext } from '../types/tracing.types';
3
+ export declare class TracingLLMProvider implements LLMProvider {
4
+ private readonly wrappedProvider;
5
+ private readonly tracingContext;
6
+ private iterationCount;
7
+ private agentId?;
8
+ constructor(wrappedProvider: LLMProvider, tracingContext: TracingContext);
9
+ setAgentId(agentId: string): void;
10
+ complete(request: CompletionRequest): Promise<CompletionResponse>;
11
+ resetIterationCount(): void;
12
+ }
13
+ //# sourceMappingURL=tracing-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing-provider.d.ts","sourceRoot":"","sources":["../../src/utils/tracing-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/F,OAAO,EAAE,cAAc,EAAc,MAAM,wBAAwB,CAAC;AAWpE,qBAAa,kBAAmB,YAAW,WAAW;IAKlD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,cAAc;IALjC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,OAAO,CAAC,CAAS;gBAGN,eAAe,EAAE,WAAW,EAC5B,cAAc,EAAE,cAAc;IASjD,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAU3B,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA+DvE,mBAAmB,IAAI,IAAI;CAG5B"}