@uluops/core 0.5.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.
- package/README.md +543 -0
- package/definitions/starter/code-validator.agent.yaml +134 -0
- package/definitions/starter/docs-validator.agent.yaml +142 -0
- package/definitions/starter/public-interface-validator.agent.yaml +138 -0
- package/definitions/starter/security-analyst.agent.yaml +144 -0
- package/definitions/starter/test-architect.agent.yaml +137 -0
- package/dist/ai/AIProvider.d.ts +198 -0
- package/dist/ai/AIProvider.d.ts.map +1 -0
- package/dist/ai/AIProvider.js +557 -0
- package/dist/ai/AIProvider.js.map +1 -0
- package/dist/ai/ModelCatalog.d.ts +78 -0
- package/dist/ai/ModelCatalog.d.ts.map +1 -0
- package/dist/ai/ModelCatalog.js +193 -0
- package/dist/ai/ModelCatalog.js.map +1 -0
- package/dist/ai/ShellExecutor.d.ts +42 -0
- package/dist/ai/ShellExecutor.d.ts.map +1 -0
- package/dist/ai/ShellExecutor.js +62 -0
- package/dist/ai/ShellExecutor.js.map +1 -0
- package/dist/ai/TokenBudgetTracker.d.ts +49 -0
- package/dist/ai/TokenBudgetTracker.d.ts.map +1 -0
- package/dist/ai/TokenBudgetTracker.js +61 -0
- package/dist/ai/TokenBudgetTracker.js.map +1 -0
- package/dist/ai/ToolAdapter.d.ts +25 -0
- package/dist/ai/ToolAdapter.d.ts.map +1 -0
- package/dist/ai/ToolAdapter.js +135 -0
- package/dist/ai/ToolAdapter.js.map +1 -0
- package/dist/ai/index.d.ts +6 -0
- package/dist/ai/index.d.ts.map +1 -0
- package/dist/ai/index.js +4 -0
- package/dist/ai/index.js.map +1 -0
- package/dist/client/UluOpsClient.d.ts +111 -0
- package/dist/client/UluOpsClient.d.ts.map +1 -0
- package/dist/client/UluOpsClient.js +329 -0
- package/dist/client/UluOpsClient.js.map +1 -0
- package/dist/constants.d.ts +6 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +9 -0
- package/dist/constants.js.map +1 -0
- package/dist/errors/UluOpsError.d.ts +10 -0
- package/dist/errors/UluOpsError.d.ts.map +1 -0
- package/dist/errors/UluOpsError.js +13 -0
- package/dist/errors/UluOpsError.js.map +1 -0
- package/dist/errors/index.d.ts +64 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +93 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/executor/AgentExecutor.d.ts +57 -0
- package/dist/executor/AgentExecutor.d.ts.map +1 -0
- package/dist/executor/AgentExecutor.js +331 -0
- package/dist/executor/AgentExecutor.js.map +1 -0
- package/dist/executor/CommandExecutor.d.ts +33 -0
- package/dist/executor/CommandExecutor.d.ts.map +1 -0
- package/dist/executor/CommandExecutor.js +183 -0
- package/dist/executor/CommandExecutor.js.map +1 -0
- package/dist/executor/PipelineExecutor.d.ts +55 -0
- package/dist/executor/PipelineExecutor.d.ts.map +1 -0
- package/dist/executor/PipelineExecutor.js +273 -0
- package/dist/executor/PipelineExecutor.js.map +1 -0
- package/dist/executor/ToolHandler.d.ts +47 -0
- package/dist/executor/ToolHandler.d.ts.map +1 -0
- package/dist/executor/ToolHandler.js +615 -0
- package/dist/executor/ToolHandler.js.map +1 -0
- package/dist/executor/WorkflowExecutor.d.ts +55 -0
- package/dist/executor/WorkflowExecutor.d.ts.map +1 -0
- package/dist/executor/WorkflowExecutor.js +368 -0
- package/dist/executor/WorkflowExecutor.js.map +1 -0
- package/dist/executor/preflight.d.ts +8 -0
- package/dist/executor/preflight.d.ts.map +1 -0
- package/dist/executor/preflight.js +102 -0
- package/dist/executor/preflight.js.map +1 -0
- package/dist/executor/symbols.d.ts +13 -0
- package/dist/executor/symbols.d.ts.map +1 -0
- package/dist/executor/symbols.js +102 -0
- package/dist/executor/symbols.js.map +1 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +25 -0
- package/dist/index.js.map +1 -0
- package/dist/parser/OutputExtractor.d.ts +52 -0
- package/dist/parser/OutputExtractor.d.ts.map +1 -0
- package/dist/parser/OutputExtractor.js +818 -0
- package/dist/parser/OutputExtractor.js.map +1 -0
- package/dist/parser/outputSchemas.d.ts +223 -0
- package/dist/parser/outputSchemas.d.ts.map +1 -0
- package/dist/parser/outputSchemas.js +73 -0
- package/dist/parser/outputSchemas.js.map +1 -0
- package/dist/registry/RegistryClient.d.ts +75 -0
- package/dist/registry/RegistryClient.d.ts.map +1 -0
- package/dist/registry/RegistryClient.js +419 -0
- package/dist/registry/RegistryClient.js.map +1 -0
- package/dist/registry/index.d.ts +2 -0
- package/dist/registry/index.d.ts.map +1 -0
- package/dist/registry/index.js +2 -0
- package/dist/registry/index.js.map +1 -0
- package/dist/types/agent.d.ts +406 -0
- package/dist/types/agent.d.ts.map +1 -0
- package/dist/types/agent.js +2 -0
- package/dist/types/agent.js.map +1 -0
- package/dist/types/ai.d.ts +14 -0
- package/dist/types/ai.d.ts.map +1 -0
- package/dist/types/ai.js +2 -0
- package/dist/types/ai.js.map +1 -0
- package/dist/types/command.d.ts +153 -0
- package/dist/types/command.d.ts.map +1 -0
- package/dist/types/command.js +2 -0
- package/dist/types/command.js.map +1 -0
- package/dist/types/config.d.ts +136 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +2 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/execution.d.ts +172 -0
- package/dist/types/execution.d.ts.map +1 -0
- package/dist/types/execution.js +2 -0
- package/dist/types/execution.js.map +1 -0
- package/dist/types/index.d.ts +12 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/parser.d.ts +75 -0
- package/dist/types/parser.d.ts.map +1 -0
- package/dist/types/parser.js +2 -0
- package/dist/types/parser.js.map +1 -0
- package/dist/types/pipeline.d.ts +155 -0
- package/dist/types/pipeline.d.ts.map +1 -0
- package/dist/types/pipeline.js +2 -0
- package/dist/types/pipeline.js.map +1 -0
- package/dist/types/registry.d.ts +232 -0
- package/dist/types/registry.d.ts.map +1 -0
- package/dist/types/registry.js +2 -0
- package/dist/types/registry.js.map +1 -0
- package/dist/types/tools.d.ts +29 -0
- package/dist/types/tools.d.ts.map +1 -0
- package/dist/types/tools.js +2 -0
- package/dist/types/tools.js.map +1 -0
- package/dist/types/validation.d.ts +237 -0
- package/dist/types/validation.d.ts.map +1 -0
- package/dist/types/validation.js +2 -0
- package/dist/types/validation.js.map +1 -0
- package/dist/types/workflow.d.ts +131 -0
- package/dist/types/workflow.d.ts.map +1 -0
- package/dist/types/workflow.js +2 -0
- package/dist/types/workflow.js.map +1 -0
- package/dist/utils/formatError.d.ts +6 -0
- package/dist/utils/formatError.d.ts.map +1 -0
- package/dist/utils/formatError.js +10 -0
- package/dist/utils/formatError.js.map +1 -0
- package/dist/utils/parseRef.d.ts +11 -0
- package/dist/utils/parseRef.d.ts.map +1 -0
- package/dist/utils/parseRef.js +16 -0
- package/dist/utils/parseRef.js.map +1 -0
- package/dist/utils/sumTokenMetrics.d.ts +9 -0
- package/dist/utils/sumTokenMetrics.d.ts.map +1 -0
- package/dist/utils/sumTokenMetrics.js +20 -0
- package/dist/utils/sumTokenMetrics.js.map +1 -0
- package/dist/utils/topoSort.d.ts +24 -0
- package/dist/utils/topoSort.d.ts.map +1 -0
- package/dist/utils/topoSort.js +60 -0
- package/dist/utils/topoSort.js.map +1 -0
- package/dist/validation/ValidationClient.d.ts +51 -0
- package/dist/validation/ValidationClient.d.ts.map +1 -0
- package/dist/validation/ValidationClient.js +179 -0
- package/dist/validation/ValidationClient.js.map +1 -0
- package/dist/validation/index.d.ts +2 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +2 -0
- package/dist/validation/index.js.map +1 -0
- package/package.json +76 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Symbol extraction from source files.
|
|
3
|
+
* Extracts exported/private functions, classes, interfaces, types, constants.
|
|
4
|
+
*/
|
|
5
|
+
export function extractSymbols(lines, ext, includePrivate) {
|
|
6
|
+
const symbols = [];
|
|
7
|
+
const isTS = ['.ts', '.tsx', '.js', '.jsx', '.mjs', '.cjs'].includes(ext);
|
|
8
|
+
const isPython = ext === '.py';
|
|
9
|
+
if (isTS) {
|
|
10
|
+
extractTSSymbols(lines, symbols);
|
|
11
|
+
}
|
|
12
|
+
else if (isPython) {
|
|
13
|
+
extractPythonSymbols(lines, symbols);
|
|
14
|
+
}
|
|
15
|
+
if (!includePrivate) {
|
|
16
|
+
return symbols.filter((s) => s.exported);
|
|
17
|
+
}
|
|
18
|
+
return symbols;
|
|
19
|
+
}
|
|
20
|
+
function extractTSSymbols(lines, symbols) {
|
|
21
|
+
const patterns = [
|
|
22
|
+
{ regex: /^export\s+(async\s+)?function\s+(\w+)/, type: 'function' },
|
|
23
|
+
{ regex: /^export\s+class\s+(\w+)/, type: 'class' },
|
|
24
|
+
{ regex: /^export\s+interface\s+(\w+)/, type: 'interface' },
|
|
25
|
+
{ regex: /^export\s+type\s+(\w+)/, type: 'type' },
|
|
26
|
+
{ regex: /^export\s+(?:const|let|var)\s+(\w+)/, type: 'const' },
|
|
27
|
+
{ regex: /^export\s+enum\s+(\w+)/, type: 'enum' },
|
|
28
|
+
{ regex: /^export\s+default\s+(?:class|function)\s*(\w*)/, type: 'default' },
|
|
29
|
+
// Non-exported
|
|
30
|
+
{ regex: /^(?:async\s+)?function\s+(\w+)/, type: 'function' },
|
|
31
|
+
{ regex: /^class\s+(\w+)/, type: 'class' },
|
|
32
|
+
{ regex: /^interface\s+(\w+)/, type: 'interface' },
|
|
33
|
+
{ regex: /^type\s+(\w+)/, type: 'type' },
|
|
34
|
+
{ regex: /^(?:const|let|var)\s+(\w+)/, type: 'const' },
|
|
35
|
+
{ regex: /^enum\s+(\w+)/, type: 'enum' },
|
|
36
|
+
];
|
|
37
|
+
for (let i = 0; i < lines.length; i++) {
|
|
38
|
+
const line = lines[i].trim();
|
|
39
|
+
for (const p of patterns) {
|
|
40
|
+
const match = p.regex.exec(line);
|
|
41
|
+
if (match) {
|
|
42
|
+
const exported = line.startsWith('export');
|
|
43
|
+
// For function patterns with async, name is in group 2 for exported, else group 1
|
|
44
|
+
let name;
|
|
45
|
+
if (p.type === 'function' && exported) {
|
|
46
|
+
name = match[2] ?? match[1] ?? '';
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
name = match[1] ?? '';
|
|
50
|
+
}
|
|
51
|
+
if (!name)
|
|
52
|
+
continue;
|
|
53
|
+
// Build signature for functions
|
|
54
|
+
let signature;
|
|
55
|
+
if (p.type === 'function') {
|
|
56
|
+
// Capture up to closing paren and return type
|
|
57
|
+
const sigMatch = /function\s+\w+\s*(\([^)]*\)(?:\s*:\s*\S+)?)/.exec(line);
|
|
58
|
+
if (sigMatch) {
|
|
59
|
+
signature = `${name}${sigMatch[1]}`;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
symbols.push({
|
|
63
|
+
type: p.type,
|
|
64
|
+
name,
|
|
65
|
+
line: i + 1,
|
|
66
|
+
exported,
|
|
67
|
+
...(signature ? { signature } : {}),
|
|
68
|
+
});
|
|
69
|
+
break; // Only match first pattern per line
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
function extractPythonSymbols(lines, symbols) {
|
|
75
|
+
for (let i = 0; i < lines.length; i++) {
|
|
76
|
+
const line = lines[i];
|
|
77
|
+
// Top-level functions (no indentation)
|
|
78
|
+
const funcMatch = /^(async\s+)?def\s+(\w+)\s*\(([^)]*)\)/.exec(line);
|
|
79
|
+
if (funcMatch) {
|
|
80
|
+
const name = funcMatch[2];
|
|
81
|
+
symbols.push({
|
|
82
|
+
type: 'function',
|
|
83
|
+
name,
|
|
84
|
+
line: i + 1,
|
|
85
|
+
exported: !name.startsWith('_'),
|
|
86
|
+
signature: `${name}(${funcMatch[3]})`,
|
|
87
|
+
});
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
// Top-level classes (no indentation)
|
|
91
|
+
const classMatch = /^class\s+(\w+)/.exec(line);
|
|
92
|
+
if (classMatch) {
|
|
93
|
+
symbols.push({
|
|
94
|
+
type: 'class',
|
|
95
|
+
name: classMatch[1],
|
|
96
|
+
line: i + 1,
|
|
97
|
+
exported: !classMatch[1].startsWith('_'),
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=symbols.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"symbols.js","sourceRoot":"","sources":["../../src/executor/symbols.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export { UluOpsClient } from './client/UluOpsClient.js';
|
|
2
|
+
export { AgentExecutor } from './executor/AgentExecutor.js';
|
|
3
|
+
export { CommandExecutor } from './executor/CommandExecutor.js';
|
|
4
|
+
export { WorkflowExecutor } from './executor/WorkflowExecutor.js';
|
|
5
|
+
export { PipelineExecutor } from './executor/PipelineExecutor.js';
|
|
6
|
+
export { RegistryClient } from './registry/RegistryClient.js';
|
|
7
|
+
export { ValidationClient } from './validation/ValidationClient.js';
|
|
8
|
+
export { AIProvider } from './ai/AIProvider.js';
|
|
9
|
+
export type { AIGenerateResult, AIGenerateOptions } from './ai/AIProvider.js';
|
|
10
|
+
export { ModelCatalog } from './ai/ModelCatalog.js';
|
|
11
|
+
export type { ResolvedModel, ResolveOptions } from './ai/ModelCatalog.js';
|
|
12
|
+
export { ToolAdapter } from './ai/ToolAdapter.js';
|
|
13
|
+
export { TokenBudgetTracker } from './ai/TokenBudgetTracker.js';
|
|
14
|
+
export { OutputExtractor } from './parser/OutputExtractor.js';
|
|
15
|
+
export { ToolHandler } from './executor/ToolHandler.js';
|
|
16
|
+
export { parseRef } from './utils/parseRef.js';
|
|
17
|
+
export { STARTER_DEFINITIONS_DIR } from './constants.js';
|
|
18
|
+
export type { UluOpsConfig, AIConfig, AIProviderCredentials, ResolvedConfig, ResolvedAIConfig } from './types/config.js';
|
|
19
|
+
export type { DefinitionType, ExecutionType, Domain, AgentType, ExecutionInput, ExecutionResult, ExecutionMetrics, ExecutionOptions, ResolvedExecutionContext, Recommendation, } from './types/execution.js';
|
|
20
|
+
export type { AgentDefinition, AgentInterface, AgentDefaults, AgentMission, AgentScoring, AgentDecisions, AgentTasks, AgentCompletion, AgentOutput, ScoringCategory, ScoringCriterion, AgentResult, ValidatorAgentResult, ExecutorAgentResult, } from './types/agent.js';
|
|
21
|
+
export type { CommandDefinition, CommandResult, CommandMetrics, CategoryResult, Finding, Issue, ArtifactResult, PreflightCheck, PostflightAction, } from './types/command.js';
|
|
22
|
+
export type { WorkflowDefinition, WorkflowResult, WorkflowMetrics, PhaseDefinition, PhaseResult, CommandMetricsSummary, } from './types/workflow.js';
|
|
23
|
+
export type { PipelineDefinition, PipelineResult, PipelineMetrics, StageDefinition, StageResult, TriggerDefinition, TriggerInfo, PipelineArtifact, PipelineHandle, PipelineState, } from './types/pipeline.js';
|
|
24
|
+
export type { ResolvedDefinition, DefinitionSummary, Reference, } from './types/registry.js';
|
|
25
|
+
export type { RunSubmission, RunSubmissionResponse, RunHistoryEntry, ValidationQueryOptions, FingerprintedRecommendation, RegressionInfo, } from './types/validation.js';
|
|
26
|
+
export type { ParsedOutput, ParsedCategory, ParsedFinding, ExtractionOptions, ExtractionResult, } from './types/parser.js';
|
|
27
|
+
export type { Tool, ToolUseBlock, ToolResult } from './types/tools.js';
|
|
28
|
+
export type { UsageMetrics } from './types/ai.js';
|
|
29
|
+
export type { Logger } from '@uluops/sdk-core';
|
|
30
|
+
export { UluOpsError, ExecutionError, PreflightError, ConfigurationError, ModelNotFoundError, CapabilityError, ValidationError, ValidationErrorCodes, type ValidationErrorCode, WorkflowError, PipelineError, ParseError, } from './errors/index.js';
|
|
31
|
+
export { SdkApiError, RateLimitError, UnauthorizedError, ForbiddenError, NotFoundError, ServiceUnavailableError, NetworkError, TimeoutError, } from './errors/index.js';
|
|
32
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// ─── Main Client ──────────────────────────────────────────────────────────────
|
|
2
|
+
export { UluOpsClient } from './client/UluOpsClient.js';
|
|
3
|
+
// ─── Executors (for advanced usage) ───────────────────────────────────────────
|
|
4
|
+
export { AgentExecutor } from './executor/AgentExecutor.js';
|
|
5
|
+
export { CommandExecutor } from './executor/CommandExecutor.js';
|
|
6
|
+
export { WorkflowExecutor } from './executor/WorkflowExecutor.js';
|
|
7
|
+
export { PipelineExecutor } from './executor/PipelineExecutor.js';
|
|
8
|
+
// ─── Service Clients ──────────────────────────────────────────────────────────
|
|
9
|
+
export { RegistryClient } from './registry/RegistryClient.js';
|
|
10
|
+
export { ValidationClient } from './validation/ValidationClient.js';
|
|
11
|
+
// ─── AI SDK Integration ───────────────────────────────────────────────────────
|
|
12
|
+
export { AIProvider } from './ai/AIProvider.js';
|
|
13
|
+
export { ModelCatalog } from './ai/ModelCatalog.js';
|
|
14
|
+
export { ToolAdapter } from './ai/ToolAdapter.js';
|
|
15
|
+
export { TokenBudgetTracker } from './ai/TokenBudgetTracker.js';
|
|
16
|
+
// ─── Utilities ────────────────────────────────────────────────────────────────
|
|
17
|
+
export { OutputExtractor } from './parser/OutputExtractor.js';
|
|
18
|
+
export { ToolHandler } from './executor/ToolHandler.js';
|
|
19
|
+
export { parseRef } from './utils/parseRef.js';
|
|
20
|
+
export { STARTER_DEFINITIONS_DIR } from './constants.js';
|
|
21
|
+
// ─── Errors: Core SDK ─────────────────────────────────────────────────────────
|
|
22
|
+
export { UluOpsError, ExecutionError, PreflightError, ConfigurationError, ModelNotFoundError, CapabilityError, ValidationError, ValidationErrorCodes, WorkflowError, PipelineError, ParseError, } from './errors/index.js';
|
|
23
|
+
// ─── Errors: Re-exported from @uluops/sdk-core ───────────────────────────────
|
|
24
|
+
export { SdkApiError, RateLimitError, UnauthorizedError, ForbiddenError, NotFoundError, ServiceUnavailableError, NetworkError, TimeoutError, } from './errors/index.js';
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,iFAAiF;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,iFAAiF;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,iFAAiF;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,iFAAiF;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AA6GzD,iFAAiF;AACjF,OAAO,EACL,WAAW,EACX,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,oBAAoB,EAEpB,aAAa,EACb,aAAa,EACb,UAAU,GACX,MAAM,mBAAmB,CAAC;AAE3B,gFAAgF;AAChF,OAAO,EACL,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,uBAAuB,EACvB,YAAY,EACZ,YAAY,GACb,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { AgentType } from '../types/execution.js';
|
|
2
|
+
import type { ParsedOutput, ExtractionOptions, ExtractionResult } from '../types/parser.js';
|
|
3
|
+
/**
|
|
4
|
+
* Extracts structured output from LLM responses using a 3-strategy fallback:
|
|
5
|
+
* 1. JSON code fence (highest confidence)
|
|
6
|
+
* 2. Inline JSON detection
|
|
7
|
+
* 3. Structured text pattern matching (lowest confidence)
|
|
8
|
+
*/
|
|
9
|
+
export declare class OutputExtractor {
|
|
10
|
+
private static readonly INLINE_JSON_PATTERN;
|
|
11
|
+
private static readonly STRUCTURED_PATTERNS;
|
|
12
|
+
/**
|
|
13
|
+
* Extract structured output from LLM response text
|
|
14
|
+
*/
|
|
15
|
+
extract(content: string, agentType: AgentType, options?: ExtractionOptions): ParsedOutput;
|
|
16
|
+
/**
|
|
17
|
+
* Extract with full metadata about extraction method and confidence
|
|
18
|
+
*/
|
|
19
|
+
extractWithMetadata(content: string, agentType: AgentType, options?: ExtractionOptions): ExtractionResult;
|
|
20
|
+
private extractFromCodeFence;
|
|
21
|
+
private extractWholeJson;
|
|
22
|
+
private extractInlineJson;
|
|
23
|
+
private extractBalancedJson;
|
|
24
|
+
private extractFromStructuredText;
|
|
25
|
+
private extractIssuesFromText;
|
|
26
|
+
private inferPriorityFromContext;
|
|
27
|
+
private inferSeverityFromContext;
|
|
28
|
+
/** Resolved source objects from common nesting patterns. Reduces parameter passing across resolve methods. */
|
|
29
|
+
private buildParseSources;
|
|
30
|
+
private normalizeOutput;
|
|
31
|
+
private resolveValidatorFields;
|
|
32
|
+
private attachFlatIssues;
|
|
33
|
+
private asRecord;
|
|
34
|
+
/**
|
|
35
|
+
* Scan all top-level object values for one that contains 'score' or 'decision'.
|
|
36
|
+
* Handles arbitrary wrapper names (validation, validations, validationResults, etc.)
|
|
37
|
+
* without whitelisting specific field names.
|
|
38
|
+
*/
|
|
39
|
+
private findWrapperWithScoreOrDecision;
|
|
40
|
+
private resolveDecisionField;
|
|
41
|
+
private resolveScoreField;
|
|
42
|
+
private resolveCategories;
|
|
43
|
+
private resolveIssuesFlat;
|
|
44
|
+
private normalizeDecision;
|
|
45
|
+
private parseCategories;
|
|
46
|
+
private parseFindings;
|
|
47
|
+
private parseIssues;
|
|
48
|
+
private parseArtifacts;
|
|
49
|
+
private normalizePriority;
|
|
50
|
+
private normalizeSeverity;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=OutputExtractor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OutputExtractor.d.ts","sourceRoot":"","sources":["../../src/parser/OutputExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,KAAK,EACV,YAAY,EAGZ,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAG5B;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAyD;IACpG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAYzC;IAEF;;OAEG;IACH,OAAO,CACL,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE,iBAAsB,GAC9B,YAAY;IAKf;;OAEG;IACH,mBAAmB,CACjB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE,iBAAsB,GAC9B,gBAAgB;IAoEnB,OAAO,CAAC,oBAAoB;IAmB5B,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,iBAAiB;IAoDzB,OAAO,CAAC,mBAAmB;IAqC3B,OAAO,CAAC,yBAAyB;IA0DjC,OAAO,CAAC,qBAAqB;IAwB7B,OAAO,CAAC,wBAAwB;IAQhC,OAAO,CAAC,wBAAwB;IAQhC,8GAA8G;IAC9G,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,sBAAsB;IA6B9B,OAAO,CAAC,gBAAgB;IAmCxB,OAAO,CAAC,QAAQ;IAMhB;;;;OAIG;IACH,OAAO,CAAC,8BAA8B;IAgBtC,OAAO,CAAC,oBAAoB;IAqC5B,OAAO,CAAC,iBAAiB;IA8DzB,OAAO,CAAC,iBAAiB;IA8EzB,OAAO,CAAC,iBAAiB;IAiDzB,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,WAAW;IAmGnB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,iBAAiB;CAQ1B"}
|