@inspectr/mcplab-core 1.19.0 → 1.21.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 (43) hide show
  1. package/dist/agent.d.ts +4 -0
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +94 -6
  4. package/dist/agent.js.map +1 -1
  5. package/dist/browser.d.ts +8 -0
  6. package/dist/browser.d.ts.map +1 -0
  7. package/dist/browser.js +3 -0
  8. package/dist/browser.js.map +1 -0
  9. package/dist/check-counts.d.ts +7 -0
  10. package/dist/check-counts.d.ts.map +1 -0
  11. package/dist/check-counts.js +16 -0
  12. package/dist/check-counts.js.map +1 -0
  13. package/dist/eval.d.ts +23 -2
  14. package/dist/eval.d.ts.map +1 -1
  15. package/dist/eval.js +182 -21
  16. package/dist/eval.js.map +1 -1
  17. package/dist/evaluation-config-store.d.ts +20 -0
  18. package/dist/evaluation-config-store.d.ts.map +1 -0
  19. package/dist/evaluation-config-store.js +42 -0
  20. package/dist/evaluation-config-store.js.map +1 -0
  21. package/dist/index.d.ts +15 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +3 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/langsmith-tracing.d.ts +38 -0
  26. package/dist/langsmith-tracing.d.ts.map +1 -0
  27. package/dist/langsmith-tracing.js +199 -0
  28. package/dist/langsmith-tracing.js.map +1 -0
  29. package/dist/results.d.ts +1 -0
  30. package/dist/results.d.ts.map +1 -1
  31. package/dist/results.js +8 -0
  32. package/dist/results.js.map +1 -1
  33. package/dist/runner.d.ts +2 -0
  34. package/dist/runner.d.ts.map +1 -1
  35. package/dist/runner.js +36 -0
  36. package/dist/runner.js.map +1 -1
  37. package/dist/test-case-store.d.ts +24 -0
  38. package/dist/test-case-store.d.ts.map +1 -0
  39. package/dist/test-case-store.js +61 -0
  40. package/dist/test-case-store.js.map +1 -0
  41. package/dist/types.d.ts +34 -4
  42. package/dist/types.d.ts.map +1 -1
  43. package/package.json +20 -2
