@cat-factory/orchestration 0.19.2 → 0.21.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/dist/container.d.ts +43 -6
- package/dist/container.d.ts.map +1 -1
- package/dist/container.js +63 -1
- package/dist/container.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/modules/execution/ExecutionService.d.ts +40 -8
- package/dist/modules/execution/ExecutionService.d.ts.map +1 -1
- package/dist/modules/execution/ExecutionService.js +111 -19
- package/dist/modules/execution/ExecutionService.js.map +1 -1
- package/dist/modules/incidentEnrichment/IncidentEnrichmentService.d.ts +35 -0
- package/dist/modules/incidentEnrichment/IncidentEnrichmentService.d.ts.map +1 -0
- package/dist/modules/incidentEnrichment/IncidentEnrichmentService.js +93 -0
- package/dist/modules/incidentEnrichment/IncidentEnrichmentService.js.map +1 -0
- package/dist/modules/requirements/requirements.logic.d.ts +2 -2
- package/dist/modules/requirements/requirements.logic.d.ts.map +1 -1
- package/dist/modules/requirements/requirements.logic.js +2 -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/dist/modules/settings/WorkspaceSettingsService.d.ts.map +1 -1
- package/dist/modules/settings/WorkspaceSettingsService.js +3 -0
- package/dist/modules/settings/WorkspaceSettingsService.js.map +1 -1
- package/package.json +9 -8
|
@@ -39,8 +39,8 @@ export interface RequirementsContext {
|
|
|
39
39
|
*/
|
|
40
40
|
export declare function renderRequirements(ctx: RequirementsContext): string;
|
|
41
41
|
export declare function buildReviewPrompt(ctx: RequirementsContext): string;
|
|
42
|
-
/** Pull the first JSON
|
|
43
|
-
export
|
|
42
|
+
/** Pull the first JSON value out of a model response (tolerates code fences). */
|
|
43
|
+
export { extractJson } from '@cat-factory/kernel';
|
|
44
44
|
/**
|
|
45
45
|
* Coerce the model's parsed JSON into review items. Tolerant: unknown
|
|
46
46
|
* categories/severities fall back to sensible defaults, items missing both a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requirements.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/requirements/requirements.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACvB,qBAAqB,EAGtB,MAAM,qBAAqB,CAAA;AAa5B,sEAAsE;AACtE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,sDAAsD;AACtD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,+EAA+E;AAC/E,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,aAAa,CAAC,CAAA;IACpD,IAAI,EAAE,gBAAgB,EAAE,CAAA;IACxB,KAAK,EAAE,iBAAiB,EAAE,CAAA;IAC1B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,MAAM,CAyBnE;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,mBAAmB,GAAG,MAAM,CAwBlE;AAED,
|
|
1
|
+
{"version":3,"file":"requirements.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/requirements/requirements.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,uBAAuB,EACvB,qBAAqB,EAGtB,MAAM,qBAAqB,CAAA;AAa5B,sEAAsE;AACtE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,sDAAsD;AACtD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,+EAA+E;AAC/E,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,aAAa,CAAC,CAAA;IACpD,IAAI,EAAE,gBAAgB,EAAE,CAAA;IACxB,KAAK,EAAE,iBAAiB,EAAE,CAAA;IAC1B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,MAAM,CAyBnE;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,mBAAmB,GAAG,MAAM,CAwBlE;AAED,iFAAiF;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAgBjD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,MAAM,EACnB,GAAG,EAAE,MAAM,GACV,qBAAqB,EAAE,CA2BzB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,mBAAmB,EACxB,KAAK,EAAE,qBAAqB,EAAE,GAC7B,MAAM,CA6CR;AAED,6FAA6F;AAC7F,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AAED,iFAAiF;AACjF,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,0FAA0F;AAC1F,MAAM,WAAW,uBAAuB;IACtC,iGAAiG;IACjG,SAAS,EAAE,iBAAiB,EAAE,CAAA;IAC9B,6FAA6F;IAC7F,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,wFAAwF;IACxF,UAAU,EAAE,kBAAkB,EAAE,CAAA;CACjC;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,qBAAqB,EAAE,EACjC,SAAS,EAAE,uBAAuB,EAClC,IAAI,CAAC,EAAE,MAAM,GACZ,MAAM,CA2CR;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,OAAO,GACX,GAAG,CAAC,MAAM,EAAE;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAiBtE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,qBAAqB,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAKhG;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAA;AAErE;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,qBAAqB,EAAE,EAC9B,IAAI,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,uBAAuB,CAAA;CAAE,GAC5F,iBAAiB,CAOnB"}
|
|
@@ -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
|
}
|
|
@@ -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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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import type { Clock, IdGenerator, ModelRef, SandboxExperiment, SandboxExperimentRepository, SandboxFixture, SandboxFixtureRepository, SandboxGrade, SandboxGradeRepository, SandboxPromptVersion, SandboxPromptVersionRepository, SandboxRun, SandboxRunRepository, WorkspaceRepository } from '@cat-factory/kernel';
|
|
2
|
+
import type { CreateSandboxExperimentInput, CreateSandboxFixtureInput, CloneSandboxPromptInput, SaveSandboxVersionInput, SetSandboxLabelsInput } from '@cat-factory/contracts';
|
|
3
|
+
import { type SandboxAgentKindMeta } from '@cat-factory/sandbox';
|
|
4
|
+
/** A safety ceiling on how many cells one experiment may expand to (cost guard). */
|
|
5
|
+
export declare const MAX_SANDBOX_CELLS = 100;
|
|
6
|
+
/** The composed experiment view: the experiment plus its result grid (cells + grades). */
|
|
7
|
+
export interface SandboxExperimentDetail {
|
|
8
|
+
experiment: SandboxExperiment;
|
|
9
|
+
runs: SandboxRun[];
|
|
10
|
+
grades: SandboxGrade[];
|
|
11
|
+
}
|
|
12
|
+
/** The three repositories needed to compose an {@link SandboxExperimentDetail}. */
|
|
13
|
+
export interface SandboxDetailRepositories {
|
|
14
|
+
sandboxExperimentRepository: SandboxExperimentRepository;
|
|
15
|
+
sandboxRunRepository: SandboxRunRepository;
|
|
16
|
+
sandboxGradeRepository: SandboxGradeRepository;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Load an experiment and its result grid (cells + grades). Shared by the read endpoint
|
|
20
|
+
* (`SandboxService.getExperiment`) and the run-driver's returned grid
|
|
21
|
+
* (`SandboxRunService.launch`) so the two can never compose a divergent detail shape.
|
|
22
|
+
*/
|
|
23
|
+
export declare function composeExperimentDetail(repos: SandboxDetailRepositories, workspaceId: string, experimentId: string): Promise<SandboxExperimentDetail>;
|
|
24
|
+
/** The opt-in Sandbox overview the management surface loads on open. */
|
|
25
|
+
export interface SandboxOverview {
|
|
26
|
+
agentKinds: readonly SandboxAgentKindMeta[];
|
|
27
|
+
prompts: SandboxPromptVersion[];
|
|
28
|
+
fixtures: SandboxFixture[];
|
|
29
|
+
experiments: SandboxExperiment[];
|
|
30
|
+
/**
|
|
31
|
+
* The matrix cell cap (the cost guard {@link MAX_SANDBOX_CELLS} enforced at create). Surfaced
|
|
32
|
+
* so the UI gates the builder on the SAME limit instead of re-encoding the literal, which
|
|
33
|
+
* would silently disagree if the cap ever changes.
|
|
34
|
+
*/
|
|
35
|
+
maxCells: number;
|
|
36
|
+
}
|
|
37
|
+
export interface SandboxServiceDependencies {
|
|
38
|
+
sandboxPromptVersionRepository: SandboxPromptVersionRepository;
|
|
39
|
+
sandboxFixtureRepository: SandboxFixtureRepository;
|
|
40
|
+
sandboxExperimentRepository: SandboxExperimentRepository;
|
|
41
|
+
sandboxRunRepository: SandboxRunRepository;
|
|
42
|
+
sandboxGradeRepository: SandboxGradeRepository;
|
|
43
|
+
workspaceRepository: WorkspaceRepository;
|
|
44
|
+
idGenerator: IdGenerator;
|
|
45
|
+
clock: Clock;
|
|
46
|
+
/** The routing default model ref, used to default an experiment's judge model. */
|
|
47
|
+
defaultModelRef?: ModelRef;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Management CRUD for the Sandbox (the parallel prompt/model testing surface): the
|
|
51
|
+
* shipped baselines + stored candidate prompt versions, the fixture library (builtins
|
|
52
|
+
* seeded lazily on first list, plus workspace-authored ones), and experiment definitions
|
|
53
|
+
* + their result grids. Running an experiment lives in {@link SandboxRunService}; this
|
|
54
|
+
* service is the persistence-facing half. Everything is workspace-scoped.
|
|
55
|
+
*/
|
|
56
|
+
export declare class SandboxService {
|
|
57
|
+
private readonly deps;
|
|
58
|
+
constructor(deps: SandboxServiceDependencies);
|
|
59
|
+
/** The full opt-in overview the UI loads when the Sandbox surface opens. */
|
|
60
|
+
overview(workspaceId: string): Promise<SandboxOverview>;
|
|
61
|
+
/** The shipped baselines (synthetic) followed by stored candidate versions. */
|
|
62
|
+
listPrompts(workspaceId: string, agentKind?: string): Promise<SandboxPromptVersion[]>;
|
|
63
|
+
/** Clone a shipped baseline into a fresh editable candidate lineage at version 1. */
|
|
64
|
+
clonePrompt(workspaceId: string, input: CloneSandboxPromptInput): Promise<SandboxPromptVersion>;
|
|
65
|
+
/** Append a new candidate version. The parent may be a baseline (starts a lineage) or a candidate. */
|
|
66
|
+
saveVersion(workspaceId: string, input: SaveSandboxVersionInput): Promise<SandboxPromptVersion>;
|
|
67
|
+
/** Replace a candidate version's labels. */
|
|
68
|
+
setLabels(workspaceId: string, id: string, input: SetSandboxLabelsInput): Promise<SandboxPromptVersion>;
|
|
69
|
+
/** Soft-archive a candidate version (hidden from the default listing). */
|
|
70
|
+
archivePrompt(workspaceId: string, id: string): Promise<void>;
|
|
71
|
+
/** The fixture library, seeding the builtin fixtures on first use. */
|
|
72
|
+
listFixtures(workspaceId: string): Promise<SandboxFixture[]>;
|
|
73
|
+
/** Create a workspace-authored fixture. */
|
|
74
|
+
createFixture(workspaceId: string, input: CreateSandboxFixtureInput): Promise<SandboxFixture>;
|
|
75
|
+
/** Remove a workspace-authored fixture. Builtin fixtures cannot be removed. */
|
|
76
|
+
removeFixture(workspaceId: string, id: string): Promise<void>;
|
|
77
|
+
listExperiments(workspaceId: string): Promise<SandboxExperiment[]>;
|
|
78
|
+
/** An experiment with its result grid (cells + grades). */
|
|
79
|
+
getExperiment(workspaceId: string, id: string): Promise<SandboxExperimentDetail>;
|
|
80
|
+
/** Create a draft experiment. Launching it (the run-driver) expands + grades the matrix. */
|
|
81
|
+
createExperiment(workspaceId: string, input: CreateSandboxExperimentInput): Promise<SandboxExperiment>;
|
|
82
|
+
/** Resolve the shipped baseline a clone derives from (by base-prompt id, else by kind). */
|
|
83
|
+
private resolveBaseline;
|
|
84
|
+
/** Seed the builtin fixture library for a workspace that has none yet. Idempotent. */
|
|
85
|
+
private ensureBuiltinFixtures;
|
|
86
|
+
/**
|
|
87
|
+
* The judge model to use when the caller didn't pick one: the deployment's routing
|
|
88
|
+
* default. We do NOT guess a provider — if no default is configured (e.g. a minimal
|
|
89
|
+
* deployment), require an explicit `judgeModel` at create time rather than defaulting to
|
|
90
|
+
* a vendor that may have no key, which would otherwise fail every cell's grade at launch.
|
|
91
|
+
*/
|
|
92
|
+
private defaultJudgeModel;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=SandboxService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SandboxService.d.ts","sourceRoot":"","sources":["../../../src/modules/sandbox/SandboxService.ts"],"names":[],"mappings":"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"}
|