@agentv/core 0.9.0 → 0.10.1

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.
package/dist/index.d.cts CHANGED
@@ -91,7 +91,6 @@ type LlmJudgeEvaluatorConfig = {
91
91
  readonly type: "llm_judge";
92
92
  readonly prompt?: string;
93
93
  readonly promptPath?: string;
94
- readonly model?: string;
95
94
  };
96
95
  type EvaluatorConfig = CodeEvaluatorConfig | LlmJudgeEvaluatorConfig;
97
96
  /**
@@ -102,9 +101,10 @@ interface EvalCase {
102
101
  readonly dataset?: string;
103
102
  readonly conversation_id?: string;
104
103
  readonly question: string;
104
+ readonly input_messages: readonly TestMessage[];
105
105
  readonly input_segments: readonly JsonObject[];
106
106
  readonly output_segments: readonly JsonObject[];
107
- readonly reference_answer: string;
107
+ readonly reference_answer?: string;
108
108
  readonly guideline_paths: readonly string[];
109
109
  readonly guideline_patterns?: readonly string[];
110
110
  readonly file_paths: readonly string[];
@@ -129,7 +129,8 @@ interface EvaluationResult {
129
129
  readonly timestamp: string;
130
130
  readonly reasoning?: string;
131
131
  readonly raw_aspects?: readonly string[];
132
- readonly raw_request?: JsonObject;
132
+ readonly agent_provider_request?: JsonObject;
133
+ readonly lm_provider_request?: JsonObject;
133
134
  readonly evaluator_raw_request?: JsonObject;
134
135
  readonly evaluator_results?: readonly EvaluatorResult[];
135
136
  readonly error?: string;
@@ -149,65 +150,6 @@ interface EvaluatorResult {
149
150
  */
150
151
  declare function getHitCount(result: Pick<EvaluationResult, "hits">): number;
151
152
 
152
- /**
153
- * Determine whether a path references guideline content (instructions or prompts).
154
- */
155
- declare function isGuidelineFile(filePath: string, patterns?: readonly string[]): boolean;
156
- /**
157
- * Extract fenced code blocks from AgentV user segments.
158
- */
159
- declare function extractCodeBlocks(segments: readonly JsonObject[]): readonly string[];
160
- type LoadOptions = {
161
- readonly verbose?: boolean;
162
- readonly evalId?: string;
163
- };
164
- /**
165
- * Load eval cases from a AgentV YAML specification file.
166
- */
167
- declare function loadEvalCases(evalFilePath: string, repoRoot: URL | string, options?: LoadOptions): Promise<readonly EvalCase[]>;
168
- /**
169
- * Build prompt inputs by consolidating user request context and guideline content.
170
- */
171
- declare function buildPromptInputs(testCase: EvalCase): Promise<{
172
- question: string;
173
- guidelines: string;
174
- systemMessage?: string;
175
- }>;
176
-
177
- declare function fileExists(filePath: string): Promise<boolean>;
178
- /**
179
- * Normalize line endings to LF (\n).
180
- * This ensures consistent behavior across Windows (CRLF) and Unix (LF) systems.
181
- */
182
- declare function normalizeLineEndings(content: string): string;
183
- /**
184
- * Read a text file and normalize line endings to LF (\n).
185
- * This ensures consistent behavior across Windows (CRLF) and Unix (LF) systems.
186
- */
187
- declare function readTextFile(filePath: string): Promise<string>;
188
- /**
189
- * Find git repository root by walking up the directory tree.
190
- */
191
- declare function findGitRoot(startPath: string): Promise<string | null>;
192
- /**
193
- * Build a chain of directories walking from a file's location up to repo root.
194
- * Used for discovering configuration files like targets.yaml or config.yaml.
195
- */
196
- declare function buildDirectoryChain(filePath: string, repoRoot: string): readonly string[];
197
- /**
198
- * Build search roots for file resolution, matching yaml-parser behavior.
199
- * Searches from eval file directory up to repo root.
200
- */
201
- declare function buildSearchRoots(evalPath: string, repoRoot: string): readonly string[];
202
- /**
203
- * Resolve a file reference using search roots, matching yaml-parser behavior.
204
- */
205
- declare function resolveFileReference(rawValue: string, searchRoots: readonly string[]): Promise<{
206
- readonly displayPath: string;
207
- readonly resolvedPath?: string;
208
- readonly attempted: readonly string[];
209
- }>;
210
-
211
153
  type ChatPrompt = AxChatRequest["chatPrompt"];
