@proofhound/optimization-strategy 0.1.6
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/LICENSE +190 -0
- package/dist/error-pattern-analysis/analysis-types.d.ts +45 -0
- package/dist/error-pattern-analysis/analysis-types.d.ts.map +1 -0
- package/dist/error-pattern-analysis/analysis-types.js +3 -0
- package/dist/error-pattern-analysis/analysis-types.js.map +1 -0
- package/dist/error-pattern-analysis/analyze.d.ts +81 -0
- package/dist/error-pattern-analysis/analyze.d.ts.map +1 -0
- package/dist/error-pattern-analysis/analyze.js +423 -0
- package/dist/error-pattern-analysis/analyze.js.map +1 -0
- package/dist/error-pattern-analysis/config.schema.d.ts +16 -0
- package/dist/error-pattern-analysis/config.schema.d.ts.map +1 -0
- package/dist/error-pattern-analysis/config.schema.js +26 -0
- package/dist/error-pattern-analysis/config.schema.js.map +1 -0
- package/dist/error-pattern-analysis/confusion-pairs.d.ts +37 -0
- package/dist/error-pattern-analysis/confusion-pairs.d.ts.map +1 -0
- package/dist/error-pattern-analysis/confusion-pairs.js +109 -0
- package/dist/error-pattern-analysis/confusion-pairs.js.map +1 -0
- package/dist/error-pattern-analysis/generate-initial.d.ts +36 -0
- package/dist/error-pattern-analysis/generate-initial.d.ts.map +1 -0
- package/dist/error-pattern-analysis/generate-initial.js +261 -0
- package/dist/error-pattern-analysis/generate-initial.js.map +1 -0
- package/dist/error-pattern-analysis/generate.d.ts +57 -0
- package/dist/error-pattern-analysis/generate.d.ts.map +1 -0
- package/dist/error-pattern-analysis/generate.js +369 -0
- package/dist/error-pattern-analysis/generate.js.map +1 -0
- package/dist/error-pattern-analysis/index.d.ts +8 -0
- package/dist/error-pattern-analysis/index.d.ts.map +1 -0
- package/dist/error-pattern-analysis/index.js +29 -0
- package/dist/error-pattern-analysis/index.js.map +1 -0
- package/dist/error-pattern-analysis/parse.d.ts +92 -0
- package/dist/error-pattern-analysis/parse.d.ts.map +1 -0
- package/dist/error-pattern-analysis/parse.js +456 -0
- package/dist/error-pattern-analysis/parse.js.map +1 -0
- package/dist/error-pattern-analysis/prompts/analyze-confusion.system.en-US.md +50 -0
- package/dist/error-pattern-analysis/prompts/analyze-confusion.system.md +61 -0
- package/dist/error-pattern-analysis/prompts/analyze-regression.system.en-US.md +50 -0
- package/dist/error-pattern-analysis/prompts/analyze-regression.system.md +61 -0
- package/dist/error-pattern-analysis/prompts/generate-initial.system.en-US.md +43 -0
- package/dist/error-pattern-analysis/prompts/generate-initial.system.md +49 -0
- package/dist/error-pattern-analysis/prompts/generate.system.en-US.md +53 -0
- package/dist/error-pattern-analysis/prompts/generate.system.md +68 -0
- package/dist/error-pattern-analysis/prompts/loader.d.ts +46 -0
- package/dist/error-pattern-analysis/prompts/loader.d.ts.map +1 -0
- package/dist/error-pattern-analysis/prompts/loader.js +109 -0
- package/dist/error-pattern-analysis/prompts/loader.js.map +1 -0
- package/dist/error-pattern-analysis/prompts/optimization-tips.en-US.md +25 -0
- package/dist/error-pattern-analysis/prompts/optimization-tips.md +38 -0
- package/dist/error-pattern-analysis/prompts/summarize.system.en-US.md +48 -0
- package/dist/error-pattern-analysis/prompts/summarize.system.md +69 -0
- package/dist/error-pattern-analysis/prompts.d.ts +79 -0
- package/dist/error-pattern-analysis/prompts.d.ts.map +1 -0
- package/dist/error-pattern-analysis/prompts.js +659 -0
- package/dist/error-pattern-analysis/prompts.js.map +1 -0
- package/dist/error-pattern-analysis/token-budget.d.ts +20 -0
- package/dist/error-pattern-analysis/token-budget.d.ts.map +1 -0
- package/dist/error-pattern-analysis/token-budget.js +88 -0
- package/dist/error-pattern-analysis/token-budget.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +27 -0
- package/dist/index.js.map +1 -0
- package/dist/loop/best.d.ts +3 -0
- package/dist/loop/best.d.ts.map +1 -0
- package/dist/loop/best.js +43 -0
- package/dist/loop/best.js.map +1 -0
- package/dist/loop/goals.d.ts +6 -0
- package/dist/loop/goals.d.ts.map +1 -0
- package/dist/loop/goals.js +38 -0
- package/dist/loop/goals.js.map +1 -0
- package/dist/loop/round-outcome.d.ts +14 -0
- package/dist/loop/round-outcome.d.ts.map +1 -0
- package/dist/loop/round-outcome.js +18 -0
- package/dist/loop/round-outcome.js.map +1 -0
- package/dist/loop/run-iteration-loop.d.ts +5 -0
- package/dist/loop/run-iteration-loop.d.ts.map +1 -0
- package/dist/loop/run-iteration-loop.js +247 -0
- package/dist/loop/run-iteration-loop.js.map +1 -0
- package/dist/loop/types.d.ts +190 -0
- package/dist/loop/types.d.ts.map +1 -0
- package/dist/loop/types.js +13 -0
- package/dist/loop/types.js.map +1 -0
- package/dist/registry.d.ts +5 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +19 -0
- package/dist/registry.js.map +1 -0
- package/dist/types.d.ts +10 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/package.json +52 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-iteration-loop.js","sourceRoot":"","sources":["../../src/loop/run-iteration-loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import type { InvokeLLMDependencies, LLMAdapter, LLMCallLogger, ModelInvocationConfig, RateLimiterLike } from '@proofhound/llm-client';
|
|
2
|
+
import type { PromptLanguageDto } from '@proofhound/shared';
|
|
3
|
+
import type { ProjectType } from '../types';
|
|
4
|
+
export type ComparisonOp = '>=' | '<=' | '>';
|
|
5
|
+
export interface OptimizationGoal {
|
|
6
|
+
metric: string;
|
|
7
|
+
op: ComparisonOp;
|
|
8
|
+
value: number;
|
|
9
|
+
scope: {
|
|
10
|
+
kind: 'overall';
|
|
11
|
+
} | {
|
|
12
|
+
kind: 'class';
|
|
13
|
+
label: string;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export interface MetricSnapshot {
|
|
17
|
+
overall: Record<string, number>;
|
|
18
|
+
perClass?: Record<string, Record<string, number>>;
|
|
19
|
+
}
|
|
20
|
+
export interface JudgmentRuleSet {
|
|
21
|
+
ruleName: string;
|
|
22
|
+
config: unknown;
|
|
23
|
+
}
|
|
24
|
+
export interface PromptVariable {
|
|
25
|
+
name: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
}
|
|
28
|
+
export interface PromptVersionRef {
|
|
29
|
+
id: string;
|
|
30
|
+
promptId: string;
|
|
31
|
+
versionNumber: number;
|
|
32
|
+
body: string;
|
|
33
|
+
outputSchema?: unknown;
|
|
34
|
+
promptLanguage?: PromptLanguageDto;
|
|
35
|
+
judgmentRules?: JudgmentRuleSet;
|
|
36
|
+
variables?: PromptVariable[];
|
|
37
|
+
}
|
|
38
|
+
export interface SampleRecord {
|
|
39
|
+
id: string;
|
|
40
|
+
input: Record<string, unknown>;
|
|
41
|
+
expected?: unknown;
|
|
42
|
+
}
|
|
43
|
+
export interface RunResultRecord {
|
|
44
|
+
id: string;
|
|
45
|
+
sampleId: string;
|
|
46
|
+
parsedOutput?: unknown;
|
|
47
|
+
decisionOutput?: string | null;
|
|
48
|
+
isCorrect?: boolean | null;
|
|
49
|
+
errorMessage?: string | null;
|
|
50
|
+
rawResponse?: string | null;
|
|
51
|
+
}
|
|
52
|
+
export interface ExperimentSnapshot {
|
|
53
|
+
projectId: string;
|
|
54
|
+
projectType: ProjectType;
|
|
55
|
+
sourceExperimentId: string;
|
|
56
|
+
dataset: {
|
|
57
|
+
id: string;
|
|
58
|
+
samples: SampleRecord[];
|
|
59
|
+
};
|
|
60
|
+
taskModel: ModelInvocationConfig;
|
|
61
|
+
judgmentRules: JudgmentRuleSet;
|
|
62
|
+
basePromptVersion: PromptVersionRef;
|
|
63
|
+
lastRunResults: RunResultRecord[];
|
|
64
|
+
lastMetrics: MetricSnapshot;
|
|
65
|
+
}
|
|
66
|
+
export interface FieldWhitelist {
|
|
67
|
+
promptVariables: string[];
|
|
68
|
+
analysisOnlyFields?: string[];
|
|
69
|
+
modifiableSections?: string[];
|
|
70
|
+
}
|
|
71
|
+
export interface OptimizationConfig<TStrategyConfig = unknown> {
|
|
72
|
+
optimizationId: string;
|
|
73
|
+
goals: OptimizationGoal[];
|
|
74
|
+
maxRounds: number;
|
|
75
|
+
fieldWhitelist: FieldWhitelist;
|
|
76
|
+
analysisModel: ModelInvocationConfig;
|
|
77
|
+
analysisLimiterKey: string;
|
|
78
|
+
taskModel: ModelInvocationConfig;
|
|
79
|
+
strategyKey: 'error_pattern_analysis';
|
|
80
|
+
strategyConfig: TStrategyConfig;
|
|
81
|
+
optimizationHint?: string;
|
|
82
|
+
promptLanguage?: PromptLanguageDto;
|
|
83
|
+
}
|
|
84
|
+
export interface GoalProgressEntry {
|
|
85
|
+
goal: OptimizationGoal;
|
|
86
|
+
achieved: boolean;
|
|
87
|
+
observed: number | null;
|
|
88
|
+
}
|
|
89
|
+
export interface RoundOutcome {
|
|
90
|
+
roundNumber: number;
|
|
91
|
+
generatedVersionId: string;
|
|
92
|
+
errorAnalysis: string;
|
|
93
|
+
changeSummary: string;
|
|
94
|
+
experimentId: string;
|
|
95
|
+
runResults: RunResultRecord[];
|
|
96
|
+
metrics: MetricSnapshot;
|
|
97
|
+
isBest: boolean;
|
|
98
|
+
goalProgress: GoalProgressEntry[];
|
|
99
|
+
startedAt: string;
|
|
100
|
+
finishedAt: string;
|
|
101
|
+
}
|
|
102
|
+
export interface RoundHistoryAppliedChange {
|
|
103
|
+
changeId: string;
|
|
104
|
+
patternIds?: string[];
|
|
105
|
+
rationale?: string;
|
|
106
|
+
}
|
|
107
|
+
export interface RoundHistoryEntry {
|
|
108
|
+
roundIndex: number;
|
|
109
|
+
metrics: MetricSnapshot;
|
|
110
|
+
deltaFromPrev: number | null;
|
|
111
|
+
changeSummary: string;
|
|
112
|
+
appliedChanges: RoundHistoryAppliedChange[];
|
|
113
|
+
appliedTips: string[];
|
|
114
|
+
isBest: boolean;
|
|
115
|
+
generatedFromBaseVersionId: string;
|
|
116
|
+
}
|
|
117
|
+
export type OptimizationStatus = 'success' | 'failed' | 'stopped' | 'cancelled';
|
|
118
|
+
export type OptimizationReason = 'goals_met' | 'max_rounds' | 'control_stop' | 'control_cancel' | 'fatal_error';
|
|
119
|
+
export interface OptimizationResult {
|
|
120
|
+
status: OptimizationStatus;
|
|
121
|
+
reason: OptimizationReason;
|
|
122
|
+
bestVersionId: string;
|
|
123
|
+
bestMetrics: MetricSnapshot;
|
|
124
|
+
rounds: RoundOutcome[];
|
|
125
|
+
errorClass?: string;
|
|
126
|
+
errorMessage?: string;
|
|
127
|
+
}
|
|
128
|
+
export interface ExperimentRunnerInput {
|
|
129
|
+
optimizationId: string;
|
|
130
|
+
versionId: string;
|
|
131
|
+
datasetId: string;
|
|
132
|
+
taskModel: ModelInvocationConfig;
|
|
133
|
+
judgmentRules: JudgmentRuleSet;
|
|
134
|
+
roundNumber: number;
|
|
135
|
+
}
|
|
136
|
+
export interface ExperimentRunnerOutput {
|
|
137
|
+
experimentId: string;
|
|
138
|
+
runResults: RunResultRecord[];
|
|
139
|
+
metrics: MetricSnapshot;
|
|
140
|
+
}
|
|
141
|
+
export interface ExperimentRunnerPort {
|
|
142
|
+
runExperiment(input: ExperimentRunnerInput): Promise<ExperimentRunnerOutput>;
|
|
143
|
+
}
|
|
144
|
+
export interface PromptVersionWriteInput {
|
|
145
|
+
promptId: string;
|
|
146
|
+
parentVersionId: string;
|
|
147
|
+
body: string;
|
|
148
|
+
outputSchema?: unknown;
|
|
149
|
+
judgmentRules?: JudgmentRuleSet;
|
|
150
|
+
optimizationId: string;
|
|
151
|
+
changeSummary: string;
|
|
152
|
+
}
|
|
153
|
+
export interface PromptVersionWriterPort {
|
|
154
|
+
writePromptVersion(input: PromptVersionWriteInput): Promise<PromptVersionRef>;
|
|
155
|
+
}
|
|
156
|
+
export interface RoundRecorderPort {
|
|
157
|
+
recordRound(round: RoundOutcome, ctx: {
|
|
158
|
+
optimizationId: string;
|
|
159
|
+
}): Promise<void>;
|
|
160
|
+
recordFinal(result: OptimizationResult, ctx: {
|
|
161
|
+
optimizationId: string;
|
|
162
|
+
}): Promise<void>;
|
|
163
|
+
}
|
|
164
|
+
export type ControlSignal = 'stop' | 'resume' | 'cancel' | null;
|
|
165
|
+
export interface ControlSignalReader {
|
|
166
|
+
read(optimizationId: string): Promise<ControlSignal>;
|
|
167
|
+
}
|
|
168
|
+
export interface PreviousRoundReadInput {
|
|
169
|
+
optimizationId: string;
|
|
170
|
+
sourceExperimentId: string;
|
|
171
|
+
currentRoundNumber: number;
|
|
172
|
+
}
|
|
173
|
+
export interface PreviousRoundRunResultsReaderPort {
|
|
174
|
+
read(input: PreviousRoundReadInput): Promise<RunResultRecord[] | null>;
|
|
175
|
+
}
|
|
176
|
+
export interface LoopPorts {
|
|
177
|
+
experimentRunner: ExperimentRunnerPort;
|
|
178
|
+
promptVersionWriter: PromptVersionWriterPort;
|
|
179
|
+
roundRecorder: RoundRecorderPort;
|
|
180
|
+
controlSignals: ControlSignalReader;
|
|
181
|
+
previousRoundRunResultsReader: PreviousRoundRunResultsReaderPort;
|
|
182
|
+
}
|
|
183
|
+
export interface LoopDependencies {
|
|
184
|
+
llmAdapter?: LLMAdapter;
|
|
185
|
+
limiter: RateLimiterLike;
|
|
186
|
+
logger: LLMCallLogger;
|
|
187
|
+
now?: () => number;
|
|
188
|
+
}
|
|
189
|
+
export declare function toInvokeLLMDependencies(deps: LoopDependencies): InvokeLLMDependencies;
|
|
190
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/loop/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toInvokeLLMDependencies = toInvokeLLMDependencies;
|
|
4
|
+
// Internal helper: wrap LoopDependencies into dependencies usable by invokeLLM — shared by analyze/generate
|
|
5
|
+
function toInvokeLLMDependencies(deps) {
|
|
6
|
+
return {
|
|
7
|
+
limiter: deps.limiter,
|
|
8
|
+
logger: deps.logger,
|
|
9
|
+
adapters: deps.llmAdapter ? [deps.llmAdapter] : undefined,
|
|
10
|
+
now: deps.now,
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/loop/types.ts"],"names":[],"mappings":";;AAqOA,0DAOC;AARD,4GAA4G;AAC5G,SAAgB,uBAAuB,CAAC,IAAsB;IAC5D,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;QACzD,GAAG,EAAE,IAAI,CAAC,GAAG;KACd,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { OptimizationStrategy, ProjectType } from './types';
|
|
2
|
+
export declare function registerStrategy(s: OptimizationStrategy): void;
|
|
3
|
+
export declare function getStrategy(key: string): OptimizationStrategy;
|
|
4
|
+
export declare function listStrategiesFor(projectType: ProjectType): OptimizationStrategy[];
|
|
5
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAIjE,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,oBAAoB,QAEvD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAI7D;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,WAAW,0BAEzD"}
|
package/dist/registry.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerStrategy = registerStrategy;
|
|
4
|
+
exports.getStrategy = getStrategy;
|
|
5
|
+
exports.listStrategiesFor = listStrategiesFor;
|
|
6
|
+
const registry = new Map();
|
|
7
|
+
function registerStrategy(s) {
|
|
8
|
+
registry.set(s.key, s);
|
|
9
|
+
}
|
|
10
|
+
function getStrategy(key) {
|
|
11
|
+
const s = registry.get(key);
|
|
12
|
+
if (!s)
|
|
13
|
+
throw new Error(`Unknown optimization strategy: ${key}`);
|
|
14
|
+
return s;
|
|
15
|
+
}
|
|
16
|
+
function listStrategiesFor(projectType) {
|
|
17
|
+
return [...registry.values()].filter((s) => s.projectTypes.includes(projectType));
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":";;AAIA,4CAEC;AAED,kCAIC;AAED,8CAEC;AAdD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAgC,CAAC;AAEzD,SAAgB,gBAAgB,CAAC,CAAuB;IACtD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AACzB,CAAC;AAED,SAAgB,WAAW,CAAC,GAAW;IACrC,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,EAAE,CAAC,CAAC;IACjE,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAgB,iBAAiB,CAAC,WAAwB;IACxD,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;AACpF,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
export type ProjectType = 'classification' | 'generative' | 'agent';
|
|
3
|
+
export interface OptimizationStrategy {
|
|
4
|
+
key: string;
|
|
5
|
+
displayName: string;
|
|
6
|
+
description: string;
|
|
7
|
+
projectTypes: ProjectType[];
|
|
8
|
+
configSchema: z.ZodSchema;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG,YAAY,GAAG,OAAO,CAAC;AAEpE,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC;CAE3B"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
package/package.json
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@proofhound/optimization-strategy",
|
|
3
|
+
"version": "0.1.6",
|
|
4
|
+
"description": "优化策略(扩展点)— V1: error_pattern_analysis;可注册新策略,无需 DB CHECK 改动",
|
|
5
|
+
"main": "./dist/index.js",
|
|
6
|
+
"types": "./dist/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": "./dist/index.js"
|
|
9
|
+
},
|
|
10
|
+
"dependencies": {
|
|
11
|
+
"jsonrepair": "^3.14.0",
|
|
12
|
+
"zod": "^4.4.3",
|
|
13
|
+
"@proofhound/limiter": "0.1.6",
|
|
14
|
+
"@proofhound/llm-client": "0.1.6",
|
|
15
|
+
"@proofhound/judgment": "0.1.6",
|
|
16
|
+
"@proofhound/logger": "0.1.6",
|
|
17
|
+
"@proofhound/shared": "0.1.6",
|
|
18
|
+
"@proofhound/metrics": "0.1.6"
|
|
19
|
+
},
|
|
20
|
+
"devDependencies": {
|
|
21
|
+
"@types/node": "^24.12.4",
|
|
22
|
+
"tsx": "^4.21.1",
|
|
23
|
+
"typescript": "^6.0.3",
|
|
24
|
+
"vitest": "^4.1.6"
|
|
25
|
+
},
|
|
26
|
+
"license": "Apache-2.0",
|
|
27
|
+
"repository": {
|
|
28
|
+
"type": "git",
|
|
29
|
+
"url": "https://github.com/proofhound/proofhound",
|
|
30
|
+
"directory": "packages/optimization-strategy"
|
|
31
|
+
},
|
|
32
|
+
"homepage": "https://github.com/proofhound/proofhound/tree/master/packages/optimization-strategy#readme",
|
|
33
|
+
"files": [
|
|
34
|
+
"dist",
|
|
35
|
+
"README.md",
|
|
36
|
+
"LICENSE"
|
|
37
|
+
],
|
|
38
|
+
"publishConfig": {
|
|
39
|
+
"access": "public",
|
|
40
|
+
"registry": "https://registry.npmjs.org/"
|
|
41
|
+
},
|
|
42
|
+
"scripts": {
|
|
43
|
+
"build": "rm -rf dist && tsc -p tsconfig.build.json && node scripts/copy-prompt-assets.mjs",
|
|
44
|
+
"typecheck": "tsc --noEmit",
|
|
45
|
+
"lint": "eslint \"src/**/*.ts\"",
|
|
46
|
+
"test": "vitest run --config vitest.config.ts --passWithNoTests",
|
|
47
|
+
"test:unit": "vitest run --config vitest.config.ts --passWithNoTests",
|
|
48
|
+
"test:integration": "vitest run --config vitest.integration.config.ts",
|
|
49
|
+
"example:real-llm": "tsx examples/run-real-llm.ts",
|
|
50
|
+
"clean": "rm -rf dist .turbo"
|
|
51
|
+
}
|
|
52
|
+
}
|