@@ -0,0 +1,199 @@
1
+ import { Client, RunTree } from 'langsmith';
2
+ function toLangSmithContentBlock(block) {
3
+ switch (block.type) {
4
+ case 'text':
5
+ return { type: 'text', text: block.text };
6
+ case 'tool_use':
7
+ return {
8
+ type: 'tool_call',
9
+ id: block.id,
10
+ name: block.name,
11
+ args: block.input
12
+ };
13
+ case 'image':
14
+ return {
15
+ type: 'image',
16
+ source_type: 'base64',
17
+ data: block.data,
18
+ mime_type: block.media_type,
19
+ ...(block.name ? { name: block.name } : {})
20
+ };
21
+ case 'document':
22
+ return {
23
+ type: 'file',
24
+ source_type: 'base64',
25
+ data: block.data,
26
+ mime_type: block.media_type,
27
+ ...(block.name ? { name: block.name } : {})
28
+ };
29
+ case 'tool_result':
30
+ return {
31
+ type: 'tool_result',
32
+ tool_call_id: block.tool_use_id,
33
+ name: block.name,
34
+ content: block.content.map((content) => ({ type: 'text', text: content.text })),
35
+ ...(block.is_error ? { is_error: true } : {})
36
+ };
37
+ }
38
+ }
39
+ /** Convert MCPLab's local trace schema to LangSmith's message schema. */
40
+ export function toLangSmithMessages(traceMessages) {
41
+ return traceMessages.flatMap((message) => {
42
+ if (message.role === 'tool') {
43
+ return message.content
44
+ .filter((block) => block.type === 'tool_result')
45
+ .map((block) => ({
46
+ role: 'tool',
47
+ tool_call_id: block.tool_use_id,
48
+ name: block.name,
49
+ content: block.content.map((content) => ({ type: 'text', text: content.text }))
50
+ }));
51
+ }
52
+ return [
53
+ {
54
+ role: message.role,
55
+ content: message.content
56
+ .filter((block) => block.type !== 'tool_result')
57
+ .map(toLangSmithContentBlock)
58
+ }
59
+ ];
60
+ });
61
+ }
62
+ const noopSpan = { end: async () => undefined };
63
+ const noopScenarioSpan = {
64
+ ...noopSpan,
65
+ startLlm: () => noopSpan,
66
+ startTool: () => noopSpan
67
+ };
68
+ function isEnabled(env) {
69
+ return env.LANGSMITH_TRACING?.trim().toLowerCase() === 'true' && Boolean(env.LANGSMITH_API_KEY);
70
+ }
71
+ function warn(error) {
72
+ console.warn(`LangSmith tracing warning: ${error instanceof Error ? error.message : String(error)}`);
73
+ }
74
+ function safeEnd(run, values) {
75
+ return Promise.resolve()
76
+ .then(() => run.end(values.outputs, values.error))
77
+ .catch((error) => warn(error));
78
+ }
79
+ function createRunFactory(env) {
80
+ const client = new Client({
81
+ apiKey: env.LANGSMITH_API_KEY,
82
+ ...(env.LANGSMITH_ENDPOINT ? { apiUrl: env.LANGSMITH_ENDPOINT } : {}),
83
+ ...(env.LANGSMITH_WORKSPACE_ID ? { workspaceId: env.LANGSMITH_WORKSPACE_ID } : {}),
84
+ autoBatchTracing: true
85
+ });
86
+ return (config) => {
87
+ const options = {
88
+ ...config,
89
+ ...(env.LANGSMITH_PROJECT ? { project_name: env.LANGSMITH_PROJECT } : {}),
90
+ client,
91
+ tracingEnabled: true
92
+ };
93
+ return new RunTree(options);
94
+ };
95
+ }
96
+ function createEnabledExporter(env, factory) {
97
+ const roots = [];
98
+ const runsByRoot = new Map();
99
+ const requestIdsByRoot = new Map();
100
+ return {
101
+ startScenario(values) {
102
+ try {
103
+ const root = factory({
104
+ name: `MCPLab scenario: ${String(values.scenarioId ?? 'unknown')}`,
105
+ run_type: 'chain',
106
+ inputs: values,
107
+ metadata: {
108
+ ...values,
109
+ ...(typeof values.provider === 'string' ? { ls_provider: values.provider } : {}),
110
+ ...(typeof values.model === 'string' ? { ls_model_name: values.model } : {})
111
+ },
112
+ tags: ['mcplab', 'evaluation'],
113
+ ...(env.LANGSMITH_PROJECT ? { project_name: env.LANGSMITH_PROJECT } : {}),
114
+ serialized: { name: 'mcplab-scenario' }
115
+ });
116
+ roots.push(root);
117
+ runsByRoot.set(root, [root]);
118
+ if (typeof values.requestId === 'string' && values.requestId) {
119
+ requestIdsByRoot.set(root, values.requestId);
120
+ }
121
+ return {
122
+ startLlm({ turn, inputs, metadata }) {
123
+ try {
124
+ const child = root.createChild({
125
+ name: `LLM turn ${turn}`,
126
+ run_type: 'llm',
127
+ inputs,
128
+ ...(metadata ? { metadata } : {}),
129
+ serialized: { name: 'mcplab-llm' }
130
+ });
131
+ runsByRoot.get(root)?.push(child);
132
+ return spanFromRun(child);
133
+ }
134
+ catch (error) {
135
+ warn(error);
136
+ return noopSpan;
137
+ }
138
+ },
139
+ startTool({ server, tool, inputs }) {
140
+ try {
141
+ const child = root.createChild({
142
+ name: tool,
143
+ run_type: 'tool',
144
+ inputs,
145
+ metadata: { server, tool },
146
+ serialized: { name: 'mcplab-mcp-tool' }
147
+ });
148
+ runsByRoot.get(root)?.push(child);
149
+ return spanFromRun(child);
150
+ }
151
+ catch (error) {
152
+ warn(error);
153
+ return noopSpan;
154
+ }
155
+ },
156
+ end: (result) => safeEnd(root, result)
157
+ };
158
+ }
159
+ catch (error) {
160
+ warn(error);
161
+ return noopScenarioSpan;
162
+ }
163
+ },
164
+ async flush() {
165
+ const traceUrls = {};
166
+ for (const root of roots.splice(0)) {
167
+ try {
168
+ const runs = runsByRoot.get(root) ?? [root];
169
+ for (const run of runs.slice(1))
170
+ await run.postRun();
171
+ await root.postRun();
172
+ const requestId = requestIdsByRoot.get(root);
173
+ if (requestId && root.id && root.client) {
174
+ const projectUrl = await root.client.getProjectUrl({
175
+ projectName: root.project_name
176
+ });
177
+ traceUrls[requestId] = `${projectUrl}/r/${root.id}?poll=true`;
178
+ }
179
+ runsByRoot.delete(root);
180
+ requestIdsByRoot.delete(root);
181
+ }
182
+ catch (error) {
183
+ warn(error);
184
+ }
185
+ }
186
+ return { traceUrls };
187
+ }
188
+ };
189
+ }
190
+ function spanFromRun(run) {
191
+ return { end: (values) => safeEnd(run, values) };
192
+ }
193
+ export function createLangSmithTraceExporter(env = process.env, factory) {
194
+ if (!isEnabled(env)) {
195
+ return { startScenario: () => noopScenarioSpan, flush: async () => ({ traceUrls: {} }) };
196
+ }
197
+ return createEnabledExporter(env, factory ?? createRunFactory(env));
198
+ }
199
+ //# sourceMappingURL=langsmith-tracing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"langsmith-tracing.js","sourceRoot":"","sources":["../src/langsmith-tracing.ts"],"names":[],"mappings":"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"}
package/dist/results.d.ts CHANGED
@@ -6,6 +6,7 @@ export declare function aggregateResults(params: {
6
6
  gitCommit?: string;
7
7
  configHash: string;
8
8
  cliVersion: string;
9
+ langsmithTraceUrls?: Record<string, string>;
9
10
  mcpServerVersions?: Record<string, string | null>;
10
11
  scenarioRuns: Array<{
11
12
  scenario_id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAqB,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/F,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,YAAY,EAAE,KAAK,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,SAAS,CAAC;QACjB,IAAI,EAAE,iBAAiB,EAAE,CAAC;KAC3B,CAAC,CAAC;CACJ,GAAG,WAAW,CAiId;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAsClE"}
1
+ {"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAqB,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/F,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,YAAY,EAAE,KAAK,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,SAAS,CAAC;QACjB,IAAI,EAAE,iBAAiB,EAAE,CAAC;KAC3B,CAAC,CAAC;CACJ,GAAG,WAAW,CAkId;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CA6ClE"}
package/dist/results.js CHANGED
@@ -84,6 +84,7 @@ export function aggregateResults(params) {
84
84
  run_note: params.runNote,
85
85
  git_commit: params.gitCommit,
86
86
  config_hash: params.configHash,
87
+ langsmith_trace_urls: params.langsmithTraceUrls,
87
88
  total_duration_ms: totalDurationMs,
88
89
  total_tool_duration_ms: totalToolDurationMs,
89
90
  cli_version: params.cliVersion,
@@ -113,6 +114,13 @@ export function renderSummaryMarkdown(results) {
113
114
  }
114
115
  lines.push(`Config hash: ${results.metadata.config_hash}`);
115
116
  lines.push(`CLI version: ${results.metadata.cli_version}`);
117
+ const langsmithTraceUrls = Object.entries(results.metadata.langsmith_trace_urls ?? {});
118
+ if (langsmithTraceUrls.length > 0) {
119
+ lines.push('LangSmith traces:');
120
+ for (const [requestId, url] of langsmithTraceUrls) {
121
+ lines.push(`- [${requestId}](${url})`);
122
+ }
123
+ }
116
124
  const mcpServerVersionEntries = Object.entries(results.metadata.mcp_server_versions ?? {});
117
125
  if (mcpServerVersionEntries.length > 0) {
118
126
  lines.push(`MCP server versions:`);
@@ -1 +1 @@
1
- {"version":3,"file":"results.js","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"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"}
package/dist/runner.d.ts CHANGED
@@ -7,6 +7,7 @@ import type {
7
7
  ExecutableScenario
8
8
  } from './types.js';
9
9
  import { type AgentRunProgressEvent } from './agent.js';
10
+ import { type TraceExporter } from './langsmith-tracing.js';
10
11
  export interface RunOptions {
11
12
  runsPerScenario: number;
12
13
  scenarioId?: string;
@@ -30,6 +31,7 @@ export interface RunOptions {
30
31
  };
31
32
  signal?: AbortSignal;
32
33
  onProgress?: (event: RunProgressEvent) => void | Promise<void>;
34
+ traceExporter?: TraceExporter;
33
35
  }
34
36
  export type RunProgressEvent =
35
37
  | {
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EAEpB,WAAW,EACX,kBAAkB,EAEnB,MAAM,YAAY,CAAC;AAIpB,OAAO,EAIL,KAAK,qBAAqB,EAC3B,MAAM,YAAY,CAAC;AAQpB,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,UAAU;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,2BAA2B,CAAC,EAAE,CAC5B,WAAW,EAAE,MAAM,EAAE,EACrB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,KAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACrD,eAAe,CAAC,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,WAAW,CAAC;KACpB,CAAC;IACF,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,MAAM,MAAM,gBAAgB,GACxB;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB,GACD;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,GAC3E;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,GAC5E;IACE,IAAI,EAAE,sBAAsB,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB,GACD;IACE,IAAI,EAAE,uBAAuB,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;CACvB,GACD;IACE,IAAI,EAAE,gBAAgB,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,qBAAqB,CAAC;CAC9B,GACD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,sBAAsB,GAAG,aAAa,CAAC,GAChE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAQxC;AAED,wBAAsB,MAAM,CAC1B,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,CAAC,CAgWnD;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,cAAc,EAAE,EAC5B,OAAO,CAAC,EAAE,iBAAiB;;;;;;;;EAW5B;AAED,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEnE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,WAAW,CAAC;IACxB,KAAK,EAAE,iBAAiB,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb,GAAG,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC,CA+D9F;AAsDD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAapD;AAmCD,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,kBAAkB,EAAE,EAC/B,UAAU,CAAC,EAAE,MAAM,GAClB,kBAAkB,EAAE,CAGtB;AAKD,wBAAgB,WAAW,CAAC,GAAG,GAAE,IAAiB,GAAG,MAAM,CAsB1D;AAID,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAUT;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,MAAM,CAOT"}
package/dist/runner.js CHANGED
@@ -8,6 +8,7 @@ import { buildBatchJudgeResponseFormat, chatWithAgent, runAgentScenario } from '
8
8
  import { buildNotEvaluatedCheckResults, evaluateScenarioWithAgentChecks, extractValues } from './eval.js';
9
9
  import { aggregateResults, renderSummaryMarkdown } from './results.js';
10
10
  import { enrichTraceMessagesWithEstimatedTokens } from './trace-token-estimates.js';
11
+ import { createLangSmithTraceExporter, toLangSmithMessages } from './langsmith-tracing.js';
11
12
  export function buildMcpServerAuthHeaders(options) {
12
13
  const out = { ...options.mcpServerAuthHeaders };
13
14
  if (options.oauthTokens) {
@@ -41,6 +42,8 @@ export async function runAll(config, options) {
41
42
  const resolvedConfigPath = join(runDir, 'resolved-config.yaml');
42
43
  writeFileSync(resolvedConfigPath, `${stringifyYaml(config)}\n`, 'utf8');
43
44
  const trace = new TraceWriter(tracePath);
45
+ const traceExporter = options.traceExporter ?? createLangSmithTraceExporter();
46
+ let traceExporterFlushed = false;
44
47
  trace.write({
45
48
  type: 'trace_meta',
46
49
  trace_version: 3,
@@ -121,6 +124,18 @@ export async function runAll(config, options) {
121
124
  runsPerScenario: options.runsPerScenario
122
125
  });
123
126
  const tsStart = new Date().toISOString();
127
+ const scenarioTrace = traceExporter.startScenario({
128
+ runId,
129
+ requestId,
130
+ scenarioId: scenario.id,
131
+ agent: scenario.agent,
132
+ provider: agent.provider,
133
+ model: agent.model,
134
+ configHash: options.configHash,
135
+ gitCommit: options.gitCommit,
136
+ cliVersion: options.cliVersion,
137
+ messages: [{ role: 'user', content: scenario.prompt }]
138
+ });
124
139
  try {
125
140
  const runResult = await runAgentScenario({
126
141
  scenario,
@@ -131,6 +146,7 @@ export async function runAll(config, options) {
131
146
  Promise.resolve({}),
132
147
  maxTurns: agent.max_turns,
133
148
  signal: options.signal,
149
+ trace: scenarioTrace,
134
150
  onProgress: async (event) => {
135
151
  await emitProgress({
136
152
  type: 'agent_progress',
@@ -141,6 +157,7 @@ export async function runAll(config, options) {
141
157
  }
142
158
  });
143
159
  const evalResult = await evaluateScenarioWithAgentChecks(runResult.finalText, runResult.toolSequence, scenario.eval, {
160
+ toolCalls: runResult.toolCalls,
144
161
  scenarioPrompt: scenario.prompt,
145
162
  judgeAgentAssertions: options.evaluationJudge
146
163
  ? async (input) => {
@@ -194,6 +211,14 @@ export async function runAll(config, options) {
194
211
  }
195
212
  };
196
213
  trace.write(traceRecord);
214
+ await scenarioTrace.end({
215
+ outputs: {
216
+ finalText: runResult.finalText,
217
+ pass: evalResult.pass,
218
+ messages: toLangSmithMessages(runResult.traceMessages),
219
+ metrics: traceRecord.metrics
220
+ }
221
+ });
197
222
  await emitProgress({
198
223
  type: 'scenario_run_finished',
199
224
  scenarioId: scenario.id,
@@ -208,6 +233,10 @@ export async function runAll(config, options) {
208
233
  }
209
234
  catch (scenarioErr) {
210
235
  if (options.signal?.aborted || isAbortError(scenarioErr)) {
236
+ await scenarioTrace.end({
237
+ error: String(scenarioErr?.message ?? scenarioErr),
238
+ outputs: { pass: false }
239
+ });
211
240
  throw scenarioErr;
212
241
  }
213
242
  const errorMessage = scenarioErr?.message ?? String(scenarioErr);
@@ -246,6 +275,7 @@ export async function runAll(config, options) {
246
275
  messages: []
247
276
  };
248
277
  trace.write(errorTrace);
278
+ await scenarioTrace.end({ error: errorMessage, outputs: { pass: false } });
249
279
  await emitProgress({
250
280
  type: 'scenario_run_finished',
251
281
  scenarioId: scenario.id,
@@ -269,6 +299,8 @@ export async function runAll(config, options) {
269
299
  runs
270
300
  });
271
301
  }
302
+ const traceExport = await traceExporter.flush();
303
+ traceExporterFlushed = true;
272
304
  const results = aggregateResults({
273
305
  runId,
274
306
  timestamp: new Date().toISOString(),
@@ -276,6 +308,7 @@ export async function runAll(config, options) {
276
308
  gitCommit: options.gitCommit,
277
309
  configHash: options.configHash,
278
310
  cliVersion: options.cliVersion,
311
+ langsmithTraceUrls: traceExport.traceUrls,
279
312
  mcpServerVersions,
280
313
  scenarioRuns
281
314
  });
@@ -288,6 +321,8 @@ export async function runAll(config, options) {
288
321
  }
289
322
  finally {
290
323
  await mcp.disconnectAll();
324
+ if (!traceExporterFlushed)
325
+ await traceExporter.flush();
291
326
  }
292
327
  }
293
328
  export function buildJudgeBatchPayload(finalText, assertions, context) {
@@ -362,6 +397,7 @@ async function judgeAgentAssertions(params) {
362
397
  'Use final_answer as the primary answer being judged.',
363
398
  'If context.scenario_prompt is provided, use it to decide whether the final answer addresses the original request.',
364
399
  'If context.tool_sequence is provided, use it only to understand which tools were called.',
400
+ 'If context.tool_inputs is provided, use the tool names and arguments to reason about how the tools were used.',
365
401
  'Do not require context fields that are not provided.',
366
402
  'Return JSON only.',
367
403
  'Schema: {"results":[{"id":"abc","pass":true,"reason":"text"}]}.',
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { SourceScenario } from './types.js';
2
+ export type TestCaseCreateInput = {
3
+ id: string;
4
+ name?: string;
5
+ servers: string[];
6
+ prompt: string;
7
+ requiredTools?: string[];
8
+ responseRegexPatterns?: string[];
9
+ };
10
+ export type CreatedTestCaseFile = {
11
+ id: string;
12
+ path: string;
13
+ testCase: SourceScenario;
14
+ };
15
+ /**
16
+ * Creates one canonical Test Case. Both the app API and MCP tool call this
17
+ * function so they share input validation and file persistence semantics.
18
+ */
19
+ export declare function createTestCaseFile(params: {
20
+ librariesDir: string;
21
+ knownServerIds: Iterable<string>;
22
+ testCase: TestCaseCreateInput;
23
+ }): CreatedTestCaseFile;
24
+ //# sourceMappingURL=test-case-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-case-store.d.ts","sourceRoot":"","sources":["../src/test-case-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,cAAc,CAAC;CAC1B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjC,QAAQ,EAAE,mBAAmB,CAAC;CAC/B,GAAG,mBAAmB,CA8CtB"}
@@ -0,0 +1,61 @@
1
+ import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
2
+ import { resolve, sep } from 'node:path';
3
+ import { stringify as stringifyYaml } from 'yaml';
4
+ /**
5
+ * Creates one canonical Test Case. Both the app API and MCP tool call this
6
+ * function so they share input validation and file persistence semantics.
7
+ */
8
+ export function createTestCaseFile(params) {
9
+ const id = params.testCase.id.trim();
10
+ if (!/^[a-zA-Z0-9_-]+$/.test(id)) {
11
+ throw new Error('Test Case id must use letters, numbers, hyphens, or underscores.');
12
+ }
13
+ const prompt = params.testCase.prompt.trim();
14
+ if (!prompt)
15
+ throw new Error('A Test Case needs a prompt.');
16
+ if (prompt.length > 4000)
17
+ throw new Error('Test Case prompt must be 4000 characters or fewer.');
18
+ const servers = uniqueNonEmptyStrings(params.testCase.servers);
19
+ if (servers.length === 0)
20
+ throw new Error('A Test Case needs at least one MCP server.');
21
+ const knownServerIds = new Set(params.knownServerIds);
22
+ const missingServers = servers.filter((server) => !knownServerIds.has(server));
23
+ if (missingServers.length)
24
+ throw new Error(`Unknown MCP server(s): ${missingServers.join(', ')}`);
25
+ const librariesDir = resolve(params.librariesDir);
26
+ const testCasesDir = resolve(librariesDir, 'test-cases');
27
+ if (!testCasesDir.startsWith(`${librariesDir}${sep}`)) {
28
+ throw new Error('Test Case path is outside the configured libraries directory.');
29
+ }
30
+ mkdirSync(testCasesDir, { recursive: true });
31
+ const path = resolve(testCasesDir, `${id}.yaml`);
32
+ if (!path.startsWith(`${testCasesDir}${sep}`)) {
33
+ throw new Error('Test Case path is outside the canonical test-cases directory.');
34
+ }
35
+ if (existsSync(path))
36
+ throw new Error(`Test Case '${id}' already exists.`);
37
+ const requiredTools = uniqueNonEmptyStrings(params.testCase.requiredTools ?? []);
38
+ const responseRegexPatterns = uniqueNonEmptyStrings(params.testCase.responseRegexPatterns ?? []);
39
+ const testCase = {
40
+ id,
41
+ name: params.testCase.name?.trim() || id,
42
+ servers,
43
+ prompt,
44
+ ...(requiredTools.length || responseRegexPatterns.length
45
+ ? {
46
+ eval: {
47
+ ...(requiredTools.length ? { tool_constraints: { required_tools: requiredTools } } : {}),
48
+ ...(responseRegexPatterns.length
49
+ ? { response_assertions: responseRegexPatterns.map((pattern) => ({ type: 'regex', pattern })) }
50
+ : {})
51
+ }
52
+ }
53
+ : {})
54
+ };
55
+ writeFileSync(path, `${stringifyYaml(testCase)}\n`, 'utf8');
56
+ return { id, path, testCase };
57
+ }
58
+ function uniqueNonEmptyStrings(values) {
59
+ return [...new Set(values.map((value) => value.trim()).filter(Boolean))];
60
+ }
61
+ //# sourceMappingURL=test-case-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-case-store.js","sourceRoot":"","sources":["../src/test-case-store.ts"],"names":[],"mappings":"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"}