212
154
  type ProviderKind = "azure" | "anthropic" | "gemini" | "codex" | "cli" | "mock" | "vscode" | "vscode-insiders";
213
155
  interface ProviderRequest {
@@ -321,6 +263,74 @@ interface TargetDefinition {
321
263
  readonly retryStatusCodes?: unknown | undefined;
322
264
  }
323
265
 
266
+ /**
267
+ * Read metadata from a test suite file (like target name).
268
+ * This is a convenience function for CLI tools that need metadata without loading all eval cases.
269
+ */
270
+ declare function readTestSuiteMetadata(testFilePath: string): Promise<{
271
+ target?: string;
272
+ }>;
273
+ /**
274
+ * Determine whether a path references guideline content (instructions or prompts).
275
+ */
276
+ declare function isGuidelineFile(filePath: string, patterns?: readonly string[]): boolean;
277
+ /**
278
+ * Extract fenced code blocks from AgentV user segments.
279
+ */
280
+ declare function extractCodeBlocks(segments: readonly JsonObject[]): readonly string[];
281
+ type LoadOptions = {
282
+ readonly verbose?: boolean;
283
+ readonly evalId?: string;
284
+ };
285
+ /**
286
+ * Load eval cases from a AgentV YAML specification file.
287
+ */
288
+ declare function loadEvalCases(evalFilePath: string, repoRoot: URL | string, options?: LoadOptions): Promise<readonly EvalCase[]>;
289
+ /**
290
+ * Build prompt inputs by consolidating user request context and guideline content.
291
+ */
292
+ interface PromptInputs {
293
+ readonly question: string;
294
+ readonly guidelines: string;
295
+ readonly chatPrompt?: ChatPrompt;
296
+ readonly systemMessage?: string;
297
+ }
298
+ declare function buildPromptInputs(testCase: EvalCase): Promise<PromptInputs>;
299
+
300
+ declare function fileExists(filePath: string): Promise<boolean>;
301
+ /**
302
+ * Normalize line endings to LF (\n).
303
+ * This ensures consistent behavior across Windows (CRLF) and Unix (LF) systems.
304
+ */
305
+ declare function normalizeLineEndings(content: string): string;
306
+ /**
307
+ * Read a text file and normalize line endings to LF (\n).
308
+ * This ensures consistent behavior across Windows (CRLF) and Unix (LF) systems.
309
+ */
310
+ declare function readTextFile(filePath: string): Promise<string>;
311
+ /**
312
+ * Find git repository root by walking up the directory tree.
313
+ */
314
+ declare function findGitRoot(startPath: string): Promise<string | null>;
315
+ /**
316
+ * Build a chain of directories walking from a file's location up to repo root.
317
+ * Used for discovering configuration files like targets.yaml or config.yaml.
318
+ */
319
+ declare function buildDirectoryChain(filePath: string, repoRoot: string): readonly string[];
320
+ /**
321
+ * Build search roots for file resolution, matching yaml-parser behavior.
322
+ * Searches from eval file directory up to repo root.
323
+ */
324
+ declare function buildSearchRoots(evalPath: string, repoRoot: string): readonly string[];
325
+ /**
326
+ * Resolve a file reference using search roots, matching yaml-parser behavior.
327
+ */
328
+ declare function resolveFileReference(rawValue: string, searchRoots: readonly string[]): Promise<{
329
+ readonly displayPath: string;
330
+ readonly resolvedPath?: string;
331
+ readonly attempted: readonly string[];
332
+ }>;
333
+
324
334
  interface RetryConfig {
325
335
  readonly maxRetries?: number;
326
336
  readonly initialDelayMs?: number;
@@ -486,12 +496,12 @@ interface EvaluationContext {
486
496
  readonly question: string;
487
497
  readonly guidelines: string;
488
498
  readonly systemMessage?: string;
499
+ readonly chatPrompt?: ChatPrompt;
489
500
  };
490
501
  readonly now: Date;
491
502
  readonly judgeProvider?: Provider;
492
503
  readonly systemPrompt?: string;
493
504
  readonly evaluator?: EvaluatorConfig;
494
- readonly judgeModel?: string;
495
505
  }
496
506
  interface EvaluationScore {
497
507
  readonly score: number;
@@ -594,4 +604,4 @@ type AgentKernel = {
594
604
  };
595
605
  declare function createAgentKernel(): AgentKernel;
596
606
 
597
- export { type AgentKernel, type AnthropicResolvedConfig, type AssistantTestMessage, type AzureResolvedConfig, type CliResolvedConfig, CodeEvaluator, type CodeEvaluatorConfig, type CodeEvaluatorOptions, type EnsureSubagentsOptions, type EnsureSubagentsResult, type EnvLookup, type EvalCase, type EvaluationCache, type EvaluationContext, type EvaluationResult, type EvaluationScore, type Evaluator, type EvaluatorConfig, type EvaluatorKind, type EvaluatorResult, type GeminiResolvedConfig, type JsonObject, type JsonPrimitive, type JsonValue, LlmJudgeEvaluator, type LlmJudgeEvaluatorConfig, type LlmJudgeEvaluatorOptions, type MockResolvedConfig, type ProgressEvent, type Provider, type ProviderKind, type ProviderRequest, type ProviderResponse, type ResolvedTarget, type RunEvalCaseOptions, type RunEvaluationOptions, type SystemTestMessage, TEST_MESSAGE_ROLES, type TargetDefinition, type TestMessage, type TestMessageContent, type TestMessageRole, type ToolTestMessage, type UserTestMessage, type VSCodeResolvedConfig, buildDirectoryChain, buildPromptInputs, buildSearchRoots, consumeCodexLogEntries, createAgentKernel, createProvider, ensureVSCodeSubagents, extractCodeBlocks, fileExists, findGitRoot, getHitCount, isEvaluatorKind, isGuidelineFile, isJsonObject, isJsonValue, isTestMessage, isTestMessageRole, listTargetNames, loadEvalCases, normalizeLineEndings, readTargetDefinitions, readTextFile, resolveAndCreateProvider, resolveFileReference, resolveTargetDefinition, runEvalCase, runEvaluation, subscribeToCodexLogEntries };
607
+ export { type AgentKernel, type AnthropicResolvedConfig, type AssistantTestMessage, type AzureResolvedConfig, type CliResolvedConfig, CodeEvaluator, type CodeEvaluatorConfig, type CodeEvaluatorOptions, type EnsureSubagentsOptions, type EnsureSubagentsResult, type EnvLookup, type EvalCase, type EvaluationCache, type EvaluationContext, type EvaluationResult, type EvaluationScore, type Evaluator, type EvaluatorConfig, type EvaluatorKind, type EvaluatorResult, type GeminiResolvedConfig, type JsonObject, type JsonPrimitive, type JsonValue, LlmJudgeEvaluator, type LlmJudgeEvaluatorConfig, type LlmJudgeEvaluatorOptions, type MockResolvedConfig, type ProgressEvent, type PromptInputs, type Provider, type ProviderKind, type ProviderRequest, type ProviderResponse, type ResolvedTarget, type RunEvalCaseOptions, type RunEvaluationOptions, type SystemTestMessage, TEST_MESSAGE_ROLES, type TargetDefinition, type TestMessage, type TestMessageContent, type TestMessageRole, type ToolTestMessage, type UserTestMessage, type VSCodeResolvedConfig, buildDirectoryChain, buildPromptInputs, buildSearchRoots, consumeCodexLogEntries, createAgentKernel, createProvider, ensureVSCodeSubagents, extractCodeBlocks, fileExists, findGitRoot, getHitCount, isEvaluatorKind, isGuidelineFile, isJsonObject, isJsonValue, isTestMessage, isTestMessageRole, listTargetNames, loadEvalCases, normalizeLineEndings, readTargetDefinitions, readTestSuiteMetadata, readTextFile, resolveAndCreateProvider, resolveFileReference, resolveTargetDefinition, runEvalCase, runEvaluation, subscribeToCodexLogEntries };
package/dist/index.d.ts CHANGED
@@ -91,7 +91,6 @@ type LlmJudgeEvaluatorConfig = {
91
91
  readonly type: "llm_judge";
92
92
  readonly prompt?: string;
93
93
  readonly promptPath?: string;
94
- readonly model?: string;
95
94
  };
96
95
  type EvaluatorConfig = CodeEvaluatorConfig | LlmJudgeEvaluatorConfig;
97
96
  /**
@@ -102,9 +101,10 @@ interface EvalCase {
102
101
  readonly dataset?: string;
103
102
  readonly conversation_id?: string;
104
103
  readonly question: string;
104
+ readonly input_messages: readonly TestMessage[];
105
105
  readonly input_segments: readonly JsonObject[];
106
106
  readonly output_segments: readonly JsonObject[];
107
- readonly reference_answer: string;
107
+ readonly reference_answer?: string;
108
108
  readonly guideline_paths: readonly string[];
109
109
  readonly guideline_patterns?: readonly string[];
110
110
  readonly file_paths: readonly string[];
@@ -129,7 +129,8 @@ interface EvaluationResult {
129
129
  readonly timestamp: string;
130
130
  readonly reasoning?: string;
131
131
  readonly raw_aspects?: readonly string[];
132
- readonly raw_request?: JsonObject;
132
+ readonly agent_provider_request?: JsonObject;
133
+ readonly lm_provider_request?: JsonObject;
133
134
  readonly evaluator_raw_request?: JsonObject;
134
135
  readonly evaluator_results?: readonly EvaluatorResult[];
135
136
  readonly error?: string;
@@ -149,65 +150,6 @@ interface EvaluatorResult {
149
150
  */
150
151
  declare function getHitCount(result: Pick<EvaluationResult, "hits">): number;
151
152
 
152
- /**
153
- * Determine whether a path references guideline content (instructions or prompts).
154
- */
155
- declare function isGuidelineFile(filePath: string, patterns?: readonly string[]): boolean;
156
- /**
157
- * Extract fenced code blocks from AgentV user segments.
158
- */
159
- declare function extractCodeBlocks(segments: readonly JsonObject[]): readonly string[];
160
- type LoadOptions = {
161
- readonly verbose?: boolean;
162
- readonly evalId?: string;
163
- };
164
- /**
165
- * Load eval cases from a AgentV YAML specification file.
166
- */
167
- declare function loadEvalCases(evalFilePath: string, repoRoot: URL | string, options?: LoadOptions): Promise<readonly EvalCase[]>;
168
- /**
169
- * Build prompt inputs by consolidating user request context and guideline content.
170
- */
171
- declare function buildPromptInputs(testCase: EvalCase): Promise<{
172
- question: string;
173
- guidelines: string;
174
- systemMessage?: string;
175
- }>;
176
-
177
- declare function fileExists(filePath: string): Promise<boolean>;
178
- /**
179
- * Normalize line endings to LF (\n).
180
- * This ensures consistent behavior across Windows (CRLF) and Unix (LF) systems.
181
- */
182
- declare function normalizeLineEndings(content: string): string;
183
- /**
184
- * Read a text file and normalize line endings to LF (\n).
185
- * This ensures consistent behavior across Windows (CRLF) and Unix (LF) systems.
186
- */
187
- declare function readTextFile(filePath: string): Promise<string>;
188
- /**
189
- * Find git repository root by walking up the directory tree.
190
- */
191
- declare function findGitRoot(startPath: string): Promise<string | null>;
192
- /**
193
- * Build a chain of directories walking from a file's location up to repo root.
194
- * Used for discovering configuration files like targets.yaml or config.yaml.
195
- */
196
- declare function buildDirectoryChain(filePath: string, repoRoot: string): readonly string[];
197
- /**
198
- * Build search roots for file resolution, matching yaml-parser behavior.
199
- * Searches from eval file directory up to repo root.
200
- */
201
- declare function buildSearchRoots(evalPath: string, repoRoot: string): readonly string[];
202
- /**
203
- * Resolve a file reference using search roots, matching yaml-parser behavior.
204
- */
205
- declare function resolveFileReference(rawValue: string, searchRoots: readonly string[]): Promise<{
206
- readonly displayPath: string;
207
- readonly resolvedPath?: string;
208
- readonly attempted: readonly string[];
209
- }>;
210
-
211
153
  type ChatPrompt = AxChatRequest["chatPrompt"];
212
154
  type ProviderKind = "azure" | "anthropic" | "gemini" | "codex" | "cli" | "mock" | "vscode" | "vscode-insiders";
213
155
  interface ProviderRequest {
@@ -321,6 +263,74 @@ interface TargetDefinition {
321
263
  readonly retryStatusCodes?: unknown | undefined;
322
264
  }
323
265
 
266
+ /**
267
+ * Read metadata from a test suite file (like target name).
268
+ * This is a convenience function for CLI tools that need metadata without loading all eval cases.
269
+ */
270
+ declare function readTestSuiteMetadata(testFilePath: string): Promise<{
271
+ target?: string;
272
+ }>;
273
+ /**
274
+ * Determine whether a path references guideline content (instructions or prompts).
275
+ */
276
+ declare function isGuidelineFile(filePath: string, patterns?: readonly string[]): boolean;
277
+ /**
278
+ * Extract fenced code blocks from AgentV user segments.
279
+ */
280
+ declare function extractCodeBlocks(segments: readonly JsonObject[]): readonly string[];
281
+ type LoadOptions = {
282
+ readonly verbose?: boolean;
283
+ readonly evalId?: string;
284
+ };
285
+ /**
286
+ * Load eval cases from a AgentV YAML specification file.
287
+ */
288
+ declare function loadEvalCases(evalFilePath: string, repoRoot: URL | string, options?: LoadOptions): Promise<readonly EvalCase[]>;
289
+ /**
290
+ * Build prompt inputs by consolidating user request context and guideline content.
291
+ */
292
+ interface PromptInputs {
293
+ readonly question: string;
294
+ readonly guidelines: string;
295
+ readonly chatPrompt?: ChatPrompt;
296
+ readonly systemMessage?: string;
297
+ }
298
+ declare function buildPromptInputs(testCase: EvalCase): Promise<PromptInputs>;
299
+
300
+ declare function fileExists(filePath: string): Promise<boolean>;
301
+ /**
302
+ * Normalize line endings to LF (\n).
303
+ * This ensures consistent behavior across Windows (CRLF) and Unix (LF) systems.
304
+ */
305
+ declare function normalizeLineEndings(content: string): string;
306
+ /**
307
+ * Read a text file and normalize line endings to LF (\n).
308
+ * This ensures consistent behavior across Windows (CRLF) and Unix (LF) systems.
309
+ */
310
+ declare function readTextFile(filePath: string): Promise<string>;
311
+ /**
312
+ * Find git repository root by walking up the directory tree.
313
+ */
314
+ declare function findGitRoot(startPath: string): Promise<string | null>;
315
+ /**
316
+ * Build a chain of directories walking from a file's location up to repo root.
317
+ * Used for discovering configuration files like targets.yaml or config.yaml.
318
+ */
319
+ declare function buildDirectoryChain(filePath: string, repoRoot: string): readonly string[];
320
+ /**
321
+ * Build search roots for file resolution, matching yaml-parser behavior.
322
+ * Searches from eval file directory up to repo root.
323
+ */
324
+ declare function buildSearchRoots(evalPath: string, repoRoot: string): readonly string[];
325
+ /**
326
+ * Resolve a file reference using search roots, matching yaml-parser behavior.
327
+ */
328
+ declare function resolveFileReference(rawValue: string, searchRoots: readonly string[]): Promise<{
329
+ readonly displayPath: string;
330
+ readonly resolvedPath?: string;
331
+ readonly attempted: readonly string[];
332
+ }>;
333
+
324
334
  interface RetryConfig {
325
335
  readonly maxRetries?: number;
326
336
  readonly initialDelayMs?: number;
@@ -486,12 +496,12 @@ interface EvaluationContext {
486
496
  readonly question: string;
487
497
  readonly guidelines: string;
488
498
  readonly systemMessage?: string;
499
+ readonly chatPrompt?: ChatPrompt;
489
500
  };
490
501
  readonly now: Date;
491
502
  readonly judgeProvider?: Provider;
492
503
  readonly systemPrompt?: string;
493
504
  readonly evaluator?: EvaluatorConfig;
494
- readonly judgeModel?: string;
495
505
  }
496
506
  interface EvaluationScore {
497
507
  readonly score: number;
@@ -594,4 +604,4 @@ type AgentKernel = {
594
604
  };
595
605
  declare function createAgentKernel(): AgentKernel;
596
606
 
597
- export { type AgentKernel, type AnthropicResolvedConfig, type AssistantTestMessage, type AzureResolvedConfig, type CliResolvedConfig, CodeEvaluator, type CodeEvaluatorConfig, type CodeEvaluatorOptions, type EnsureSubagentsOptions, type EnsureSubagentsResult, type EnvLookup, type EvalCase, type EvaluationCache, type EvaluationContext, type EvaluationResult, type EvaluationScore, type Evaluator, type EvaluatorConfig, type EvaluatorKind, type EvaluatorResult, type GeminiResolvedConfig, type JsonObject, type JsonPrimitive, type JsonValue, LlmJudgeEvaluator, type LlmJudgeEvaluatorConfig, type LlmJudgeEvaluatorOptions, type MockResolvedConfig, type ProgressEvent, type Provider, type ProviderKind, type ProviderRequest, type ProviderResponse, type ResolvedTarget, type RunEvalCaseOptions, type RunEvaluationOptions, type SystemTestMessage, TEST_MESSAGE_ROLES, type TargetDefinition, type TestMessage, type TestMessageContent, type TestMessageRole, type ToolTestMessage, type UserTestMessage, type VSCodeResolvedConfig, buildDirectoryChain, buildPromptInputs, buildSearchRoots, consumeCodexLogEntries, createAgentKernel, createProvider, ensureVSCodeSubagents, extractCodeBlocks, fileExists, findGitRoot, getHitCount, isEvaluatorKind, isGuidelineFile, isJsonObject, isJsonValue, isTestMessage, isTestMessageRole, listTargetNames, loadEvalCases, normalizeLineEndings, readTargetDefinitions, readTextFile, resolveAndCreateProvider, resolveFileReference, resolveTargetDefinition, runEvalCase, runEvaluation, subscribeToCodexLogEntries };
607
+ export { type AgentKernel, type AnthropicResolvedConfig, type AssistantTestMessage, type AzureResolvedConfig, type CliResolvedConfig, CodeEvaluator, type CodeEvaluatorConfig, type CodeEvaluatorOptions, type EnsureSubagentsOptions, type EnsureSubagentsResult, type EnvLookup, type EvalCase, type EvaluationCache, type EvaluationContext, type EvaluationResult, type EvaluationScore, type Evaluator, type EvaluatorConfig, type EvaluatorKind, type EvaluatorResult, type GeminiResolvedConfig, type JsonObject, type JsonPrimitive, type JsonValue, LlmJudgeEvaluator, type LlmJudgeEvaluatorConfig, type LlmJudgeEvaluatorOptions, type MockResolvedConfig, type ProgressEvent, type PromptInputs, type Provider, type ProviderKind, type ProviderRequest, type ProviderResponse, type ResolvedTarget, type RunEvalCaseOptions, type RunEvaluationOptions, type SystemTestMessage, TEST_MESSAGE_ROLES, type TargetDefinition, type TestMessage, type TestMessageContent, type TestMessageRole, type ToolTestMessage, type UserTestMessage, type VSCodeResolvedConfig, buildDirectoryChain, buildPromptInputs, buildSearchRoots, consumeCodexLogEntries, createAgentKernel, createProvider, ensureVSCodeSubagents, extractCodeBlocks, fileExists, findGitRoot, getHitCount, isEvaluatorKind, isGuidelineFile, isJsonObject, isJsonValue, isTestMessage, isTestMessageRole, listTargetNames, loadEvalCases, normalizeLineEndings, readTargetDefinitions, readTestSuiteMetadata, readTextFile, resolveAndCreateProvider, resolveFileReference, resolveTargetDefinition, runEvalCase, runEvaluation, subscribeToCodexLogEntries };