@cat-factory/orchestration 0.20.0 → 0.21.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/container.d.ts +17 -0
- package/dist/container.d.ts.map +1 -1
- package/dist/container.js +40 -0
- package/dist/container.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/modules/execution/ExecutionService.d.ts +13 -0
- package/dist/modules/execution/ExecutionService.d.ts.map +1 -1
- package/dist/modules/execution/ExecutionService.js +35 -7
- package/dist/modules/execution/ExecutionService.js.map +1 -1
- package/dist/modules/execution/ReviewGateController.d.ts +37 -0
- package/dist/modules/execution/ReviewGateController.d.ts.map +1 -1
- package/dist/modules/execution/ReviewGateController.js +71 -0
- package/dist/modules/execution/ReviewGateController.js.map +1 -1
- package/dist/modules/requirements/RequirementReviewService.d.ts +62 -20
- package/dist/modules/requirements/RequirementReviewService.d.ts.map +1 -1
- package/dist/modules/requirements/RequirementReviewService.js +236 -134
- package/dist/modules/requirements/RequirementReviewService.js.map +1 -1
- package/dist/modules/requirements/requirements.logic.d.ts +26 -2
- package/dist/modules/requirements/requirements.logic.d.ts.map +1 -1
- package/dist/modules/requirements/requirements.logic.js +46 -13
- package/dist/modules/requirements/requirements.logic.js.map +1 -1
- package/dist/modules/review/IterativeReviewService.d.ts.map +1 -1
- package/dist/modules/review/IterativeReviewService.js +3 -6
- package/dist/modules/review/IterativeReviewService.js.map +1 -1
- package/dist/modules/sandbox/SandboxRunService.d.ts +48 -0
- package/dist/modules/sandbox/SandboxRunService.d.ts.map +1 -0
- package/dist/modules/sandbox/SandboxRunService.js +248 -0
- package/dist/modules/sandbox/SandboxRunService.js.map +1 -0
- package/dist/modules/sandbox/SandboxService.d.ts +94 -0
- package/dist/modules/sandbox/SandboxService.d.ts.map +1 -0
- package/dist/modules/sandbox/SandboxService.js +227 -0
- package/dist/modules/sandbox/SandboxService.js.map +1 -0
- package/dist/modules/sandbox/sandbox.logic.d.ts +37 -0
- package/dist/modules/sandbox/sandbox.logic.d.ts.map +1 -0
- package/dist/modules/sandbox/sandbox.logic.js +178 -0
- package/dist/modules/sandbox/sandbox.logic.js.map +1 -0
- package/package.json +9 -8
|
@@ -65,19 +65,8 @@ export function buildReviewPrompt(ctx) {
|
|
|
65
65
|
'are genuinely complete and unambiguous, return an empty items array. Output JSON only.',
|
|
66
66
|
].join('\n');
|
|
67
67
|
}
|
|
68
|
-
/** Pull the first JSON
|
|
69
|
-
export
|
|
70
|
-
const start = text.indexOf('{');
|
|
71
|
-
const end = text.lastIndexOf('}');
|
|
72
|
-
if (start === -1 || end <= start)
|
|
73
|
-
return null;
|
|
74
|
-
try {
|
|
75
|
-
return JSON.parse(text.slice(start, end + 1));
|
|
76
|
-
}
|
|
77
|
-
catch {
|
|
78
|
-
return null;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
68
|
+
/** Pull the first JSON value out of a model response (tolerates code fences). */
|
|
69
|
+
export { extractJson } from '@cat-factory/kernel';
|
|
81
70
|
function asString(value) {
|
|
82
71
|
return typeof value === 'string' ? value.trim() : '';
|
|
83
72
|
}
|
|
@@ -232,6 +221,50 @@ export function coerceRecommendations(raw) {
|
|
|
232
221
|
}
|
|
233
222
|
return out;
|
|
234
223
|
}
|
|
224
|
+
/**
|
|
225
|
+
* Coerce the Writer's JSON for a SINGLE-finding call. The per-finding recommendation flow
|
|
226
|
+
* prompts the Writer with exactly one finding, so it must tolerate a missing/garbled `itemId`:
|
|
227
|
+
* single-item prompts frequently omit the echoed id, and {@link coerceRecommendations} drops
|
|
228
|
+
* any entry without one — which would silently discard a perfectly good suggestion and
|
|
229
|
+
* force-reopen the finding. So: prefer the entry whose id matches, but when the model returns a
|
|
230
|
+
* lone entry with a recommendation string, take it regardless of the id. Returns null only when
|
|
231
|
+
* there is genuinely no usable recommendation.
|
|
232
|
+
*/
|
|
233
|
+
export function coerceSingleRecommendation(raw, itemId) {
|
|
234
|
+
const list = Array.isArray(raw?.recommendations)
|
|
235
|
+
? raw.recommendations
|
|
236
|
+
: Array.isArray(raw)
|
|
237
|
+
? raw
|
|
238
|
+
: [];
|
|
239
|
+
const entries = list
|
|
240
|
+
.filter((e) => !!e && typeof e === 'object')
|
|
241
|
+
.map((obj) => ({
|
|
242
|
+
itemId: asString(obj.itemId),
|
|
243
|
+
recommendation: asString(obj.recommendation),
|
|
244
|
+
fromStandard: asString(obj.fromStandard) || null,
|
|
245
|
+
}))
|
|
246
|
+
.filter((e) => e.recommendation);
|
|
247
|
+
if (entries.length === 0)
|
|
248
|
+
return null;
|
|
249
|
+
const chosen = entries.find((e) => e.itemId === itemId) ?? (entries.length === 1 ? entries[0] : null);
|
|
250
|
+
return chosen
|
|
251
|
+
? { recommendation: chosen.recommendation, fromStandard: chosen.fromStandard }
|
|
252
|
+
: null;
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Resolve the live review item a recommendation answers. Prefers the snapshotted `itemId` (the
|
|
256
|
+
* primary anchor, so two findings with identical title+detail stay distinct), then falls back to
|
|
257
|
+
* title+detail for recommendations created before the id was snapshotted or whose finding id
|
|
258
|
+
* churned across a re-review. Returns undefined when no finding matches.
|
|
259
|
+
*/
|
|
260
|
+
export function findSourceItem(items, source) {
|
|
261
|
+
if (source.itemId) {
|
|
262
|
+
const byId = items.find((i) => i.id === source.itemId);
|
|
263
|
+
if (byId)
|
|
264
|
+
return byId;
|
|
265
|
+
}
|
|
266
|
+
return items.find((i) => i.title === source.title && i.detail === source.detail);
|
|
267
|
+
}
|
|
235
268
|
/**
|
|
236
269
|
* Whether an incorporation pass has anything to fold in: at least one finding the human
|
|
237
270
|
* answered/resolved with a non-empty reply, or a freeform "do it differently" feedback.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requirements.logic.js","sourceRoot":"","sources":["../../../src/modules/requirements/requirements.logic.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AAEjE,0EAA0E;AAC1E,gFAAgF;AAChF,iFAAiF;AACjF,+EAA+E;AAC/E,4DAA4D;AAE5D,MAAM,UAAU,GAAyB,CAAC,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,CAAC,CAAA;AACnG,MAAM,UAAU,GAAyB,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;AAClE,MAAM,aAAa,GAAuC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAA;AAqCxF;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAwB;IACzD,MAAM,KAAK,GAAa,GAAG,CAAC,eAAe,EAAE,IAAI,EAAE;QACjD,CAAC,CAAC;YACE,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG;YAC1C,EAAE;YACF,qDAAqD;YACrD,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE;SAC3B;QACH,CAAC,CAAC;YACE,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG;YAC1C,EAAE;YACF,gBAAgB;YAChB,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,2BAA2B;SAC7D,CAAA;IACL,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,6CAA6C,CAAC,CAAA;QAC7D,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;IAClF,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,0BAA0B,CAAC,CAAA;QAC1C,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAA;QACtF,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,GAAwB;IACxD,OAAO;QACL,gDAAgD;QAChD,EAAE;QACF,kBAAkB,CAAC,GAAG,CAAC;QACvB,EAAE;QACF,4CAA4C;QAC5C,GAAG;QACH,cAAc;QACd,OAAO;QACP,iEAAiE;QACjE,sCAAsC;QACtC,iDAAiD;QACjD,oFAAoF;QACpF,OAAO;QACP,KAAK;QACL,GAAG;QACH,EAAE;QACF,iFAAiF;YAC/E,iFAAiF;YACjF,qFAAqF;YACrF,sFAAsF;YACtF,wFAAwF;KAC3F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"requirements.logic.js","sourceRoot":"","sources":["../../../src/modules/requirements/requirements.logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IterativeReviewService.d.ts","sourceRoot":"","sources":["../../../src/modules/review/IterativeReviewService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,KAAK,EACL,eAAe,EACf,KAAK,EACL,WAAW,EACX,aAAa,EACb,qBAAqB,EACrB,QAAQ,EACR,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"IterativeReviewService.d.ts","sourceRoot":"","sources":["../../../src/modules/review/IterativeReviewService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { generateText } from 'ai';
|
|
2
|
-
import { assertFound, DEFAULT_MAX_REQUIREMENT_ITERATIONS, inlineModelRef, ValidationError, } from '@cat-factory/kernel';
|
|
2
|
+
import { assertFound, DEFAULT_MAX_REQUIREMENT_ITERATIONS, inlineModelRef, resolveScopedModelProvider, ValidationError, } from '@cat-factory/kernel';
|
|
3
3
|
import { catFactoryObservability } from '@cat-factory/agents';
|
|
4
4
|
import { coerceReviewItems, disposeReview, extractJson, } from '../requirements/requirements.logic.js';
|
|
5
5
|
/** Output budget for the rework generation (a full standard-format document). */
|
|
@@ -213,11 +213,8 @@ export class IterativeReviewService {
|
|
|
213
213
|
}
|
|
214
214
|
// ---- internals ----------------------------------------------------------
|
|
215
215
|
/** The model provider for a workspace's scope (per-scope DB pool, else the static one). */
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
return this.deps.modelProviderResolver.forScope({ workspaceId });
|
|
219
|
-
}
|
|
220
|
-
return this.deps.modelProvider;
|
|
216
|
+
providerFor(workspaceId) {
|
|
217
|
+
return resolveScopedModelProvider(workspaceId, this.deps);
|
|
221
218
|
}
|
|
222
219
|
/**
|
|
223
220
|
* The model to run for a block, with the same precedence as a pipeline step: the block's
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IterativeReviewService.js","sourceRoot":"","sources":["../../../src/modules/review/IterativeReviewService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IterativeReviewService.js","sourceRoot":"","sources":["../../../src/modules/review/IterativeReviewService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { Clock, IdGenerator, ModelProvider, ModelProviderResolver, ModelRef, SandboxExperimentRepository, SandboxFixtureRepository, SandboxGradeRepository, SandboxPromptVersionRepository, SandboxRunRepository, WorkspaceRepository } from '@cat-factory/kernel';
|
|
2
|
+
import { type SandboxExperimentDetail } from './SandboxService.js';
|
|
3
|
+
export interface SandboxRunServiceDependencies {
|
|
4
|
+
sandboxPromptVersionRepository: SandboxPromptVersionRepository;
|
|
5
|
+
sandboxFixtureRepository: SandboxFixtureRepository;
|
|
6
|
+
sandboxExperimentRepository: SandboxExperimentRepository;
|
|
7
|
+
sandboxRunRepository: SandboxRunRepository;
|
|
8
|
+
sandboxGradeRepository: SandboxGradeRepository;
|
|
9
|
+
workspaceRepository: WorkspaceRepository;
|
|
10
|
+
idGenerator: IdGenerator;
|
|
11
|
+
clock: Clock;
|
|
12
|
+
/** Per-scope model provider (the DB-backed key pool). Preferred over the static one. */
|
|
13
|
+
modelProviderResolver?: ModelProviderResolver;
|
|
14
|
+
/** Static model provider (e.g. a fake in tests / conformance). */
|
|
15
|
+
modelProvider?: ModelProvider;
|
|
16
|
+
/** Resolve a model catalog id to a deployment-aware {@link ModelRef}. */
|
|
17
|
+
resolveModelId?: (modelId: string | undefined) => ModelRef | undefined;
|
|
18
|
+
/** Routing default ref, used to degrade subscription models for these inline calls. */
|
|
19
|
+
defaultModelRef?: ModelRef;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* The Sandbox run-driver + judge. {@link launch} expands a draft experiment's matrix
|
|
23
|
+
* into cells, runs each inline candidate (one LLM call against the prompt-version's
|
|
24
|
+
* system text + the fixture's rendered input), grades it with the judge model against
|
|
25
|
+
* the task rubric, and records the deterministic objective score alongside. It drives
|
|
26
|
+
* synchronously to completion (bounded by a cell cap at create time + an optional token
|
|
27
|
+
* budget) — every cell is a single inline LLM call, so there is no durable fan-out.
|
|
28
|
+
*
|
|
29
|
+
* Container/repo fixtures (a real checkout) are not yet supported here and are refused at
|
|
30
|
+
* launch with a clear message; the builtin fixtures are all inline. Both runtimes wire
|
|
31
|
+
* this identically, so the refusal — like the run itself — is runtime-symmetric.
|
|
32
|
+
*/
|
|
33
|
+
export declare class SandboxRunService {
|
|
34
|
+
private readonly deps;
|
|
35
|
+
constructor(deps: SandboxRunServiceDependencies);
|
|
36
|
+
launch(workspaceId: string, experimentId: string): Promise<SandboxExperimentDetail>;
|
|
37
|
+
private failRun;
|
|
38
|
+
/** Resolve every prompt version referenced by the matrix to its system text + label. */
|
|
39
|
+
private resolvePrompts;
|
|
40
|
+
/** Resolve every fixture referenced by the matrix (stored, else builtin), refusing repo fixtures. */
|
|
41
|
+
private resolveFixtures;
|
|
42
|
+
/** The model provider for a workspace's scope (per-scope DB pool, else the static one). */
|
|
43
|
+
private providerFor;
|
|
44
|
+
/** A catalog id → inline-servable {@link ModelRef} (subscription models degrade to the default). */
|
|
45
|
+
private refFor;
|
|
46
|
+
private detail;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=SandboxRunService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SandboxRunService.d.ts","sourceRoot":"","sources":["../../../src/modules/sandbox/SandboxRunService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,aAAa,EACb,qBAAqB,EACrB,QAAQ,EAER,2BAA2B,EAE3B,wBAAwB,EAExB,sBAAsB,EACtB,8BAA8B,EAE9B,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAqB5B,OAAO,EAA2B,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAY3F,MAAM,WAAW,6BAA6B;IAC5C,8BAA8B,EAAE,8BAA8B,CAAA;IAC9D,wBAAwB,EAAE,wBAAwB,CAAA;IAClD,2BAA2B,EAAE,2BAA2B,CAAA;IACxD,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,sBAAsB,EAAE,sBAAsB,CAAA;IAC9C,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,WAAW,EAAE,WAAW,CAAA;IACxB,KAAK,EAAE,KAAK,CAAA;IACZ,wFAAwF;IACxF,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;IAC7C,kEAAkE;IAClE,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,yEAAyE;IACzE,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,KAAK,QAAQ,GAAG,SAAS,CAAA;IACtE,uFAAuF;IACvF,eAAe,CAAC,EAAE,QAAQ,CAAA;CAC3B;AAQD;;;;;;;;;;;GAWG;AACH,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,6BAA6B,EAAI;IAE9D,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAwLxF;YAIa,OAAO;IASrB,wFAAwF;YAC1E,cAAc;IAuB5B,qGAAqG;YACvF,eAAe;IAoB7B,2FAA2F;YAC7E,WAAW;IAMzB,oGAAoG;IACpG,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,MAAM;CAGf"}
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import { assertFound, ConflictError, inlineModelRef, requireWorkspace, resolveScopedModelProvider, ValidationError, } from '@cat-factory/kernel';
|
|
2
|
+
import { catFactoryObservability } from '@cat-factory/agents';
|
|
3
|
+
import { SANDBOX_REPO_FIXTURE_KINDS } from '@cat-factory/contracts';
|
|
4
|
+
import { expandMatrix, listBaselines, listBuiltinFixtures, rubricFor, sandboxKindMeta, versionLabel, weightedTotal, } from '@cat-factory/sandbox';
|
|
5
|
+
import { generateText } from 'ai';
|
|
6
|
+
import { composeExperimentDetail } from './SandboxService.js';
|
|
7
|
+
import { buildJudgePrompt, coerceJudgeScores, extractJson, gradedDimensionCount, JUDGE_SYSTEM_PROMPT, objectiveFor, parseModelCatalogId, renderFixtureInput, } from './sandbox.logic.js';
|
|
8
|
+
/**
|
|
9
|
+
* The Sandbox run-driver + judge. {@link launch} expands a draft experiment's matrix
|
|
10
|
+
* into cells, runs each inline candidate (one LLM call against the prompt-version's
|
|
11
|
+
* system text + the fixture's rendered input), grades it with the judge model against
|
|
12
|
+
* the task rubric, and records the deterministic objective score alongside. It drives
|
|
13
|
+
* synchronously to completion (bounded by a cell cap at create time + an optional token
|
|
14
|
+
* budget) — every cell is a single inline LLM call, so there is no durable fan-out.
|
|
15
|
+
*
|
|
16
|
+
* Container/repo fixtures (a real checkout) are not yet supported here and are refused at
|
|
17
|
+
* launch with a clear message; the builtin fixtures are all inline. Both runtimes wire
|
|
18
|
+
* this identically, so the refusal — like the run itself — is runtime-symmetric.
|
|
19
|
+
*/
|
|
20
|
+
export class SandboxRunService {
|
|
21
|
+
deps;
|
|
22
|
+
constructor(deps) {
|
|
23
|
+
this.deps = deps;
|
|
24
|
+
}
|
|
25
|
+
async launch(workspaceId, experimentId) {
|
|
26
|
+
await requireWorkspace(this.deps.workspaceRepository, workspaceId);
|
|
27
|
+
const experiment = assertFound(await this.deps.sandboxExperimentRepository.get(workspaceId, experimentId), 'SandboxExperiment', experimentId);
|
|
28
|
+
if (experiment.status === 'running') {
|
|
29
|
+
throw new ConflictError('This experiment is already running.');
|
|
30
|
+
}
|
|
31
|
+
const meta = sandboxKindMeta(experiment.agentKind);
|
|
32
|
+
if (!meta)
|
|
33
|
+
throw new ValidationError(`"${experiment.agentKind}" is not a Sandbox-testable kind`);
|
|
34
|
+
if (meta.bucket === 'container') {
|
|
35
|
+
throw new ValidationError(`The "${experiment.agentKind}" agent runs in a container; container experiments are not yet supported in the Sandbox.`);
|
|
36
|
+
}
|
|
37
|
+
const provider = await this.providerFor(workspaceId);
|
|
38
|
+
const prompts = await this.resolvePrompts(workspaceId, experiment);
|
|
39
|
+
const fixtures = await this.resolveFixtures(workspaceId, experiment);
|
|
40
|
+
const rubric = rubricFor(meta.rubric);
|
|
41
|
+
// Atomically claim the run BEFORE touching the grid: the conditional transition to
|
|
42
|
+
// `running` lets exactly one concurrent launch win, so two simultaneous launches can't
|
|
43
|
+
// both clear + re-expand the grid (duplicating cells) or race the grid-clearing deletes.
|
|
44
|
+
// The fast-path read above is just a friendly early error; THIS is the authoritative gate.
|
|
45
|
+
// Validation/resolution runs first, so a bad request never mutates state or strands the
|
|
46
|
+
// experiment `running`. The `finally` below settles the terminal status from here on.
|
|
47
|
+
if (!(await this.deps.sandboxExperimentRepository.claimForRun(workspaceId, experimentId))) {
|
|
48
|
+
throw new ConflictError('This experiment is already running.');
|
|
49
|
+
}
|
|
50
|
+
// The experiment is a SCORED comparison: a cell only counts toward a successful
|
|
51
|
+
// experiment once it is actually graded. A cell that produced candidate output but
|
|
52
|
+
// whose grading failed is kept inspectable (status `done` + an error), but it does
|
|
53
|
+
// NOT make the experiment look healthy — an experiment whose every grade failed
|
|
54
|
+
// settles `failed`, not `done` with a grid of unscored `—` cells.
|
|
55
|
+
let graded = 0;
|
|
56
|
+
// Everything that mutates the grid runs INSIDE this try, so the `finally` settles the
|
|
57
|
+
// terminal status no matter where it throws — the claim above already set `running`, so
|
|
58
|
+
// a failure anywhere below can never strand the experiment in `running`.
|
|
59
|
+
try {
|
|
60
|
+
// A relaunch re-runs from scratch: drop the prior result grid (grades before runs, so
|
|
61
|
+
// the grade scoping subquery still resolves the cells) so cells don't accumulate.
|
|
62
|
+
await this.deps.sandboxGradeRepository.removeByExperiment(workspaceId, experimentId);
|
|
63
|
+
await this.deps.sandboxRunRepository.removeByExperiment(workspaceId, experimentId);
|
|
64
|
+
// Persist the queued grid first, then drive each cell. (The claim above already set
|
|
65
|
+
// the experiment `running`.)
|
|
66
|
+
const now = this.deps.clock.now();
|
|
67
|
+
const runs = expandMatrix(experiment, {
|
|
68
|
+
makeId: () => this.deps.idGenerator.next('sbr'),
|
|
69
|
+
labelFor: (id) => prompts.get(id)?.label ?? id,
|
|
70
|
+
now,
|
|
71
|
+
});
|
|
72
|
+
for (const run of runs)
|
|
73
|
+
await this.deps.sandboxRunRepository.upsert(workspaceId, run);
|
|
74
|
+
// Drive every cell synchronously to completion. The terminal status is derived from
|
|
75
|
+
// the cell outcomes and ALWAYS settled in `finally` — a thrown error (or every cell
|
|
76
|
+
// failing) leaves the experiment `failed`, never stuck `running`. NOTE: this runs the
|
|
77
|
+
// whole matrix inline in the request; the cell cap + token budget bound it, but a true
|
|
78
|
+
// durable fan-out (Workflows / pg-boss, like execution+bootstrap) is the proper home
|
|
79
|
+
// for large matrices and the tracked follow-up.
|
|
80
|
+
const budget = experiment.budgetTokens;
|
|
81
|
+
let spent = 0;
|
|
82
|
+
for (const run of runs) {
|
|
83
|
+
if (budget !== null && spent >= budget) {
|
|
84
|
+
await this.failRun(workspaceId, run, 'Token budget exhausted before this cell ran.');
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
const prompt = prompts.get(run.promptVersionId);
|
|
88
|
+
const fixture = fixtures.get(run.fixtureId);
|
|
89
|
+
if (!prompt || !fixture) {
|
|
90
|
+
await this.failRun(workspaceId, run, prompt
|
|
91
|
+
? `Unknown fixture "${run.fixtureId}"`
|
|
92
|
+
: `Unknown prompt version "${run.promptVersionId}"`);
|
|
93
|
+
continue;
|
|
94
|
+
}
|
|
95
|
+
const taskInput = renderFixtureInput(fixture);
|
|
96
|
+
// Phase 1 — run the candidate. A failure here means the cell produced nothing,
|
|
97
|
+
// so the whole cell is `failed`.
|
|
98
|
+
let done;
|
|
99
|
+
try {
|
|
100
|
+
const candidateRef = this.refFor(run.model);
|
|
101
|
+
const started = this.deps.clock.now();
|
|
102
|
+
const candidate = await generateText({
|
|
103
|
+
model: provider.resolve(candidateRef),
|
|
104
|
+
system: prompt.systemText,
|
|
105
|
+
prompt: taskInput,
|
|
106
|
+
temperature: 0.2,
|
|
107
|
+
maxOutputTokens: 4000,
|
|
108
|
+
providerOptions: catFactoryObservability({
|
|
109
|
+
agentKind: `sandbox:${experiment.agentKind}`,
|
|
110
|
+
workspaceId,
|
|
111
|
+
}),
|
|
112
|
+
});
|
|
113
|
+
const latencyMs = this.deps.clock.now() - started;
|
|
114
|
+
const usage = {
|
|
115
|
+
inputTokens: candidate.usage.inputTokens ?? 0,
|
|
116
|
+
outputTokens: candidate.usage.outputTokens ?? 0,
|
|
117
|
+
};
|
|
118
|
+
spent += usage.inputTokens + usage.outputTokens;
|
|
119
|
+
done = {
|
|
120
|
+
...run,
|
|
121
|
+
status: 'done',
|
|
122
|
+
outputText: candidate.text,
|
|
123
|
+
usage,
|
|
124
|
+
latencyMs,
|
|
125
|
+
startedAt: started,
|
|
126
|
+
finishedAt: this.deps.clock.now(),
|
|
127
|
+
};
|
|
128
|
+
await this.deps.sandboxRunRepository.upsert(workspaceId, done);
|
|
129
|
+
}
|
|
130
|
+
catch (e) {
|
|
131
|
+
await this.failRun(workspaceId, run, e instanceof Error ? e.message : String(e));
|
|
132
|
+
continue;
|
|
133
|
+
}
|
|
134
|
+
// Phase 2 — grade the cell (rubric + objective). A grading failure must NOT
|
|
135
|
+
// discard the candidate output: keep the `done` run and record the grading error
|
|
136
|
+
// on it so the produced output stays inspectable.
|
|
137
|
+
try {
|
|
138
|
+
const judgeRef = this.refFor(experiment.judgeModel);
|
|
139
|
+
const judged = await generateText({
|
|
140
|
+
model: provider.resolve(judgeRef),
|
|
141
|
+
system: JUDGE_SYSTEM_PROMPT,
|
|
142
|
+
prompt: buildJudgePrompt(rubric, taskInput, done.outputText ?? '', expectationsOf(fixture)),
|
|
143
|
+
temperature: 0,
|
|
144
|
+
maxOutputTokens: 2000,
|
|
145
|
+
providerOptions: catFactoryObservability({ agentKind: 'sandbox:judge', workspaceId }),
|
|
146
|
+
});
|
|
147
|
+
spent += (judged.usage.inputTokens ?? 0) + (judged.usage.outputTokens ?? 0);
|
|
148
|
+
// Treat an unparseable / empty / reasoning-only judge reply as a grading
|
|
149
|
+
// FAILURE rather than recording a confident weightedTotal ≈ 1.0: if the judge
|
|
150
|
+
// scored not a single rubric dimension, coerceJudgeScores would silently floor
|
|
151
|
+
// every dimension to 1, which is indistinguishable from a real bottom grade and
|
|
152
|
+
// would pollute the comparison grid. Throw instead so the cell records the error.
|
|
153
|
+
const parsed = extractJson(judged.text);
|
|
154
|
+
if (gradedDimensionCount(rubric, parsed) === 0) {
|
|
155
|
+
throw new Error('The judge returned no parseable rubric scores (empty or non-JSON reply).');
|
|
156
|
+
}
|
|
157
|
+
const scores = coerceJudgeScores(rubric, parsed);
|
|
158
|
+
const grade = {
|
|
159
|
+
id: this.deps.idGenerator.next('sbg'),
|
|
160
|
+
runId: run.id,
|
|
161
|
+
judgeModel: experiment.judgeModel,
|
|
162
|
+
scores,
|
|
163
|
+
weightedTotal: weightedTotal(meta.rubric, scores),
|
|
164
|
+
objective: objectiveFor(fixture, done.outputText ?? ''),
|
|
165
|
+
createdAt: this.deps.clock.now(),
|
|
166
|
+
};
|
|
167
|
+
await this.deps.sandboxGradeRepository.upsert(workspaceId, grade);
|
|
168
|
+
graded++;
|
|
169
|
+
}
|
|
170
|
+
catch (e) {
|
|
171
|
+
await this.deps.sandboxRunRepository.upsert(workspaceId, {
|
|
172
|
+
...done,
|
|
173
|
+
error: `Grading failed: ${e instanceof Error ? e.message : String(e)}`,
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
finally {
|
|
179
|
+
// Settle the terminal status from the outcomes: any cell that was actually graded
|
|
180
|
+
// → `done`, otherwise `failed` (every candidate failed, OR every grade failed — the
|
|
181
|
+
// grid carries no usable scores either way). This always runs, so the experiment is
|
|
182
|
+
// never left `running`.
|
|
183
|
+
await this.deps.sandboxExperimentRepository.setStatus(workspaceId, experimentId, graded > 0 ? 'done' : 'failed');
|
|
184
|
+
}
|
|
185
|
+
return this.detail(workspaceId, experimentId);
|
|
186
|
+
}
|
|
187
|
+
// ---- internals ------------------------------------------------------------
|
|
188
|
+
async failRun(workspaceId, run, error) {
|
|
189
|
+
await this.deps.sandboxRunRepository.upsert(workspaceId, {
|
|
190
|
+
...run,
|
|
191
|
+
status: 'failed',
|
|
192
|
+
error,
|
|
193
|
+
finishedAt: this.deps.clock.now(),
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
/** Resolve every prompt version referenced by the matrix to its system text + label. */
|
|
197
|
+
async resolvePrompts(workspaceId, experiment) {
|
|
198
|
+
const baselines = listBaselines(this.deps.clock.now());
|
|
199
|
+
const map = new Map();
|
|
200
|
+
for (const id of new Set(experiment.matrix.promptVersionIds)) {
|
|
201
|
+
if (id.startsWith('baseline:')) {
|
|
202
|
+
const baseline = baselines.find((b) => b.id === id);
|
|
203
|
+
if (!baseline)
|
|
204
|
+
throw new ValidationError(`Unknown baseline prompt "${id}"`);
|
|
205
|
+
map.set(id, { systemText: baseline.systemText, label: baseline.name });
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
const version = assertFound(await this.deps.sandboxPromptVersionRepository.get(workspaceId, id), 'SandboxPromptVersion', id);
|
|
209
|
+
map.set(id, { systemText: version.systemText, label: versionLabel(version) });
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
return map;
|
|
213
|
+
}
|
|
214
|
+
/** Resolve every fixture referenced by the matrix (stored, else builtin), refusing repo fixtures. */
|
|
215
|
+
async resolveFixtures(workspaceId, experiment) {
|
|
216
|
+
const builtins = new Map(listBuiltinFixtures(this.deps.clock.now()).map((f) => [f.id, f]));
|
|
217
|
+
const map = new Map();
|
|
218
|
+
for (const id of new Set(experiment.matrix.fixtureIds)) {
|
|
219
|
+
const fixture = (await this.deps.sandboxFixtureRepository.get(workspaceId, id)) ?? builtins.get(id);
|
|
220
|
+
if (!fixture)
|
|
221
|
+
throw new ValidationError(`Unknown fixture "${id}"`);
|
|
222
|
+
if (SANDBOX_REPO_FIXTURE_KINDS.includes(fixture.kind)) {
|
|
223
|
+
throw new ValidationError(`Fixture "${fixture.name}" needs a repository checkout; repo fixtures are not yet supported in the Sandbox.`);
|
|
224
|
+
}
|
|
225
|
+
map.set(id, fixture);
|
|
226
|
+
}
|
|
227
|
+
return map;
|
|
228
|
+
}
|
|
229
|
+
/** The model provider for a workspace's scope (per-scope DB pool, else the static one). */
|
|
230
|
+
async providerFor(workspaceId) {
|
|
231
|
+
const provider = await resolveScopedModelProvider(workspaceId, this.deps);
|
|
232
|
+
if (!provider)
|
|
233
|
+
throw new ValidationError('No model provider is configured for the Sandbox');
|
|
234
|
+
return provider;
|
|
235
|
+
}
|
|
236
|
+
/** A catalog id → inline-servable {@link ModelRef} (subscription models degrade to the default). */
|
|
237
|
+
refFor(modelId) {
|
|
238
|
+
const resolved = this.deps.resolveModelId?.(modelId) ?? parseModelCatalogId(modelId);
|
|
239
|
+
return inlineModelRef(resolved, this.deps.defaultModelRef ?? resolved);
|
|
240
|
+
}
|
|
241
|
+
detail(workspaceId, experimentId) {
|
|
242
|
+
return composeExperimentDetail(this.deps, workspaceId, experimentId);
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
function expectationsOf(fixture) {
|
|
246
|
+
return fixture.objective?.kind === 'findings' ? fixture.objective.expectations : [];
|
|
247
|
+
}
|
|
248
|
+
//# sourceMappingURL=SandboxRunService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SandboxRunService.js","sourceRoot":"","sources":["../../../src/modules/sandbox/SandboxRunService.ts"],"names":[],"mappings":"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"}
|