oh-my-knowledge 0.23.0 → 0.24.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 +63 -64
- package/README.zh.md +64 -63
- package/dist/src/analysis/report-diagnostics.d.ts +3 -2
- package/dist/src/analysis/report-diagnostics.d.ts.map +1 -1
- package/dist/src/analysis/report-diagnostics.js +107 -80
- package/dist/src/analysis/report-diagnostics.js.map +1 -1
- package/dist/src/analysis/sample-diagnostics.d.ts +4 -1
- package/dist/src/analysis/sample-diagnostics.d.ts.map +1 -1
- package/dist/src/analysis/sample-diagnostics.js +123 -29
- package/dist/src/analysis/sample-diagnostics.js.map +1 -1
- package/dist/src/authoring/evolver.d.ts +5 -0
- package/dist/src/authoring/evolver.d.ts.map +1 -1
- package/dist/src/authoring/evolver.js +20 -3
- package/dist/src/authoring/evolver.js.map +1 -1
- package/dist/src/cli/i18n-dict.d.ts +1 -1
- package/dist/src/cli/i18n-dict.d.ts.map +1 -1
- package/dist/src/cli/i18n-dict.js +28 -24
- package/dist/src/cli/i18n-dict.js.map +1 -1
- package/dist/src/cli/index.js +80 -66
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/cli/parse-run-config.d.ts.map +1 -1
- package/dist/src/cli/parse-run-config.js +4 -4
- package/dist/src/cli/parse-run-config.js.map +1 -1
- package/dist/src/cli/progress.d.ts +1 -0
- package/dist/src/cli/progress.d.ts.map +1 -1
- package/dist/src/cli/progress.js +8 -1
- package/dist/src/cli/progress.js.map +1 -1
- package/dist/src/eval-core/cache.d.ts +7 -5
- package/dist/src/eval-core/cache.d.ts.map +1 -1
- package/dist/src/eval-core/cache.js +11 -7
- package/dist/src/eval-core/cache.js.map +1 -1
- package/dist/src/eval-core/comparability.d.ts +11 -0
- package/dist/src/eval-core/comparability.d.ts.map +1 -0
- package/dist/src/eval-core/comparability.js +271 -0
- package/dist/src/eval-core/comparability.js.map +1 -0
- package/dist/src/eval-core/evaluation-execution.d.ts +4 -1
- package/dist/src/eval-core/evaluation-execution.d.ts.map +1 -1
- package/dist/src/eval-core/evaluation-execution.js +25 -17
- package/dist/src/eval-core/evaluation-execution.js.map +1 -1
- package/dist/src/eval-core/evaluation-job.d.ts +2 -2
- package/dist/src/eval-core/evaluation-job.d.ts.map +1 -1
- package/dist/src/eval-core/evaluation-job.js +2 -2
- package/dist/src/eval-core/evaluation-job.js.map +1 -1
- package/dist/src/eval-core/evaluation-reporting.d.ts +3 -1
- package/dist/src/eval-core/evaluation-reporting.d.ts.map +1 -1
- package/dist/src/eval-core/evaluation-reporting.js +64 -4
- package/dist/src/eval-core/evaluation-reporting.js.map +1 -1
- package/dist/src/eval-core/execution-strategy.js +2 -2
- package/dist/src/eval-core/execution-strategy.js.map +1 -1
- package/dist/src/eval-core/schema.d.ts.map +1 -1
- package/dist/src/eval-core/schema.js +13 -0
- package/dist/src/eval-core/schema.js.map +1 -1
- package/dist/src/eval-workflows/batch-evaluation-workflow.d.ts +111 -0
- package/dist/src/eval-workflows/batch-evaluation-workflow.d.ts.map +1 -0
- package/dist/src/eval-workflows/batch-evaluation-workflow.js +215 -0
- package/dist/src/eval-workflows/batch-evaluation-workflow.js.map +1 -0
- package/dist/src/eval-workflows/evaluation-pipeline.d.ts +5 -3
- package/dist/src/eval-workflows/evaluation-pipeline.d.ts.map +1 -1
- package/dist/src/eval-workflows/evaluation-pipeline.js +6 -5
- package/dist/src/eval-workflows/evaluation-pipeline.js.map +1 -1
- package/dist/src/eval-workflows/evaluation-preparation.d.ts +8 -6
- package/dist/src/eval-workflows/evaluation-preparation.d.ts.map +1 -1
- package/dist/src/eval-workflows/evaluation-preparation.js +8 -4
- package/dist/src/eval-workflows/evaluation-preparation.js.map +1 -1
- package/dist/src/eval-workflows/run-evaluation.d.ts +20 -17
- package/dist/src/eval-workflows/run-evaluation.d.ts.map +1 -1
- package/dist/src/eval-workflows/run-evaluation.js +25 -15
- package/dist/src/eval-workflows/run-evaluation.js.map +1 -1
- package/dist/src/executors/claude-cli.d.ts.map +1 -1
- package/dist/src/executors/claude-cli.js +11 -6
- package/dist/src/executors/claude-cli.js.map +1 -1
- package/dist/src/executors/codex-cli-trace.d.ts +10 -0
- package/dist/src/executors/codex-cli-trace.d.ts.map +1 -0
- package/dist/src/executors/codex-cli-trace.js +123 -0
- package/dist/src/executors/codex-cli-trace.js.map +1 -0
- package/dist/src/executors/codex-cli.d.ts +18 -0
- package/dist/src/executors/codex-cli.d.ts.map +1 -0
- package/dist/src/executors/codex-cli.js +254 -0
- package/dist/src/executors/codex-cli.js.map +1 -0
- package/dist/src/executors/codex-sdk.d.ts +18 -0
- package/dist/src/executors/codex-sdk.d.ts.map +1 -0
- package/dist/src/executors/codex-sdk.js +214 -0
- package/dist/src/executors/codex-sdk.js.map +1 -0
- package/dist/src/executors/gemini.d.ts.map +1 -1
- package/dist/src/executors/gemini.js +28 -24
- package/dist/src/executors/gemini.js.map +1 -1
- package/dist/src/executors/index.d.ts.map +1 -1
- package/dist/src/executors/index.js +7 -2
- package/dist/src/executors/index.js.map +1 -1
- package/dist/src/executors/runtime-fingerprint.d.ts +7 -0
- package/dist/src/executors/runtime-fingerprint.d.ts.map +1 -0
- package/dist/src/executors/runtime-fingerprint.js +277 -0
- package/dist/src/executors/runtime-fingerprint.js.map +1 -0
- package/dist/src/executors/script.d.ts.map +1 -1
- package/dist/src/executors/script.js +47 -55
- package/dist/src/executors/script.js.map +1 -1
- package/dist/src/executors/shared.d.ts +78 -1
- package/dist/src/executors/shared.d.ts.map +1 -1
- package/dist/src/executors/shared.js +203 -1
- package/dist/src/executors/shared.js.map +1 -1
- package/dist/src/grading/assertions.d.ts.map +1 -1
- package/dist/src/grading/assertions.js +18 -3
- package/dist/src/grading/assertions.js.map +1 -1
- package/dist/src/grading/index.d.ts.map +1 -1
- package/dist/src/grading/index.js +11 -0
- package/dist/src/grading/index.js.map +1 -1
- package/dist/src/grading/judge.d.ts.map +1 -1
- package/dist/src/grading/judge.js +75 -6
- package/dist/src/grading/judge.js.map +1 -1
- package/dist/src/inputs/skill-loader.d.ts +1 -1
- package/dist/src/inputs/skill-loader.d.ts.map +1 -1
- package/dist/src/inputs/skill-loader.js +1 -1
- package/dist/src/inputs/skill-loader.js.map +1 -1
- package/dist/src/renderer/html-renderer.d.ts +5 -4
- package/dist/src/renderer/html-renderer.d.ts.map +1 -1
- package/dist/src/renderer/html-renderer.js +217 -93
- package/dist/src/renderer/html-renderer.js.map +1 -1
- package/dist/src/renderer/layout.d.ts +2 -1
- package/dist/src/renderer/layout.d.ts.map +1 -1
- package/dist/src/renderer/layout.js +30 -42
- package/dist/src/renderer/layout.js.map +1 -1
- package/dist/src/renderer/summary.d.ts +3 -3
- package/dist/src/renderer/summary.d.ts.map +1 -1
- package/dist/src/renderer/summary.js +232 -42
- package/dist/src/renderer/summary.js.map +1 -1
- package/dist/src/renderer/trends.d.ts.map +1 -1
- package/dist/src/renderer/trends.js +5 -3
- package/dist/src/renderer/trends.js.map +1 -1
- package/dist/src/server/report-server.js +4 -4
- package/dist/src/server/report-server.js.map +1 -1
- package/dist/src/server/report-store.d.ts +7 -5
- package/dist/src/server/report-store.d.ts.map +1 -1
- package/dist/src/server/report-store.js +39 -11
- package/dist/src/server/report-store.js.map +1 -1
- package/dist/src/types/eval.d.ts +4 -2
- package/dist/src/types/eval.d.ts.map +1 -1
- package/dist/src/types/executor.d.ts +5 -0
- package/dist/src/types/executor.d.ts.map +1 -1
- package/dist/src/types/judge.d.ts +10 -0
- package/dist/src/types/judge.d.ts.map +1 -1
- package/dist/src/types/report.d.ts +120 -24
- package/dist/src/types/report.d.ts.map +1 -1
- package/dist/src/types/storage.d.ts +7 -7
- package/dist/src/types/storage.d.ts.map +1 -1
- package/package.json +2 -1
- package/dist/src/eval-workflows/each-evaluation-workflow.d.ts +0 -153
- package/dist/src/eval-workflows/each-evaluation-workflow.d.ts.map +0 -1
- package/dist/src/eval-workflows/each-evaluation-workflow.js +0 -178
- package/dist/src/eval-workflows/each-evaluation-workflow.js.map +0 -1
- package/dist/src/executors/openai-cli.d.ts +0 -3
- package/dist/src/executors/openai-cli.d.ts.map +0 -1
- package/dist/src/executors/openai-cli.js +0 -60
- package/dist/src/executors/openai-cli.js.map +0 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { resolve } from 'node:path';
|
|
2
2
|
import { DEFAULT_OUTPUT_DIR, persistReport } from '../eval-core/evaluation-reporting.js';
|
|
3
3
|
import { createExecutor, DEFAULT_MODEL, JUDGE_MODEL } from '../executors/index.js';
|
|
4
|
-
import {
|
|
4
|
+
import { discoverBatchSkills } from '../inputs/skill-loader.js';
|
|
5
5
|
import { confidenceInterval, tTest, effectSize } from '../eval-core/statistics.js';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { executeBatchEvaluationRuns } from './batch-evaluation-workflow.js';
|
|
7
|
+
import { buildDryRunBatchArtifacts, buildDryRunTaskReport, prepareEvaluationRun, } from './evaluation-preparation.js';
|
|
8
8
|
import { executeEvaluationPipeline } from './evaluation-pipeline.js';
|
|
9
9
|
import { findSaturationPoint } from '../analysis/saturation.js';
|
|
10
10
|
import { bootstrapMeanCI } from '../eval-core/bootstrap.js';
|
|
11
|
-
export async function runEvaluation({ samplesPath, skillDir, variantSpecs = [], artifacts, model = DEFAULT_MODEL, judgeModel = JUDGE_MODEL, outputDir = DEFAULT_OUTPUT_DIR, project, owner, tags, noJudge = false, dryRun = false, blind = false, concurrency = 1, timeoutMs, noCache = false, executorName = 'claude', judgeExecutorName, jobStore = null, persistJob = true, onProgress = null, skipPreflight = false, mcpConfig, verbose = false, retry = 0, resume, layeredStats = false, repeat,
|
|
11
|
+
export async function runEvaluation({ samplesPath, skillDir, variantSpecs = [], artifacts, model = DEFAULT_MODEL, judgeModel = JUDGE_MODEL, outputDir = DEFAULT_OUTPUT_DIR, project, owner, tags, noJudge = false, dryRun = false, blind = false, concurrency = 1, timeoutMs, noCache = false, executorName = 'claude', judgeExecutorName, jobStore = null, persistJob = true, onProgress = null, skipPreflight = false, mcpConfig, verbose = false, retry = 0, resume, runId, layeredStats = false, repeat, batch, judgeRepeat, judgeModels, bootstrap, bootstrapSamples, lengthDebias, budget, strictBaseline, variantAllowedSkills, }) {
|
|
12
12
|
const { samples, artifacts: resolvedArtifacts, tasks, variantNames, requires } = await prepareEvaluationRun({
|
|
13
13
|
samplesPath,
|
|
14
14
|
skillDir,
|
|
@@ -33,6 +33,7 @@ export async function runEvaluation({ samplesPath, skillDir, variantSpecs = [],
|
|
|
33
33
|
report: buildDryRunTaskReport({
|
|
34
34
|
model,
|
|
35
35
|
judgeModel,
|
|
36
|
+
judgeModels,
|
|
36
37
|
executorName,
|
|
37
38
|
samplesPath,
|
|
38
39
|
skillDir,
|
|
@@ -48,7 +49,7 @@ export async function runEvaluation({ samplesPath, skillDir, variantSpecs = [],
|
|
|
48
49
|
const { createFileStore } = await import('../server/report-store.js');
|
|
49
50
|
const store = createFileStore(resolve(outputDir || DEFAULT_OUTPUT_DIR));
|
|
50
51
|
const existing = await store.get(resume);
|
|
51
|
-
if (existing) {
|
|
52
|
+
if (existing?.kind === 'evaluation') {
|
|
52
53
|
existingResults = {};
|
|
53
54
|
for (const entry of existing.results || []) {
|
|
54
55
|
existingResults[entry.sample_id] = entry.variants;
|
|
@@ -72,6 +73,9 @@ export async function runEvaluation({ samplesPath, skillDir, variantSpecs = [],
|
|
|
72
73
|
+ ` 新 entries 不隔离 → 与现有 entries 不可比。建议恢复默认 strict-baseline。\n`);
|
|
73
74
|
}
|
|
74
75
|
}
|
|
76
|
+
else if (existing?.kind === 'batch-evaluation') {
|
|
77
|
+
process.stderr.write(`\n⚠️ report ${resume} is a BatchEvaluationReport; resume needs a child EvaluationReport, starting from scratch\n`);
|
|
78
|
+
}
|
|
75
79
|
else {
|
|
76
80
|
process.stderr.write(`\n⚠️ report ${resume} not found, starting from scratch\n`);
|
|
77
81
|
}
|
|
@@ -109,7 +113,7 @@ export async function runEvaluation({ samplesPath, skillDir, variantSpecs = [],
|
|
|
109
113
|
requires,
|
|
110
114
|
layeredStats,
|
|
111
115
|
repeat,
|
|
112
|
-
|
|
116
|
+
batch,
|
|
113
117
|
judgeRepeat,
|
|
114
118
|
judgeModels,
|
|
115
119
|
bootstrap,
|
|
@@ -117,6 +121,7 @@ export async function runEvaluation({ samplesPath, skillDir, variantSpecs = [],
|
|
|
117
121
|
lengthDebias,
|
|
118
122
|
budget,
|
|
119
123
|
strictBaseline,
|
|
124
|
+
runId,
|
|
120
125
|
});
|
|
121
126
|
}
|
|
122
127
|
// Top-level (composite) extractor: feeds the legacy flat-field variance on
|
|
@@ -306,19 +311,23 @@ export function buildVarianceData(runs) {
|
|
|
306
311
|
...(saturation ? { saturation } : {}),
|
|
307
312
|
};
|
|
308
313
|
}
|
|
309
|
-
export async function
|
|
310
|
-
const skillEntries =
|
|
314
|
+
export async function runBatchEvaluation({ skillDir, model = DEFAULT_MODEL, judgeModel = JUDGE_MODEL, outputDir = DEFAULT_OUTPUT_DIR, project, owner, tags, noJudge = false, dryRun = false, concurrency = 1, timeoutMs, executorName = 'claude', judgeExecutorName, jobStore = null, persistJob = true, onProgress = null, onSkillProgress = null, skipPreflight = false, mcpConfig, verbose = false, repeat, judgeRepeat, judgeModels, lengthDebias, noCache = false, strictBaseline, variantAllowedSkills, }) {
|
|
315
|
+
const skillEntries = discoverBatchSkills(resolve(skillDir));
|
|
311
316
|
if (skillEntries.length === 0) {
|
|
312
317
|
throw new Error(`no skill with paired eval-samples found in: ${skillDir}`);
|
|
313
318
|
}
|
|
314
319
|
if (dryRun) {
|
|
315
|
-
const { artifacts: dryArtifacts, totalTasks } =
|
|
320
|
+
const { artifacts: dryArtifacts, totalTasks } = buildDryRunBatchArtifacts(skillEntries);
|
|
321
|
+
const judgeModelList = judgeModels && judgeModels.length >= 2
|
|
322
|
+
? judgeModels.map((jc) => `${jc.executor}:${jc.model}`)
|
|
323
|
+
: undefined;
|
|
316
324
|
return {
|
|
317
325
|
report: {
|
|
318
326
|
dryRun: true,
|
|
319
|
-
|
|
327
|
+
batch: true,
|
|
320
328
|
model,
|
|
321
|
-
judgeModel,
|
|
329
|
+
judgeModel: judgeModelList ? null : judgeModel,
|
|
330
|
+
...(judgeModelList ? { judgeModels: judgeModelList } : {}),
|
|
322
331
|
executor: executorName,
|
|
323
332
|
skillDir,
|
|
324
333
|
totalArtifacts: dryArtifacts.length,
|
|
@@ -328,7 +337,7 @@ export async function runEachEvaluation({ skillDir, model = DEFAULT_MODEL, judge
|
|
|
328
337
|
filePath: null,
|
|
329
338
|
};
|
|
330
339
|
}
|
|
331
|
-
return
|
|
340
|
+
return executeBatchEvaluationRuns({
|
|
332
341
|
skillDir,
|
|
333
342
|
skillEntries,
|
|
334
343
|
model,
|
|
@@ -353,15 +362,16 @@ export async function runEachEvaluation({ skillDir, model = DEFAULT_MODEL, judge
|
|
|
353
362
|
judgeRepeat,
|
|
354
363
|
judgeModels,
|
|
355
364
|
lengthDebias,
|
|
365
|
+
noCache,
|
|
356
366
|
strictBaseline,
|
|
357
367
|
variantAllowedSkills,
|
|
358
368
|
runSingleEvaluation: async (options) => {
|
|
359
|
-
// repeat > 1 时走 runMultiple 做 variance;
|
|
369
|
+
// repeat > 1 时走 runMultiple 做 variance; batch=true 标记让 meta.request 如实反映
|
|
360
370
|
if (repeat && repeat > 1) {
|
|
361
|
-
const multi = await runMultiple({ ...options, repeat,
|
|
371
|
+
const multi = await runMultiple({ ...options, repeat, batch: true, judgeRepeat, judgeModels, lengthDebias });
|
|
362
372
|
return { report: multi.report, filePath: multi.filePath };
|
|
363
373
|
}
|
|
364
|
-
const result = await runEvaluation({ ...options,
|
|
374
|
+
const result = await runEvaluation({ ...options, batch: true, judgeRepeat, judgeModels, lengthDebias });
|
|
365
375
|
return { report: result.report, filePath: result.filePath };
|
|
366
376
|
},
|
|
367
377
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-evaluation.js","sourceRoot":"","sources":["../../../src/eval-workflows/run-evaluation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAkBrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAuH5D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAClC,WAAW,EACX,QAAQ,EACR,YAAY,GAAG,EAAE,EACjB,SAAS,EACT,KAAK,GAAG,aAAa,EACrB,UAAU,GAAG,WAAW,EACxB,SAAS,GAAG,kBAAkB,EAC9B,OAAO,EACP,KAAK,EACL,IAAI,EACJ,OAAO,GAAG,KAAK,EACf,MAAM,GAAG,KAAK,EACd,KAAK,GAAG,KAAK,EACb,WAAW,GAAG,CAAC,EACf,SAAS,EACT,OAAO,GAAG,KAAK,EACf,YAAY,GAAG,QAAQ,EACvB,iBAAiB,EACjB,QAAQ,GAAG,IAAI,EACf,UAAU,GAAG,IAAI,EACjB,UAAU,GAAG,IAAI,EACjB,aAAa,GAAG,KAAK,EACrB,SAAS,EACT,OAAO,GAAG,KAAK,EACf,KAAK,GAAG,CAAC,EACT,MAAM,EACN,YAAY,GAAG,KAAK,EACpB,MAAM,EACN,IAAI,EACJ,WAAW,EACX,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,MAAM,EACN,cAAc,EACd,oBAAoB,GACC;IACrB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,MAAM,oBAAoB,CAAC;QAC1G,WAAW;QACX,QAAQ;QACR,YAAY;QACZ,SAAS;QACT,MAAM;QACN,SAAS;QACT,cAAc;QACd,oBAAoB;KACrB,CAAC,CAAC;IAEH,IAAI,MAAM,EAAE,CAAC;QACX,sEAAsE;QACtE,uEAAuE;QACvE,MAAM,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAChG,KAAK,MAAM,CAAC,IAAI,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC;YAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,sBAAsB,CAAC,iBAAiB,EAAE,cAAc,CAAC,EAAE,CAAC;YAC1E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QACD,OAAO;YACL,MAAM,EAAE,qBAAqB,CAAC;gBAC5B,KAAK;gBACL,UAAU;gBACV,YAAY;gBACZ,WAAW;gBACX,QAAQ;gBACR,KAAK;gBACL,YAAY;aACb,CAAC;YACF,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAED,iEAAiE;IACjE,IAAI,eAAsG,CAAC;IAC3G,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,IAAI,kBAAkB,CAAC,CAAC,CAAC;QACxE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE,CAAC;YACb,eAAe,GAAG,EAAE,CAAC;YACrB,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBAC3C,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC;YACpD,CAAC;YACD,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACtH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,KAAK,kCAAkC,MAAM,IAAI,CAAC,CAAC;YAC1F,CAAC;YACD,6DAA6D;YAC7D,mDAAmD;YACnD,4CAA4C;YAC5C,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;YACtD,MAAM,gBAAgB,GAAG,cAAc,KAAK,KAAK,CAAC,CAAC,eAAe;YAClE,IAAI,CAAC,eAAe,IAAI,gBAAgB,EAAE,CAAC;gBACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,wBAAwB,MAAM,gEAAgE;sBAC5F,kEAAkE;sBAClE,gEAAgE,CACnE,CAAC;YACJ,CAAC;iBAAM,IAAI,eAAe,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAChD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,wBAAwB,MAAM,wEAAwE;sBACpG,8DAA8D,CACjE,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,MAAM,qCAAqC,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAe,cAAc,CAAC,YAAY,CAAC,CAAC;IAC1D,MAAM,aAAa,GAAe,cAAc,CAAC,iBAAiB,IAAI,YAAY,CAAC,CAAC;IACpF,OAAO,yBAAyB,CAAC;QAC/B,WAAW;QACX,QAAQ;QACR,OAAO;QACP,KAAK;QACL,SAAS,EAAE,iBAAiB;QAC5B,KAAK;QACL,UAAU;QACV,OAAO;QACP,YAAY;QACZ,iBAAiB,EAAE,iBAAiB,IAAI,YAAY;QACpD,QAAQ;QACR,aAAa;QACb,SAAS;QACT,OAAO;QACP,KAAK;QACL,IAAI;QACJ,KAAK;QACL,WAAW;QACX,SAAS;QACT,OAAO;QACP,QAAQ;QACR,UAAU;QACV,UAAU;QACV,aAAa;QACb,OAAO;QACP,KAAK;QACL,eAAe;QACf,QAAQ;QACR,YAAY;QACZ,MAAM;QACN,IAAI;QACJ,WAAW;QACX,WAAW;QACX,SAAS;QACT,gBAAgB;QAChB,YAAY;QACZ,MAAM;QACN,cAAc;KACf,CAAC,CAAC;AACL,CAAC;AAeD,2EAA2E;AAC3E,0EAA0E;AAC1E,8EAA8E;AAC9E,wEAAwE;AACxE,MAAM,mBAAmB,GAAG,CAAC,CAA6B,EAAsB,EAAE,CAAC,CAAC,EAAE,iBAAiB,CAAC;AAExG,yEAAyE;AACzE,MAAM,iBAAiB,GAAyF;IAC9G,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,gBAAgB;IAChC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,aAAa;CACpC,CAAC;AAEF,4EAA4E;AAC5E,8EAA8E;AAC9E,kFAAkF;AAClF,iEAAiE;AACjE,MAAM,gBAAgB,GAAoF;IACxG,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY;IAC5B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,gBAAgB;IACpC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,aAAa;CAC/B,CAAC;AAEF,SAAS,gBAAgB,CAAC,IAAc,EAAE,OAAe,EAAE,SAAgE;IACzH,MAAM,MAAM,GAAG,IAAI;SAChB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;SAC/C,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;IACrD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,OAAO,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;AACnD,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAiB,EAAE,OAAiB,EAAE,KAAa,EAAE,KAAa;IAC/F,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClC,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,OAAO;QACL,QAAQ;QACR,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,UAAU,EAAE,EAAE;KACf,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,mBAAmB,CAAC,IAAc;IACzC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAE5C,8DAA8D;IAC9D,MAAM,mBAAmB,GAA+B,EAAE,CAAC;IAC3D,MAAM,eAAe,GAAsF,EAAE,CAAC;IAE9G,MAAM,sBAAsB,GAAa,EAAE,CAAC;IAC5C,MAAM,GAAG,GAA6B,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAEvF,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QACzB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAa,EAAE,CAAC;YAC/B,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBACtC,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;gBACpC,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,CAAC,cAAc,IAAI,CAAC;oBAAE,SAAS;gBAClF,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YACnC,CAAC;YACD,GAAG,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAChD,CAAC;QACD,iDAAiD;QACjD,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;QAClD,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;gBAAE,mBAAmB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACrE,mBAAmB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAErD,2DAA2D;YAC3D,MAAM,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACrD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;gBAAE,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YAC7D,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;gBAC5B,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM;gBACtB,IAAI,EAAE,EAAE,CAAC,QAAQ;gBACjB,KAAK,EAAE,EAAE,CAAC,GAAG;gBACb,MAAM,EAAE,EAAE,CAAC,IAAI;aAChB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAA+B,EAAE,CAAC;IAChD,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACrB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,UAAU;gBAAE,SAAS;YAC1B,MAAM,CAAC,GAAG,mBAAmB,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;YAChE,QAAQ,CAAC,OAAO,CAAC,GAAG;gBAClB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,MAAM,EAAE,CAAC,CAAC,MAAM;aACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO;QACL,sBAAsB;QACtB,UAAU,EAAE,eAAe;QAC3B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAc;IAC9C,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC7C,MAAM,UAAU,GAAoC,EAAE,CAAC;IACvD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,6CAA6C;QAC7C,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACvE,IAAI,CAAC,SAAS;YAAE,SAAS;QAEzB,MAAM,QAAQ,GAA2D,EAAE,CAAC;QAC5E,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrE,IAAI,IAAI;YAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;QAC/B,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACjF,IAAI,UAAU;YAAE,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAC;QAEjD,uFAAuF;QACvF,MAAM,OAAO,GAAsD,EAAE,CAAC;QACtE,KAAK,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAU,EAAE,CAAC;YACzD,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1E,IAAI,UAAU;gBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC;QAC5C,CAAC;QAED,UAAU,CAAC,OAAO,CAAC,GAAG;YACpB,GAAG,SAAS;YACZ,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxD,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAyB,EAAE,CAAC;IAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE;gBAAE,SAAS;YAEzB,MAAM,aAAa,GAAG,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAEpF,MAAM,YAAY,GAAqE,EAAE,CAAC;YAC1F,KAAK,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,YAAY,CAAU,EAAE,CAAC;gBAClD,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC9B,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC9B,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;oBACb,YAAY,CAAC,GAAG,CAAC,GAAG,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;gBACpF,CAAC;YACH,CAAC;YAED,qFAAqF;YACrF,MAAM,WAAW,GAAgE,EAAE,CAAC;YACpF,KAAK,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAU,EAAE,CAAC;gBACzD,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;oBACb,WAAW,CAAC,GAAG,CAAC,GAAG,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;gBACnF,CAAC;YACH,CAAC;YAED,WAAW,CAAC,IAAI,CAAC;gBACf,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACd,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;gBACd,GAAG,aAAa;gBAChB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3E,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACzE,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC7C,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,UAAU;QACV,WAAW;QACX,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,EACtC,QAAQ,EACR,KAAK,GAAG,aAAa,EACrB,UAAU,GAAG,WAAW,EACxB,SAAS,GAAG,kBAAkB,EAC9B,OAAO,EACP,KAAK,EACL,IAAI,EACJ,OAAO,GAAG,KAAK,EACf,MAAM,GAAG,KAAK,EACd,WAAW,GAAG,CAAC,EACf,SAAS,EACT,YAAY,GAAG,QAAQ,EACvB,iBAAiB,EACjB,QAAQ,GAAG,IAAI,EACf,UAAU,GAAG,IAAI,EACjB,UAAU,GAAG,IAAI,EACjB,eAAe,GAAG,IAAI,EACtB,aAAa,GAAG,KAAK,EACrB,SAAS,EACT,OAAO,GAAG,KAAK,EACf,MAAM,EACN,WAAW,EACX,WAAW,EACX,YAAY,EACZ,cAAc,EACd,oBAAoB,GACK;IACzB,MAAM,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3D,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,+CAA+C,QAAQ,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,wBAAwB,CAAC,YAAY,CAAC,CAAC;QACvF,OAAO;YACL,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;gBACV,KAAK;gBACL,UAAU;gBACV,QAAQ,EAAE,YAAY;gBACtB,QAAQ;gBACR,cAAc,EAAE,YAAY,CAAC,MAAM;gBACnC,UAAU;gBACV,SAAS,EAAE,YAAY;aACxB;YACD,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IACD,OAAO,yBAAyB,CAAC;QAC/B,QAAQ;QACR,YAAY;QACZ,KAAK;QACL,UAAU;QACV,SAAS;QACT,OAAO;QACP,KAAK;QACL,IAAI;QACJ,OAAO;QACP,WAAW;QACX,SAAS;QACT,YAAY;QACZ,iBAAiB;QACjB,QAAQ;QACR,UAAU;QACV,UAAU;QACV,eAAe;QACf,aAAa;QACb,SAAS;QACT,OAAO;QACP,MAAM;QACN,WAAW;QACX,WAAW;QACX,YAAY;QACZ,cAAc;QACd,oBAAoB;QACpB,mBAAmB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACrC,wEAAwE;YACxE,IAAI,MAAM,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC;gBAC5G,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC5D,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC;YACvG,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxE,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,gBAAgB,EAAE,GAAG,MAAM,EAAsB;IAC/F,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC;IAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,gBAAgB,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,CAAC,KAAK,MAAM,GAAG,CAAC,CAAC;QAChC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC;YACrC,GAAG,MAAM;YACT,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;YACzC,UAAU,EAAE,MAAM;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,MAAgB,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,CAAC,QAAQ,GAAG,UAAU,CAAC;QAC7B,gDAAgD;QAChD,QAAQ,GAAG,aAAa,CAAC,MAAM,EAAE,cAAc,IAAI,kBAAkB,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC"}
|
|
1
|
+
{"version":3,"file":"run-evaluation.js","sourceRoot":"","sources":["../../../src/eval-workflows/run-evaluation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-cli.d.ts","sourceRoot":"","sources":["../../../src/executors/claude-cli.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"claude-cli.d.ts","sourceRoot":"","sources":["../../../src/executors/claude-cli.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAgDnE,wBAAsB,iBAAiB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,SAA8B,EAAE,aAAa,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAgGnK"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { extractAgentTrace, isClaudeSdkResultMessage } from './claude-sdk-trace.js';
|
|
2
|
-
import {
|
|
2
|
+
import { buildExecEnv, DEFAULT_TIMEOUT_MS, errorMessage, interruptedExecResult, MAX_BUFFER, spawnWithSigintPropagation, timeoutExecResult, } from './shared.js';
|
|
3
3
|
// claude CLI 用 `--disable-slash-commands` (文档:"Disable all skills") +
|
|
4
4
|
// `--disallowedTools Skill` 实现与 SDK 等价的完全隔离。但 CLI 没有 partial whitelist
|
|
5
5
|
// 的 flag,所以 [name1, ...] 必须 throw。
|
|
@@ -40,12 +40,15 @@ export async function claudeCliExecutor({ model, system, prompt, cwd, skillDir,
|
|
|
40
40
|
const env = buildExecEnv(skillDir);
|
|
41
41
|
const start = Date.now();
|
|
42
42
|
try {
|
|
43
|
-
const {
|
|
43
|
+
const { child, done } = spawnWithSigintPropagation('claude', args, {
|
|
44
44
|
maxBuffer: MAX_BUFFER,
|
|
45
|
-
|
|
45
|
+
timeoutMs,
|
|
46
46
|
env,
|
|
47
47
|
...(cwd && { cwd }),
|
|
48
48
|
});
|
|
49
|
+
// claude binary 不读 stdin(prompt 走 -p flag),关掉避免 codex 那种 pipe 卡死风险
|
|
50
|
+
child.stdin?.end();
|
|
51
|
+
const { stdout } = await done;
|
|
49
52
|
const durationMs = Date.now() - start;
|
|
50
53
|
const messages = parseStreamJson(stdout);
|
|
51
54
|
// 提取 result 消息
|
|
@@ -82,10 +85,12 @@ export async function claudeCliExecutor({ model, system, prompt, cwd, skillDir,
|
|
|
82
85
|
}
|
|
83
86
|
catch (err) {
|
|
84
87
|
const durationMs = Date.now() - start;
|
|
85
|
-
const details =
|
|
86
|
-
if (details.
|
|
88
|
+
const details = err;
|
|
89
|
+
if (details.killedByTimeout)
|
|
87
90
|
return timeoutExecResult(timeoutMs, durationMs);
|
|
88
|
-
|
|
91
|
+
if (details.killedBySignal)
|
|
92
|
+
return interruptedExecResult(durationMs);
|
|
93
|
+
// 尝试从 stdout 解析 stream-json(即使进程退出码非 0 也可能有 result)
|
|
89
94
|
const messages = parseStreamJson(details.stdout || '');
|
|
90
95
|
const resultMsgs = messages.filter(isClaudeSdkResultMessage);
|
|
91
96
|
if (resultMsgs.length > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-cli.js","sourceRoot":"","sources":["../../../src/executors/claude-cli.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEpF,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"claude-cli.js","sourceRoot":"","sources":["../../../src/executors/claude-cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ToolCallInfo, TurnInfo } from '../types/index.js';
|
|
2
|
+
import type { CodexEvent } from './shared.js';
|
|
3
|
+
export declare function isCodexResultEvent(event: CodexEvent): boolean;
|
|
4
|
+
export declare function extractCodexTrace(events: CodexEvent[]): {
|
|
5
|
+
turns: TurnInfo[];
|
|
6
|
+
toolCalls: ToolCallInfo[];
|
|
7
|
+
fullNumTurns: number;
|
|
8
|
+
numSubAgents: number;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=codex-cli-trace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-cli-trace.d.ts","sourceRoot":"","sources":["../../../src/executors/codex-cli-trace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAoB9C,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAE7D;AAkBD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG;IAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,SAAS,EAAE,YAAY,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAqFpJ"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
// Codex CLI(codex 0.125)`exec --json` 事件流 → omk trace 抽取器。
|
|
2
|
+
// 跟 claude-sdk-trace.ts 不同源:
|
|
3
|
+
// Claude SDK 是 message[block] 嵌套结构,有 tool_use / tool_result 配对;
|
|
4
|
+
// Codex 是事件流(turn.started → turn.completed,夹杂 item.* 事件),每个
|
|
5
|
+
// item.completed 事件直接生成完整 ToolCallInfo,**不需要 use/result 配对**。
|
|
6
|
+
//
|
|
7
|
+
// schema(基于 codex 0.125 实测,fixture 测试锁住假设;漂移时 fixture 先红):
|
|
8
|
+
// - {type:'thread.started' | 'turn.started'} 划 turn 边界
|
|
9
|
+
// - {type:'turn.completed', usage} / {type:'turn.failed', error} 收尾
|
|
10
|
+
// - {type:'item.started', item:{type, status:'in_progress', ...}} 是 in_progress 占位 → 跳过
|
|
11
|
+
// - {type:'item.completed', item:{type:'agent_message', text:'...'}} → assistant 文本
|
|
12
|
+
// - {type:'item.completed', item:{type:'command_execution', command, aggregated_output, exit_code, status}} → ToolCallInfo
|
|
13
|
+
// - 其他 item.type(file_read/file_write/web_search 等)best-effort 抽 input/output
|
|
14
|
+
// codex 无 sub-agent 概念,numSubAgents 恒 0。字段缺失静默 skip 不 throw。
|
|
15
|
+
const TOOL_INPUT_LIMIT = 500;
|
|
16
|
+
const TOOL_OUTPUT_LIMIT = 500;
|
|
17
|
+
export function isCodexResultEvent(event) {
|
|
18
|
+
return event.type === 'turn.completed' || event.type === 'turn.failed';
|
|
19
|
+
}
|
|
20
|
+
function extractToolInput(item, itemType) {
|
|
21
|
+
if (itemType === 'command_execution')
|
|
22
|
+
return (item.command || '').slice(0, TOOL_INPUT_LIMIT);
|
|
23
|
+
if (itemType === 'file_read' || itemType === 'file_write')
|
|
24
|
+
return item.path || null;
|
|
25
|
+
if (itemType === 'web_search')
|
|
26
|
+
return item.query || null;
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
function extractToolOutput(item, itemType) {
|
|
30
|
+
if (itemType === 'command_execution' && item.aggregated_output) {
|
|
31
|
+
return item.aggregated_output.slice(0, TOOL_OUTPUT_LIMIT);
|
|
32
|
+
}
|
|
33
|
+
if (itemType === 'file_read' && item.content)
|
|
34
|
+
return item.content.slice(0, TOOL_OUTPUT_LIMIT);
|
|
35
|
+
if (item.results)
|
|
36
|
+
return JSON.stringify(item.results).slice(0, TOOL_OUTPUT_LIMIT);
|
|
37
|
+
return '';
|
|
38
|
+
}
|
|
39
|
+
export function extractCodexTrace(events) {
|
|
40
|
+
const turns = [];
|
|
41
|
+
const toolCalls = [];
|
|
42
|
+
let fullNumTurns = 0;
|
|
43
|
+
// codex 没有 Agent 工具(像 Claude 的 sub-agent),恒 0
|
|
44
|
+
const numSubAgents = 0;
|
|
45
|
+
let currentTurnText = '';
|
|
46
|
+
let currentTurnTools = [];
|
|
47
|
+
let currentTurnHasContent = false;
|
|
48
|
+
let lastTurnTs;
|
|
49
|
+
const flushTurn = (closingEvent) => {
|
|
50
|
+
if (!currentTurnHasContent && currentTurnTools.length === 0)
|
|
51
|
+
return;
|
|
52
|
+
const dur = closingEvent?.ts && lastTurnTs ? closingEvent.ts - lastTurnTs : undefined;
|
|
53
|
+
const turn = {
|
|
54
|
+
role: 'assistant',
|
|
55
|
+
content: currentTurnText,
|
|
56
|
+
...(currentTurnTools.length > 0 && { toolCalls: currentTurnTools }),
|
|
57
|
+
...(dur != null && dur > 0 && { durationMs: dur }),
|
|
58
|
+
};
|
|
59
|
+
turns.push(turn);
|
|
60
|
+
if (currentTurnHasContent)
|
|
61
|
+
fullNumTurns++;
|
|
62
|
+
currentTurnText = '';
|
|
63
|
+
currentTurnTools = [];
|
|
64
|
+
currentTurnHasContent = false;
|
|
65
|
+
if (closingEvent?.ts)
|
|
66
|
+
lastTurnTs = closingEvent.ts;
|
|
67
|
+
};
|
|
68
|
+
for (const event of events) {
|
|
69
|
+
const t = event.type;
|
|
70
|
+
if (!t)
|
|
71
|
+
continue;
|
|
72
|
+
if (t === 'thread.started' || t === 'turn.started') {
|
|
73
|
+
if (currentTurnHasContent || currentTurnTools.length > 0)
|
|
74
|
+
flushTurn();
|
|
75
|
+
if (event.ts)
|
|
76
|
+
lastTurnTs = event.ts;
|
|
77
|
+
continue;
|
|
78
|
+
}
|
|
79
|
+
if (t === 'turn.completed') {
|
|
80
|
+
flushTurn(event);
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
if (t === 'turn.failed') {
|
|
84
|
+
if (currentTurnTools.length > 0) {
|
|
85
|
+
currentTurnTools[currentTurnTools.length - 1].success = false;
|
|
86
|
+
}
|
|
87
|
+
flushTurn(event);
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
// 只关心 item.completed —— item.started 是 in_progress 占位,后面会被 completed 覆盖
|
|
91
|
+
if (t !== 'item.completed')
|
|
92
|
+
continue;
|
|
93
|
+
const item = event.item;
|
|
94
|
+
if (!item || !item.type)
|
|
95
|
+
continue;
|
|
96
|
+
const itemType = item.type;
|
|
97
|
+
if (itemType === 'agent_message') {
|
|
98
|
+
const txt = item.text || '';
|
|
99
|
+
if (txt) {
|
|
100
|
+
if (currentTurnText)
|
|
101
|
+
currentTurnText += '\n';
|
|
102
|
+
currentTurnText += txt;
|
|
103
|
+
currentTurnHasContent = true;
|
|
104
|
+
}
|
|
105
|
+
continue;
|
|
106
|
+
}
|
|
107
|
+
// 其他 item type 当 tool call
|
|
108
|
+
const isError = !!event.error || (typeof item.exit_code === 'number' && item.exit_code !== 0);
|
|
109
|
+
const tc = {
|
|
110
|
+
tool: itemType,
|
|
111
|
+
input: extractToolInput(item, itemType),
|
|
112
|
+
output: extractToolOutput(item, itemType),
|
|
113
|
+
success: !isError,
|
|
114
|
+
};
|
|
115
|
+
currentTurnTools.push(tc);
|
|
116
|
+
toolCalls.push(tc);
|
|
117
|
+
currentTurnHasContent = true;
|
|
118
|
+
}
|
|
119
|
+
// 流末尾 flush(防止最后一个 turn 没 turn.completed 收尾)
|
|
120
|
+
flushTurn();
|
|
121
|
+
return { turns, toolCalls, fullNumTurns, numSubAgents };
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=codex-cli-trace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-cli-trace.js","sourceRoot":"","sources":["../../../src/executors/codex-cli-trace.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ExecResult, ExecutorInput } from '../types/index.js';
|
|
2
|
+
import type { CodexEvent } from './shared.js';
|
|
3
|
+
export declare function isolateCodexCwd(allowedSkills: string[] | undefined, cwd: string | null | undefined, executorName?: string): void;
|
|
4
|
+
export declare function extractCodexUsage(events: CodexEvent[]): {
|
|
5
|
+
input: number;
|
|
6
|
+
cached: number;
|
|
7
|
+
output: number;
|
|
8
|
+
};
|
|
9
|
+
export declare function extractCodexFinalOutput(events: CodexEvent[]): string;
|
|
10
|
+
export declare function extractCodexStopReason(events: CodexEvent[]): string;
|
|
11
|
+
export declare function sumCodexElapsed(resultEvents: CodexEvent[], wallClock: number): number;
|
|
12
|
+
export declare function buildCodexArgs({ model, cwd, prompt }: {
|
|
13
|
+
model: string;
|
|
14
|
+
cwd?: string | null;
|
|
15
|
+
prompt: string;
|
|
16
|
+
}): string[];
|
|
17
|
+
export declare function codexCliExecutor({ model, system, prompt, cwd, skillDir, timeoutMs, allowedSkills, verbose }: ExecutorInput): Promise<ExecResult>;
|
|
18
|
+
//# sourceMappingURL=codex-cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-cli.d.ts","sourceRoot":"","sources":["../../../src/executors/codex-cli.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAwB9C,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,YAAY,SAAc,GAAG,IAAI,CAkBrI;AAoBD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAWzG;AAGD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAcpE;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAKnE;AAOD,wBAAgB,eAAe,CAAC,YAAY,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGrF;AAGD,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,EAAE,CAiBvH;AAeD,wBAAsB,gBAAgB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,SAA8B,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CA+H3K"}
|