@cat-factory/orchestration 0.278.0 → 0.279.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/dependencies.d.ts +2 -6
- package/dist/container/dependencies.d.ts.map +1 -1
- package/dist/modules/sandbox/SandboxRunService.d.ts +6 -1
- package/dist/modules/sandbox/SandboxRunService.d.ts.map +1 -1
- package/dist/modules/sandbox/SandboxRunService.js +34 -27
- package/dist/modules/sandbox/SandboxRunService.js.map +1 -1
- package/dist/modules/sandbox/SandboxService.d.ts +26 -3
- package/dist/modules/sandbox/SandboxService.d.ts.map +1 -1
- package/dist/modules/sandbox/SandboxService.js +81 -19
- package/dist/modules/sandbox/SandboxService.js.map +1 -1
- package/dist/modules/sandbox/sandbox-input.d.ts +16 -0
- package/dist/modules/sandbox/sandbox-input.d.ts.map +1 -0
- package/dist/modules/sandbox/sandbox-input.js +274 -0
- package/dist/modules/sandbox/sandbox-input.js.map +1 -0
- package/dist/modules/sandbox/sandbox.logic.d.ts +0 -8
- package/dist/modules/sandbox/sandbox.logic.d.ts.map +1 -1
- package/dist/modules/sandbox/sandbox.logic.js +4 -48
- package/dist/modules/sandbox/sandbox.logic.js.map +1 -1
- package/dist/modules/sandbox/sandboxAdmission.d.ts +36 -0
- package/dist/modules/sandbox/sandboxAdmission.d.ts.map +1 -0
- package/dist/modules/sandbox/sandboxAdmission.js +83 -0
- package/dist/modules/sandbox/sandboxAdmission.js.map +1 -0
- package/package.json +11 -11
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { AgentKindRegistry, ResolveFragmentInstallationId, ResolveSkillInstallationId } from '@cat-factory/agents';
|
|
2
2
|
import type { OpenRouterModelMeta, ResolvedValidationChecks } from '@cat-factory/contracts';
|
|
3
3
|
import type { AccountSettingsService, ComposeRuntime, CustomManifestTypeRegistry, DeployJobClient, DetectionConventions, EnvironmentBackendRegistry, RegisterHandlerInput, RunnerBackendRegistry, UserSecretKindRegistry, VcsPatConnectionService } from '@cat-factory/integrations';
|
|
4
|
-
import type { AccountInvitationRepository, AccountRepository, AccountSkillRepository, AgentContextSnapshotRepository, AgentExecutor, AgentPromptRepository, AgentSearchQueryRepository, AgentToolCallRepository, ApiContractRepository, AppCaches, AuditLogReader, AuditRecorder, BinaryGeneratorRegistry, BinaryGeneratorSource, BinaryStoreRegistry, BlockRepository, BootstrapJobRepository, BootstrapRunner, BrainstormSessionRepository, BranchProjectionRepository, BranchUpdater, BugHuntAssessor, CheckRunProjectionRepository, ClarityReviewRepository, Clock, CommitProjectionRepository, ConsensusGroupRepository, CreateSharedStackInput, CustomManifestTypeRepository, DeployCloneTarget, DeploymentDocumentResolver, DocInterviewRepository, DocumentConnectionRepository, DocumentConnectionStore, DocumentContentResolver, DocumentRepository, DocumentSourceProvider, EmailConnectionRepository, EmailSender, EnvConfigRepairJobRepository, EnvConfigRepairRunner, EnvConfigRepairer, EnvironmentConnectionRepository, EnvironmentProvider, EnvironmentRegistryRepository, EnvironmentTestRunRepository, EnvironmentTestRunner, EnvironmentUserHandlerRepository, ExecutionEventPublisher, ExecutionRepository, FoundationalBuiltinSource, FoundationalServiceRegistry, PromptFragmentRegistry, PromptFragmentSource, FoundationalServiceRepository, FoundationalServiceSourceRepository, FoundationalSourceResyncRequest, FragmentBriefGenerator, FragmentBriefRepository, FragmentSelector, FragmentSourceRepository, GateOutcomeRepository, GateRegistry, GitHubClient, GitHubInstallation, GitHubInstallationRepository, GitHubProvisioningClient, IdGenerator, IncidentEnrichmentConnectionRepository, InitiativePresetRegistry, InitiativeRepository, IssueProjectionRepository, IssueWritebackProvider, JudgeAssessor, JudgeRegistry, KaizenGradingRepository, KaizenVerifiedComboRepository, LlmCallMetricRepository, LlmTraceSink, LocalModelEndpointRepository, Logger, MembershipRepository, MergeTrackRecordRepository, ModelPresetRepository, ModelProvider, ModelProviderResolver, ModelRef, NotificationChannel, NotificationRepository, NotificationSettingsRepository, ObservabilityConnectionRepository, OperationalMetrics, PackageRegistryConnectionRepository, PasswordHasher, PasswordResetTokenRepository, PipelineRegistry, PipelineRepository, PipelineScheduleRepository, PlatformMetricsRepository, PrVerificationReportPublisher, PreflightHostProbes, PreviewTransport, PromptFragmentRepository, ProviderCapabilities, ProviderRegistry, ProvisioningLogRepository, PullRequestMerger, PullRequestProjectionRepository, ReferenceArchitectureRepository, ReleaseHealthConfigRepository, RepoBootstrapper, RepoProjectionRepository, ReportsRepository, ResolveRunInitiatorToken, SpendRollupRepository, RequirementReviewRepository, ResolveBinaryArtifactStore, ResolveRunRepoContext, AccountRiskPolicyRepository, RiskPolicyRepository, RiskPolicySuppressionRepository, RunInitiatorScope, RunLifecycleSink,
|
|
4
|
+
import type { AccountInvitationRepository, AccountRepository, AccountSkillRepository, AgentContextSnapshotRepository, AgentExecutor, AgentPromptRepository, AgentSearchQueryRepository, AgentToolCallRepository, ApiContractRepository, AppCaches, AuditLogReader, AuditRecorder, BinaryGeneratorRegistry, BinaryGeneratorSource, BinaryStoreRegistry, BlockRepository, BootstrapJobRepository, BootstrapRunner, BrainstormSessionRepository, BranchProjectionRepository, BranchUpdater, BugHuntAssessor, CheckRunProjectionRepository, ClarityReviewRepository, Clock, CommitProjectionRepository, ConsensusGroupRepository, CreateSharedStackInput, CustomManifestTypeRepository, DeployCloneTarget, DeploymentDocumentResolver, DocInterviewRepository, DocumentConnectionRepository, DocumentConnectionStore, DocumentContentResolver, DocumentRepository, DocumentSourceProvider, EmailConnectionRepository, EmailSender, EnvConfigRepairJobRepository, EnvConfigRepairRunner, EnvConfigRepairer, EnvironmentConnectionRepository, EnvironmentProvider, EnvironmentRegistryRepository, EnvironmentTestRunRepository, EnvironmentTestRunner, EnvironmentUserHandlerRepository, ExecutionEventPublisher, ExecutionRepository, FoundationalBuiltinSource, FoundationalServiceRegistry, PromptFragmentRegistry, PromptFragmentSource, FoundationalServiceRepository, FoundationalServiceSourceRepository, FoundationalSourceResyncRequest, FragmentBriefGenerator, FragmentBriefRepository, FragmentSelector, FragmentSourceRepository, GateOutcomeRepository, GateRegistry, GitHubClient, GitHubInstallation, GitHubInstallationRepository, GitHubProvisioningClient, IdGenerator, IncidentEnrichmentConnectionRepository, InitiativePresetRegistry, InitiativeRepository, IssueProjectionRepository, IssueWritebackProvider, JudgeAssessor, JudgeRegistry, KaizenGradingRepository, KaizenVerifiedComboRepository, LlmCallMetricRepository, LlmTraceSink, LocalModelEndpointRepository, Logger, MembershipRepository, MergeTrackRecordRepository, ModelPresetRepository, ModelProvider, ModelProviderResolver, ModelRef, NotificationChannel, NotificationRepository, NotificationSettingsRepository, ObservabilityConnectionRepository, OperationalMetrics, PackageRegistryConnectionRepository, PasswordHasher, PasswordResetTokenRepository, PipelineRegistry, PipelineRepository, PipelineScheduleRepository, PlatformMetricsRepository, PrVerificationReportPublisher, PreflightHostProbes, PreviewTransport, PromptFragmentRepository, ProviderCapabilities, ProviderRegistry, ProvisioningLogRepository, PullRequestMerger, PullRequestProjectionRepository, ReferenceArchitectureRepository, ReleaseHealthConfigRepository, RepoBootstrapper, RepoProjectionRepository, ReportsRepository, ResolveRunInitiatorToken, SpendRollupRepository, RequirementReviewRepository, ResolveBinaryArtifactStore, ResolveRepoFilesForCoords, ResolveRunRepoContext, AccountRiskPolicyRepository, RiskPolicyRepository, RiskPolicySuppressionRepository, RunInitiatorScope, RunLifecycleSink, RunnerPoolConnectionRepository, RunnerPoolProvider, SandboxExperimentRepository, SandboxFixtureRepository, SandboxGradeRepository, SandboxPromptVersionRepository, SandboxRunRepository, SecretCipher, SecretDelegate, ServiceFragmentDefaultsRepository, ServiceRepository, SharedStackRepository, SkillSourceRepository, SkillSourceResyncRequest, SlackConnectionRepository, SlackMemberMappingRepository, SlackSettingsRepository, StepResolverRegistry, SubscriptionActivationRepository, TaskConnectionRepository, TaskConnectionStore, TaskRepository, TaskSourceProvider, TaskSourceSettingsRepository, TaskTypeRegistry, TestSecretRef, TicketTrackerProvider, TokenUsageRepository, TrackerCommentIngestRepository, TrackerSettingsRepository, UrlSafetyPolicy, UserRepoAccessRepository, UserRepository, TutorialProgressRepository, UserSettingsRepository, VcsProviderRegistry, VcsWebUrls, WebhookVerifier, WorkRunner, TaskTypeSuppressionRepository, WorkspaceAgentSettingsRepository, WorkspaceMemberRepository, WorkspaceMountRepository, WorkspaceRepository, WorkspaceSettingsRepository } from '@cat-factory/kernel';
|
|
5
5
|
import type { SpendPricing } from '@cat-factory/spend';
|
|
6
6
|
import type { TesterQualityReviewer } from '../modules/execution/TesterQualityReviewService.js';
|
|
7
7
|
import type { AgentContextObservabilityService } from '../modules/observability/AgentContextObservabilityService.js';
|
|
@@ -235,11 +235,7 @@ export interface CoreDependencies {
|
|
|
235
235
|
* (`makeResolveRepoFilesForCoords`). Absent → repo validation/bootstrap report "no VCS
|
|
236
236
|
* connection".
|
|
237
237
|
*/
|
|
238
|
-
resolveRepoFilesForCoords?:
|
|
239
|
-
owner: string;
|
|
240
|
-
repo: string;
|
|
241
|
-
provider?: 'github' | 'gitlab';
|
|
242
|
-
}) => Promise<RunRepoContext | null>;
|
|
238
|
+
resolveRepoFilesForCoords?: ResolveRepoFilesForCoords;
|
|
243
239
|
/**
|
|
244
240
|
* Optional: dispatch / poll / release a CONTAINER-backed deploy job (real
|
|
245
241
|
* `kubectl`/`kustomize`/`helm`) through the workspace's runner transport — the async
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../src/container/dependencies.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../src/container/dependencies.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,7 +45,12 @@ export declare class SandboxRunService {
|
|
|
45
45
|
private failRun;
|
|
46
46
|
/** Resolve every prompt version referenced by the matrix to its system text + label. */
|
|
47
47
|
private resolvePrompts;
|
|
48
|
-
/**
|
|
48
|
+
/**
|
|
49
|
+
* Resolve every fixture referenced by the matrix (stored, else builtin), refusing one the driver
|
|
50
|
+
* cannot run and RENDERING each one's task input. Every refusal this method can raise therefore
|
|
51
|
+
* happens before the run is claimed, so a bad matrix is a 4xx with no grid rather than a
|
|
52
|
+
* half-finished experiment.
|
|
53
|
+
*/
|
|
49
54
|
private resolveFixtures;
|
|
50
55
|
/** The model provider for a workspace's scope (per-scope DB pool, else the static one). */
|
|
51
56
|
private providerFor;
|
|
@@ -1 +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;AAW5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;
|
|
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;AAW5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAgB5D,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,+EAA+E;IAC/E,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,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;IAC1B;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAA;CACxC;AAsBD;;;;;;;;;;;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,CA6MxF;YAIa,OAAO;IASrB,wFAAwF;YAC1E,cAAc;IAuB5B;;;;;OAKG;YACW,eAAe;IAqB7B,2FAA2F;YAC7E,WAAW;IASzB,oGAAoG;IACpG,OAAO,CAAC,MAAM;IAUd,OAAO,CAAC,MAAM;CAGf"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { assertFound, ConflictError, getErrorMessage, inlineModelRef, requireWorkspace, resolveScopedModelProvider, ValidationError, } from '@cat-factory/kernel';
|
|
2
|
-
import { catFactoryObservability,
|
|
3
|
-
import {
|
|
4
|
-
import { expandMatrix, listBaselines, listBuiltinFixtures, rubricFor, sandboxKindMeta, versionLabel, weightedTotal, } from '@cat-factory/sandbox';
|
|
2
|
+
import { catFactoryObservability, composedSystemPromptFor } from '@cat-factory/agents';
|
|
3
|
+
import { expandMatrix, listBaselines, listBuiltinFixtures, rubricFor, versionLabel, weightedTotal, } from '@cat-factory/sandbox';
|
|
5
4
|
import { generateText } from 'ai';
|
|
5
|
+
import { assertSandboxFixtureMatchesKind, assertSandboxRunnable, assertSandboxRunnableFixture, } from './sandboxAdmission.js';
|
|
6
6
|
import { composeExperimentDetail } from './SandboxService.js';
|
|
7
|
-
import {
|
|
7
|
+
import { renderFixtureInput } from './sandbox-input.js';
|
|
8
|
+
import { buildJudgePrompt, coerceJudgeScores, extractJson, gradedDimensionCount, JUDGE_SYSTEM_PROMPT, objectiveFor, parseModelCatalogId, } from './sandbox.logic.js';
|
|
8
9
|
/**
|
|
9
10
|
* The Sandbox run-driver + judge. {@link launch} expands a draft experiment's matrix
|
|
10
11
|
* into cells, runs each inline candidate (one LLM call against the prompt-version's
|
|
@@ -28,22 +29,20 @@ export class SandboxRunService {
|
|
|
28
29
|
if (experiment.status === 'running') {
|
|
29
30
|
throw new ConflictError('This experiment is already running.');
|
|
30
31
|
}
|
|
31
|
-
const meta =
|
|
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
|
-
}
|
|
32
|
+
const meta = assertSandboxRunnable(experiment.agentKind);
|
|
37
33
|
const provider = await this.providerFor(workspaceId);
|
|
38
34
|
const prompts = await this.resolvePrompts(workspaceId, experiment);
|
|
39
|
-
const fixtures = await this.resolveFixtures(workspaceId, experiment);
|
|
35
|
+
const fixtures = await this.resolveFixtures(workspaceId, experiment, meta);
|
|
40
36
|
const rubric = rubricFor(meta.rubric);
|
|
41
37
|
// Atomically claim the run BEFORE touching the grid: the conditional transition to
|
|
42
38
|
// `running` lets exactly one concurrent launch win, so two simultaneous launches can't
|
|
43
39
|
// both clear + re-expand the grid (duplicating cells) or race the grid-clearing deletes.
|
|
44
40
|
// The fast-path read above is just a friendly early error; THIS is the authoritative gate.
|
|
45
|
-
// Validation/resolution runs first,
|
|
46
|
-
//
|
|
41
|
+
// Validation/resolution runs first, RENDERING each fixture's task input as it goes, so every
|
|
42
|
+
// refusal a bad matrix can raise lands here rather than mid-grid: a fixture whose payload the
|
|
43
|
+
// builder cannot read is a 4xx with nothing persisted, never a run that spends tokens on the
|
|
44
|
+
// cells before it and leaves the rest `queued` with no error to explain them. The `finally`
|
|
45
|
+
// below settles the terminal status from here on.
|
|
47
46
|
if (!(await this.deps.sandboxExperimentRepository.claimForRun(workspaceId, experimentId))) {
|
|
48
47
|
throw new ConflictError('This experiment is already running.');
|
|
49
48
|
}
|
|
@@ -85,14 +84,14 @@ export class SandboxRunService {
|
|
|
85
84
|
// candidate output inspectable with the error, so the cell is `done` but not counted graded.
|
|
86
85
|
const runCell = async (run) => {
|
|
87
86
|
const prompt = prompts.get(run.promptVersionId);
|
|
88
|
-
const
|
|
89
|
-
if (!prompt || !
|
|
87
|
+
const resolved = fixtures.get(run.fixtureId);
|
|
88
|
+
if (!prompt || !resolved) {
|
|
90
89
|
await this.failRun(workspaceId, run, prompt
|
|
91
90
|
? `Unknown fixture "${run.fixtureId}"`
|
|
92
91
|
: `Unknown prompt version "${run.promptVersionId}"`);
|
|
93
92
|
return { tokensSpent: 0, graded: false };
|
|
94
93
|
}
|
|
95
|
-
const taskInput =
|
|
94
|
+
const { fixture, taskInput } = resolved;
|
|
96
95
|
let cellSpent = 0;
|
|
97
96
|
// Phase 1 — run the candidate. A failure here means the cell produced nothing,
|
|
98
97
|
// so the whole cell is `failed`.
|
|
@@ -103,11 +102,12 @@ export class SandboxRunService {
|
|
|
103
102
|
const candidate = await generateText({
|
|
104
103
|
model: provider.resolve(candidateRef),
|
|
105
104
|
// Composed exactly as production dispatch composes a workspace prompt override: the
|
|
106
|
-
// stored text is the BASE
|
|
107
|
-
// directives and trait guidance
|
|
108
|
-
// is never sent
|
|
109
|
-
// to the live prompt, since the promoted
|
|
110
|
-
|
|
105
|
+
// stored text is the shipped BASE prompt, and `composedSystemPromptFor` puts the rest
|
|
106
|
+
// back (surface directives and trait guidance, or a bespoke kind's directives half).
|
|
107
|
+
// Grading the bare base would measure text that is never sent, which matters most at the
|
|
108
|
+
// moment a well-graded candidate is promoted to the live prompt, since the promoted
|
|
109
|
+
// prompt would then behave unlike the graded one.
|
|
110
|
+
system: composedSystemPromptFor(experiment.agentKind, this.deps.agentKindRegistry, prompt.systemText),
|
|
111
111
|
prompt: taskInput,
|
|
112
112
|
temperature: 0.2,
|
|
113
113
|
maxOutputTokens: 4000,
|
|
@@ -228,18 +228,25 @@ export class SandboxRunService {
|
|
|
228
228
|
}
|
|
229
229
|
return map;
|
|
230
230
|
}
|
|
231
|
-
/**
|
|
232
|
-
|
|
231
|
+
/**
|
|
232
|
+
* Resolve every fixture referenced by the matrix (stored, else builtin), refusing one the driver
|
|
233
|
+
* cannot run and RENDERING each one's task input. Every refusal this method can raise therefore
|
|
234
|
+
* happens before the run is claimed, so a bad matrix is a 4xx with no grid rather than a
|
|
235
|
+
* half-finished experiment.
|
|
236
|
+
*/
|
|
237
|
+
async resolveFixtures(workspaceId, experiment, meta) {
|
|
233
238
|
const builtins = new Map(listBuiltinFixtures(this.deps.clock.now()).map((f) => [f.id, f]));
|
|
234
239
|
const map = new Map();
|
|
235
240
|
for (const id of new Set(experiment.matrix.fixtureIds)) {
|
|
236
241
|
const fixture = (await this.deps.sandboxFixtureRepository.get(workspaceId, id)) ?? builtins.get(id);
|
|
237
242
|
if (!fixture)
|
|
238
243
|
throw new ValidationError(`Unknown fixture "${id}"`);
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
244
|
+
assertSandboxRunnableFixture(fixture);
|
|
245
|
+
assertSandboxFixtureMatchesKind(fixture, meta);
|
|
246
|
+
map.set(id, {
|
|
247
|
+
fixture,
|
|
248
|
+
taskInput: renderFixtureInput(fixture, meta, this.deps.agentKindRegistry),
|
|
249
|
+
});
|
|
243
250
|
}
|
|
244
251
|
return map;
|
|
245
252
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxRunService.js","sourceRoot":"","sources":["../../../src/modules/sandbox/SandboxRunService.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,WAAW,EACX,aAAa,EACb,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,0BAA0B,EAC1B,eAAe,GAChB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"SandboxRunService.js","sourceRoot":"","sources":["../../../src/modules/sandbox/SandboxRunService.ts"],"names":[],"mappings":"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"}
|
|
@@ -98,7 +98,7 @@ export declare class SandboxService {
|
|
|
98
98
|
setLabels(workspaceId: string, id: string, input: SetSandboxLabelsInput): Promise<SandboxPromptVersion>;
|
|
99
99
|
/** Soft-archive a candidate version (hidden from the default listing). */
|
|
100
100
|
archivePrompt(workspaceId: string, id: string): Promise<void>;
|
|
101
|
-
/** The fixture library,
|
|
101
|
+
/** The fixture library, reconciled against the shipped builtin catalog first. */
|
|
102
102
|
listFixtures(workspaceId: string): Promise<SandboxFixture[]>;
|
|
103
103
|
/** Create a workspace-authored fixture. */
|
|
104
104
|
createFixture(workspaceId: string, input: CreateSandboxFixtureInput): Promise<SandboxFixture>;
|
|
@@ -109,10 +109,33 @@ export declare class SandboxService {
|
|
|
109
109
|
getExperiment(workspaceId: string, id: string): Promise<SandboxExperimentDetail>;
|
|
110
110
|
/** Create a draft experiment. Launching it (the run-driver) expands + grades the matrix. */
|
|
111
111
|
createExperiment(workspaceId: string, input: CreateSandboxExperimentInput): Promise<SandboxExperiment>;
|
|
112
|
+
/**
|
|
113
|
+
* Refuse a matrix naming a fixture the run-driver cannot run (a repository seed) or one the
|
|
114
|
+
* chosen agent kind is not exercised against.
|
|
115
|
+
*
|
|
116
|
+
* An unknown id is deliberately NOT refused here: the run-driver resolves fixtures against the
|
|
117
|
+
* workspace store AND the builtins at launch, and a fixture can legitimately be authored between
|
|
118
|
+
* create and launch. Refusing an absent id would only move that failure earlier while adding a way
|
|
119
|
+
* for a valid draft to be rejected.
|
|
120
|
+
*/
|
|
121
|
+
private assertRunnableFixtures;
|
|
112
122
|
/** Resolve the shipped baseline a clone derives from (by base-prompt id, else by kind). */
|
|
113
123
|
private resolveBaseline;
|
|
114
|
-
/**
|
|
115
|
-
|
|
124
|
+
/**
|
|
125
|
+
* Bring the workspace's builtin fixture rows up to date with the shipped catalog, leaving
|
|
126
|
+
* workspace-authored ones untouched. Idempotent, and a no-op write-wise once they agree.
|
|
127
|
+
*
|
|
128
|
+
* Reconciled against the CATALOG rather than seeded once, for the same reason built-in pipelines
|
|
129
|
+
* are: a "seed only when the workspace has none" gate makes every LATER release invisible to
|
|
130
|
+
* every workspace that has already opened the surface. This shipped two new agent kinds, and on
|
|
131
|
+
* such a workspace their fixture lists came back empty, so the kind was offered in the builder
|
|
132
|
+
* with a permanently disabled Run button and nothing on screen saying why.
|
|
133
|
+
*
|
|
134
|
+
* Compared field by field (rather than upserting all of them every time) because this runs on
|
|
135
|
+
* every overview load: a workspace whose builtins already match pays reads only. `createdAt` is
|
|
136
|
+
* taken from the stored row, so an unchanged fixture is byte-identical and no row churns.
|
|
137
|
+
*/
|
|
138
|
+
private reconcileBuiltinFixtures;
|
|
116
139
|
/**
|
|
117
140
|
* The judge model to use when the caller didn't pick one: the deployment's routing
|
|
118
141
|
* default. We do NOT guess a provider — if no default is configured (e.g. a minimal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxService.d.ts","sourceRoot":"","sources":["../../../src/modules/sandbox/SandboxService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,KAAK,EACL,WAAW,EACX,QAAQ,EACR,iBAAiB,EACjB,2BAA2B,EAC3B,cAAc,EACd,wBAAwB,EACxB,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,EACpB,8BAA8B,EAC9B,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,KAAK,EACV,4BAA4B,EAC5B,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAQL,KAAK,oBAAoB,EAK1B,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"SandboxService.d.ts","sourceRoot":"","sources":["../../../src/modules/sandbox/SandboxService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,KAAK,EACL,WAAW,EACX,QAAQ,EACR,iBAAiB,EACjB,2BAA2B,EAC3B,cAAc,EACd,wBAAwB,EACxB,YAAY,EACZ,sBAAsB,EACtB,oBAAoB,EACpB,8BAA8B,EAC9B,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,KAAK,EACV,4BAA4B,EAC5B,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAQL,KAAK,oBAAoB,EAK1B,MAAM,sBAAsB,CAAA;AAO7B,oFAAoF;AACpF,eAAO,MAAM,iBAAiB,MAAM,CAAA;AAEpC,0FAA0F;AAC1F,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,iBAAiB,CAAA;IAC7B,IAAI,EAAE,UAAU,EAAE,CAAA;IAClB,MAAM,EAAE,YAAY,EAAE,CAAA;CACvB;AAED,mFAAmF;AACnF,MAAM,WAAW,yBAAyB;IACxC,2BAA2B,EAAE,2BAA2B,CAAA;IACxD,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,sBAAsB,EAAE,sBAAsB,CAAA;CAC/C;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,yBAAyB,EAChC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,uBAAuB,CAAC,CAWlC;AAuBD,wEAAwE;AACxE,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,SAAS,oBAAoB,EAAE,CAAA;IAC3C,OAAO,EAAE,oBAAoB,EAAE,CAAA;IAC/B,QAAQ,EAAE,cAAc,EAAE,CAAA;IAC1B,WAAW,EAAE,iBAAiB,EAAE,CAAA;IAChC;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,0BAA0B;IACzC,8BAA8B,EAAE,8BAA8B,CAAA;IAC9D;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;IAC7C,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,+EAA+E;IAC/E,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,kFAAkF;IAClF,eAAe,CAAC,EAAE,QAAQ,CAAA;CAC3B;AAED;;;;;;GAMG;AACH,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,0BAA0B,EAAI;IAEjE,4EAA4E;IACtE,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAc5D;IAID;;;;;;;;;OASG;IACG,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAQ1F;IAED;;;;OAIG;YACW,gBAAgB;IAW9B;;;;OAIG;IACG,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAKrF;IAED,qFAAqF;IAC/E,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAqB/B;IAED,sGAAsG;IAChG,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,oBAAoB,CAAC,CAkC/B;IAED,4CAA4C;IACtC,SAAS,CACb,WAAW,EAAE,MAAM,EACnB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAU/B;IAED,0EAA0E;IACpE,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlE;IAID,iFAAiF;IAC3E,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAIjE;IAED,2CAA2C;IACrC,aAAa,CACjB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,cAAc,CAAC,CAczB;IAED,+EAA+E;IACzE,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAOlE;IAIK,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAGvE;IAED,2DAA2D;IACrD,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAGrF;IAED,4FAA4F;IACtF,gBAAgB,CACpB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,iBAAiB,CAAC,CAoC5B;IAID;;;;;;;;OAQG;YACW,sBAAsB;IAkBpC,2FAA2F;IAC3F,OAAO,CAAC,eAAe;IASvB;;;;;;;;;;;;;OAaG;YACW,wBAAwB;IAgBtC;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;CAS1B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { assertFound, ConflictError, requireWorkspace, ValidationError } from '@cat-factory/kernel';
|
|
2
2
|
import { cellCount, firstVersionFromBaseline, isRunnableMatrix, listBaselines, listBuiltinFixtures, nextVersion, SANDBOX_AGENT_KINDS, baselineVersionId, sandboxKindMeta, sandboxPromptKinds, workspacePromptVersions, } from '@cat-factory/sandbox';
|
|
3
|
+
import { assertSandboxFixtureMatchesKind, assertSandboxRunnable, assertSandboxRunnableFixture, } from './sandboxAdmission.js';
|
|
3
4
|
/** A safety ceiling on how many cells one experiment may expand to (cost guard). */
|
|
4
5
|
export const MAX_SANDBOX_CELLS = 100;
|
|
5
6
|
/**
|
|
@@ -15,6 +16,26 @@ export async function composeExperimentDetail(repos, workspaceId, experimentId)
|
|
|
15
16
|
]);
|
|
16
17
|
return { experiment, runs, grades };
|
|
17
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* A stored fixture's content, as a comparable string: every field a reconcile could need to
|
|
21
|
+
* refresh, serialized in a FIXED order.
|
|
22
|
+
*
|
|
23
|
+
* Ordered explicitly rather than stringifying the row, because the two are built by different
|
|
24
|
+
* code (one by the catalog, one by a repository's row mapping) and JSON key order is significant
|
|
25
|
+
* to `JSON.stringify`. Reading the row's own order would make every comparison false and turn a
|
|
26
|
+
* read-only reconcile into a write per builtin on every overview load. Both facades persist these
|
|
27
|
+
* as JSON TEXT, so the nested payload round-trips byte-stable.
|
|
28
|
+
*/
|
|
29
|
+
function fixtureContent(fixture) {
|
|
30
|
+
return JSON.stringify([
|
|
31
|
+
fixture.kind,
|
|
32
|
+
fixture.name,
|
|
33
|
+
fixture.payload,
|
|
34
|
+
fixture.repoRef,
|
|
35
|
+
fixture.objective,
|
|
36
|
+
fixture.origin,
|
|
37
|
+
]);
|
|
38
|
+
}
|
|
18
39
|
/**
|
|
19
40
|
* Management CRUD for the Sandbox (the parallel prompt/model testing surface): the
|
|
20
41
|
* shipped baselines + stored candidate prompt versions, the fixture library (builtins
|
|
@@ -149,10 +170,10 @@ export class SandboxService {
|
|
|
149
170
|
await this.deps.sandboxPromptVersionRepository.archive(workspaceId, id, this.deps.clock.now());
|
|
150
171
|
}
|
|
151
172
|
// ---- fixtures -------------------------------------------------------------
|
|
152
|
-
/** The fixture library,
|
|
173
|
+
/** The fixture library, reconciled against the shipped builtin catalog first. */
|
|
153
174
|
async listFixtures(workspaceId) {
|
|
154
175
|
await requireWorkspace(this.deps.workspaceRepository, workspaceId);
|
|
155
|
-
await this.
|
|
176
|
+
await this.reconcileBuiltinFixtures(workspaceId);
|
|
156
177
|
return this.deps.sandboxFixtureRepository.list(workspaceId);
|
|
157
178
|
}
|
|
158
179
|
/** Create a workspace-authored fixture. */
|
|
@@ -193,19 +214,17 @@ export class SandboxService {
|
|
|
193
214
|
/** Create a draft experiment. Launching it (the run-driver) expands + grades the matrix. */
|
|
194
215
|
async createExperiment(workspaceId, input) {
|
|
195
216
|
await requireWorkspace(this.deps.workspaceRepository, workspaceId);
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
// Refuse container kinds up front: the in-product run driver only runs inline cells,
|
|
201
|
-
// so a container experiment could be persisted but never launched. Reject at create
|
|
202
|
-
// time rather than leaving an un-launchable draft in the workspace.
|
|
203
|
-
if (meta.bucket === 'container') {
|
|
204
|
-
throw new ValidationError(`The "${input.agentKind}" agent runs in a container; container experiments are not yet supported in the Sandbox.`);
|
|
205
|
-
}
|
|
217
|
+
// Refuse an un-runnable kind up front, through the same assertion the run-driver uses: the
|
|
218
|
+
// driver only runs inline cells, so a draft naming a kind it cannot dispatch could be persisted
|
|
219
|
+
// and never launched.
|
|
220
|
+
const meta = assertSandboxRunnable(input.agentKind);
|
|
206
221
|
if (!isRunnableMatrix(input.matrix)) {
|
|
207
222
|
throw new ValidationError('The experiment matrix needs at least one prompt, model and fixture');
|
|
208
223
|
}
|
|
224
|
+
// ...and the same for the FIXTURES the matrix names, which only `launch` used to check. One
|
|
225
|
+
// list read indexed into a Map rather than a point read per id (the banned N+1), and the
|
|
226
|
+
// builtins fill in whatever a workspace has not had seeded yet.
|
|
227
|
+
await this.assertRunnableFixtures(workspaceId, input.matrix.fixtureIds, meta);
|
|
209
228
|
const repeats = input.repeats ?? 1;
|
|
210
229
|
const total = cellCount(input.matrix, repeats);
|
|
211
230
|
if (total > MAX_SANDBOX_CELLS) {
|
|
@@ -227,6 +246,30 @@ export class SandboxService {
|
|
|
227
246
|
return experiment;
|
|
228
247
|
}
|
|
229
248
|
// ---- internals ------------------------------------------------------------
|
|
249
|
+
/**
|
|
250
|
+
* Refuse a matrix naming a fixture the run-driver cannot run (a repository seed) or one the
|
|
251
|
+
* chosen agent kind is not exercised against.
|
|
252
|
+
*
|
|
253
|
+
* An unknown id is deliberately NOT refused here: the run-driver resolves fixtures against the
|
|
254
|
+
* workspace store AND the builtins at launch, and a fixture can legitimately be authored between
|
|
255
|
+
* create and launch. Refusing an absent id would only move that failure earlier while adding a way
|
|
256
|
+
* for a valid draft to be rejected.
|
|
257
|
+
*/
|
|
258
|
+
async assertRunnableFixtures(workspaceId, fixtureIds, meta) {
|
|
259
|
+
const byId = new Map();
|
|
260
|
+
for (const fixture of listBuiltinFixtures(this.deps.clock.now()))
|
|
261
|
+
byId.set(fixture.id, fixture);
|
|
262
|
+
for (const fixture of await this.deps.sandboxFixtureRepository.list(workspaceId)) {
|
|
263
|
+
byId.set(fixture.id, fixture);
|
|
264
|
+
}
|
|
265
|
+
for (const id of new Set(fixtureIds)) {
|
|
266
|
+
const fixture = byId.get(id);
|
|
267
|
+
if (!fixture)
|
|
268
|
+
continue;
|
|
269
|
+
assertSandboxRunnableFixture(fixture);
|
|
270
|
+
assertSandboxFixtureMatchesKind(fixture, meta);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
230
273
|
/** Resolve the shipped baseline a clone derives from (by base-prompt id, else by kind). */
|
|
231
274
|
resolveBaseline(agentKind, basePromptId) {
|
|
232
275
|
const baselines = listBaselines(this.deps.clock.now(), this.deps.agentKindRegistry);
|
|
@@ -236,13 +279,32 @@ export class SandboxService {
|
|
|
236
279
|
throw new ValidationError(`No baseline prompt for agent kind "${agentKind}"`);
|
|
237
280
|
return source;
|
|
238
281
|
}
|
|
239
|
-
/**
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
282
|
+
/**
|
|
283
|
+
* Bring the workspace's builtin fixture rows up to date with the shipped catalog, leaving
|
|
284
|
+
* workspace-authored ones untouched. Idempotent, and a no-op write-wise once they agree.
|
|
285
|
+
*
|
|
286
|
+
* Reconciled against the CATALOG rather than seeded once, for the same reason built-in pipelines
|
|
287
|
+
* are: a "seed only when the workspace has none" gate makes every LATER release invisible to
|
|
288
|
+
* every workspace that has already opened the surface. This shipped two new agent kinds, and on
|
|
289
|
+
* such a workspace their fixture lists came back empty, so the kind was offered in the builder
|
|
290
|
+
* with a permanently disabled Run button and nothing on screen saying why.
|
|
291
|
+
*
|
|
292
|
+
* Compared field by field (rather than upserting all of them every time) because this runs on
|
|
293
|
+
* every overview load: a workspace whose builtins already match pays reads only. `createdAt` is
|
|
294
|
+
* taken from the stored row, so an unchanged fixture is byte-identical and no row churns.
|
|
295
|
+
*/
|
|
296
|
+
async reconcileBuiltinFixtures(workspaceId) {
|
|
297
|
+
const stored = new Map((await this.deps.sandboxFixtureRepository.list(workspaceId)).map((f) => [f.id, f]));
|
|
298
|
+
for (const shipped of listBuiltinFixtures(this.deps.clock.now())) {
|
|
299
|
+
const existing = stored.get(shipped.id);
|
|
300
|
+
if (existing && fixtureContent(existing) === fixtureContent(shipped))
|
|
301
|
+
continue;
|
|
302
|
+
// Keep the original `createdAt` on a refresh: the row is the same fixture, and the library
|
|
303
|
+
// is ordered by it, so re-stamping would reshuffle the list on an unrelated release.
|
|
304
|
+
await this.deps.sandboxFixtureRepository.upsert(workspaceId, {
|
|
305
|
+
...shipped,
|
|
306
|
+
...(existing ? { createdAt: existing.createdAt } : {}),
|
|
307
|
+
});
|
|
246
308
|
}
|
|
247
309
|
}
|
|
248
310
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxService.js","sourceRoot":"","sources":["../../../src/modules/sandbox/SandboxService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SandboxService.js","sourceRoot":"","sources":["../../../src/modules/sandbox/SandboxService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { SandboxFixture } from '@cat-factory/contracts';
|
|
2
|
+
import { type AgentKindRegistry } from '@cat-factory/agents';
|
|
3
|
+
import { type SandboxAgentKindMeta } from '@cat-factory/sandbox';
|
|
4
|
+
/**
|
|
5
|
+
* Render a fixture into the task input for one cell.
|
|
6
|
+
*
|
|
7
|
+
* Throws a {@link ValidationError} naming the fixture when its payload cannot be read as the shape
|
|
8
|
+
* its agent kind consumes. That is deliberate: the old tolerant renderer turned a malformed
|
|
9
|
+
* workspace fixture into an EMPTY prompt, and the cell then ran, the judge was told "(no task input
|
|
10
|
+
* was supplied)", and it graded anyway, producing a real-looking score for a task nobody posed.
|
|
11
|
+
*
|
|
12
|
+
* Because it throws, the run-driver resolves it BEFORE claiming the experiment: a fixture the
|
|
13
|
+
* builder cannot read is a bad request, not a half-run grid.
|
|
14
|
+
*/
|
|
15
|
+
export declare function renderFixtureInput(fixture: SandboxFixture, meta: SandboxAgentKindMeta, registry: AgentKindRegistry): string;
|
|
16
|
+
//# sourceMappingURL=sandbox-input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-input.d.ts","sourceRoot":"","sources":["../../../src/modules/sandbox/sandbox-input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAU5D,OAAO,EAAE,KAAK,iBAAiB,EAAiB,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,KAAK,oBAAoB,EAAyB,MAAM,sBAAsB,CAAA;AAuGvF;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,oBAAoB,EAC1B,QAAQ,EAAE,iBAAiB,GAC1B,MAAM,CAcR"}
|
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
import { blockTypeSchema } from '@cat-factory/contracts';
|
|
2
|
+
import { ValidationError } from '@cat-factory/kernel';
|
|
3
|
+
import { userPromptFor } from '@cat-factory/agents';
|
|
4
|
+
import { statesMissingCheckout } from '@cat-factory/sandbox';
|
|
5
|
+
import { buildClarityPrompt } from '../clarity/clarity.logic.js';
|
|
6
|
+
import { buildRecommendationPrompt, buildReviewPrompt, } from '../requirements/requirements.logic.js';
|
|
7
|
+
/**
|
|
8
|
+
* What the candidate is TOLD when the Sandbox runs a kind production dispatches into a container.
|
|
9
|
+
*
|
|
10
|
+
* Its composed system prompt was written for an agent holding a real clone and instructs it to diff
|
|
11
|
+
* the branch and read the changed files; here there is neither a checkout nor a tool loop. Left
|
|
12
|
+
* unsaid, the candidate spends its answer apologising for files it could not open and the grade
|
|
13
|
+
* measures the harness rather than the prompt, which is the same defect as silently dropping a
|
|
14
|
+
* capability the prompt promised (see the "degrade loudly" rule).
|
|
15
|
+
*/
|
|
16
|
+
const NO_CHECKOUT_NOTICE = [
|
|
17
|
+
'EVALUATION NOTE: this run has NO repository checkout and no tools. Your instructions above',
|
|
18
|
+
'describe a run in which you would clone the branch and read the files yourself; here the work',
|
|
19
|
+
'under review is reproduced in full in the material above, and that material is all there is.',
|
|
20
|
+
'Review what you were given. Where a judgement genuinely needs code you were not shown, say so',
|
|
21
|
+
'explicitly instead of reporting on files you could not read.',
|
|
22
|
+
].join('\n');
|
|
23
|
+
/**
|
|
24
|
+
* The per-kind builders, each delegating to the pure prompt builder its production caller uses:
|
|
25
|
+
* `IterativeReviewService` for the requirements/clarity reviewers, `RequirementReviewService` for
|
|
26
|
+
* the Writer, and the generic `userPromptFor` for every kind the engine dispatches as an ordinary
|
|
27
|
+
* agent step (the companions and the estimator).
|
|
28
|
+
*
|
|
29
|
+
* Keyed by AGENT KIND, not fixture kind: the fixture kind says what shape the payload is, the agent
|
|
30
|
+
* kind decides what prompt that shape becomes.
|
|
31
|
+
*/
|
|
32
|
+
function inputBuilders(registry) {
|
|
33
|
+
const asAgentContext = (cell) => userPromptFor(agentRunContext(cell), registry, cell.notice ? { runNotice: cell.notice } : {});
|
|
34
|
+
// The inline ENGINE builders return a plain string with no closing instruction of their own, so
|
|
35
|
+
// appending is the right placement for them; it is still routed through one helper rather than
|
|
36
|
+
// hand-written three times, so a kind that later grows a suffix has one place to change.
|
|
37
|
+
return {
|
|
38
|
+
'requirements-review': (cell) => appendNotice(buildReviewPrompt(requirementsContext(cell)), cell),
|
|
39
|
+
'clarity-review': (cell) => appendNotice(buildClarityPrompt(clarityContext(cell)), cell),
|
|
40
|
+
'requirements-writer': (cell) => appendNotice(buildRecommendationPrompt(requirementsContext(cell), findings(cell), grounding(cell.payload)), cell),
|
|
41
|
+
reviewer: asAgentContext,
|
|
42
|
+
'architect-companion': asAgentContext,
|
|
43
|
+
'task-estimator': asAgentContext,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
function appendNotice(prompt, cell) {
|
|
47
|
+
return cell.notice ? `${prompt}\n\n${cell.notice}` : prompt;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Render a fixture into the task input for one cell.
|
|
51
|
+
*
|
|
52
|
+
* Throws a {@link ValidationError} naming the fixture when its payload cannot be read as the shape
|
|
53
|
+
* its agent kind consumes. That is deliberate: the old tolerant renderer turned a malformed
|
|
54
|
+
* workspace fixture into an EMPTY prompt, and the cell then ran, the judge was told "(no task input
|
|
55
|
+
* was supplied)", and it graded anyway, producing a real-looking score for a task nobody posed.
|
|
56
|
+
*
|
|
57
|
+
* Because it throws, the run-driver resolves it BEFORE claiming the experiment: a fixture the
|
|
58
|
+
* builder cannot read is a bad request, not a half-run grid.
|
|
59
|
+
*/
|
|
60
|
+
export function renderFixtureInput(fixture, meta, registry) {
|
|
61
|
+
const build = inputBuilders(registry)[meta.agentKind];
|
|
62
|
+
if (!build) {
|
|
63
|
+
throw new ValidationError(`The Sandbox has no task-input builder for "${meta.agentKind}"; it cannot be run as a cell.`, { reason: 'sandbox_input_unsupported' });
|
|
64
|
+
}
|
|
65
|
+
return build({
|
|
66
|
+
payload: fixture.payload ?? {},
|
|
67
|
+
fixtureName: fixture.name,
|
|
68
|
+
meta,
|
|
69
|
+
notice: statesMissingCheckout(meta) ? NO_CHECKOUT_NOTICE : undefined,
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
// ---- payload coercion -----------------------------------------------------
|
|
73
|
+
// A payload is `Record<string, unknown>` on the wire (a workspace may author one by hand), so each
|
|
74
|
+
// coercion asserts what its builder cannot work without and defaults the rest. The BUILTIN payloads
|
|
75
|
+
// are additionally pinned against the real context types by `sandbox-fixture-payloads.test.ts`.
|
|
76
|
+
/**
|
|
77
|
+
* Narrow a payload's `block.type` through the picklist that OWNS the vocabulary rather than a copy
|
|
78
|
+
* of its members. A hand list is silently partial the day a block type is added: the coercion keeps
|
|
79
|
+
* compiling, downgrades the new type to `service`, and the fixture's prompt then names a different
|
|
80
|
+
* kind of thing than the fixture describes.
|
|
81
|
+
*/
|
|
82
|
+
function isBlockType(value) {
|
|
83
|
+
return blockTypeSchema.options.includes(value);
|
|
84
|
+
}
|
|
85
|
+
/** The `{ title, type, description }` every context shape starts from. */
|
|
86
|
+
function block(cell) {
|
|
87
|
+
const raw = asRecord(cell.payload.block);
|
|
88
|
+
const title = asString(raw.title);
|
|
89
|
+
if (!title) {
|
|
90
|
+
throw new ValidationError(`Fixture "${cell.fixtureName}" has no \`block.title\`; there is nothing for the agent to work on.`, { reason: 'sandbox_fixture_payload_invalid' });
|
|
91
|
+
}
|
|
92
|
+
return {
|
|
93
|
+
title,
|
|
94
|
+
type: isBlockType(raw.type) ? raw.type : 'service',
|
|
95
|
+
description: asString(raw.description),
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
function requirementsContext(cell) {
|
|
99
|
+
const payload = cell.payload;
|
|
100
|
+
// `service` rides through as authored: absent means the fixture deliberately does not identify
|
|
101
|
+
// the product, which `buildReviewPrompt` STATES ("do not pick one") rather than omitting. A
|
|
102
|
+
// fixture that supplies one is exercising the opposite, identified path.
|
|
103
|
+
return {
|
|
104
|
+
block: block(cell),
|
|
105
|
+
docs: asArray(payload.docs).map((doc) => {
|
|
106
|
+
const d = asRecord(doc);
|
|
107
|
+
return {
|
|
108
|
+
title: asString(d.title) || 'Document',
|
|
109
|
+
url: asString(d.url),
|
|
110
|
+
excerpt: asString(d.excerpt) || asString(d.body) || asString(d.content),
|
|
111
|
+
};
|
|
112
|
+
}),
|
|
113
|
+
tasks: asArray(payload.tasks).map((task) => {
|
|
114
|
+
const t = asRecord(task);
|
|
115
|
+
return {
|
|
116
|
+
key: asString(t.key) || 'ISSUE',
|
|
117
|
+
title: asString(t.title) || 'Issue',
|
|
118
|
+
status: asString(t.status) || 'open',
|
|
119
|
+
type: asString(t.type) || 'task',
|
|
120
|
+
description: asString(t.description) || asString(t.body),
|
|
121
|
+
};
|
|
122
|
+
}),
|
|
123
|
+
...optional('service', payload.service),
|
|
124
|
+
...optionalString('specIntent', payload.specIntent),
|
|
125
|
+
...optionalString('refinedDirection', payload.refinedDirection),
|
|
126
|
+
...optionalString('incorporatedDoc', payload.incorporatedDoc),
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
function clarityContext(cell) {
|
|
130
|
+
const payload = cell.payload;
|
|
131
|
+
return {
|
|
132
|
+
block: block(cell),
|
|
133
|
+
...optional('service', payload.service),
|
|
134
|
+
...optionalString('investigation', payload.investigation),
|
|
135
|
+
...optionalString('clarifiedDoc', payload.clarifiedDoc),
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* The findings the Requirement Writer must answer. Required and non-empty: the Writer's whole
|
|
140
|
+
* contract is one recommendation per finding id, so a fixture with none poses no task and its
|
|
141
|
+
* `coverage` dimension would have nothing to score.
|
|
142
|
+
*/
|
|
143
|
+
function findings(cell) {
|
|
144
|
+
const items = asArray(cell.payload.findings).map((item, index) => {
|
|
145
|
+
const f = asRecord(item);
|
|
146
|
+
return {
|
|
147
|
+
id: asString(f.id) || `finding-${index + 1}`,
|
|
148
|
+
category: (asString(f.category) || 'gap'),
|
|
149
|
+
severity: (asString(f.severity) || 'medium'),
|
|
150
|
+
title: asString(f.title),
|
|
151
|
+
detail: asString(f.detail),
|
|
152
|
+
status: (asString(f.status) || 'open'),
|
|
153
|
+
reply: null,
|
|
154
|
+
...(typeof f.autoAnswerable === 'boolean' ? { autoAnswerable: f.autoAnswerable } : {}),
|
|
155
|
+
createdAt: 0,
|
|
156
|
+
updatedAt: 0,
|
|
157
|
+
};
|
|
158
|
+
});
|
|
159
|
+
if (items.length === 0) {
|
|
160
|
+
throw new ValidationError(`Fixture "${cell.fixtureName}" declares no \`findings\`; the requirement writer answers findings, so there is nothing to recommend.`, { reason: 'sandbox_fixture_payload_invalid' });
|
|
161
|
+
}
|
|
162
|
+
return items;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* The grounding material, in the Writer's own precedence order. Every leg is optional and an EMPTY
|
|
166
|
+
* one is meaningful rather than missing: a fixture with no standards and no spec excerpts is the one
|
|
167
|
+
* that tests whether the Writer reports `general-practice` honestly instead of citing a source it
|
|
168
|
+
* was never given.
|
|
169
|
+
*/
|
|
170
|
+
function grounding(payload) {
|
|
171
|
+
const raw = asRecord(payload.grounding);
|
|
172
|
+
return {
|
|
173
|
+
fragments: asArray(raw.fragments).map((fragment) => {
|
|
174
|
+
const f = asRecord(fragment);
|
|
175
|
+
return {
|
|
176
|
+
id: asString(f.id),
|
|
177
|
+
title: asString(f.title),
|
|
178
|
+
body: asString(f.body),
|
|
179
|
+
};
|
|
180
|
+
}),
|
|
181
|
+
specExcerpts: asArray(raw.specExcerpts).map((excerpt) => asString(excerpt)),
|
|
182
|
+
webResults: asArray(raw.webResults).map((result) => {
|
|
183
|
+
const w = asRecord(result);
|
|
184
|
+
return { title: asString(w.title), url: asString(w.url), content: asString(w.content) };
|
|
185
|
+
}),
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Build the run context for a kind the engine dispatches as an ordinary agent step, so
|
|
190
|
+
* `userPromptFor` composes the same prompt it would in a real run.
|
|
191
|
+
*
|
|
192
|
+
* `injectedContextFiles` is the field that carries a repo-scale change into an inline cell: it is
|
|
193
|
+
* the production seam for a caller with no filesystem (`withInjectedContext` folds the bodies in and
|
|
194
|
+
* states its own budget), which is why a multi-file fixture uses it rather than pasting the diff
|
|
195
|
+
* into a prior output.
|
|
196
|
+
*/
|
|
197
|
+
function agentRunContext(cell) {
|
|
198
|
+
const payload = cell.payload;
|
|
199
|
+
const resolved = asRecord(payload.resolvedDecision);
|
|
200
|
+
return {
|
|
201
|
+
// From the CATALOG entry, never the payload: this context composes the USER prompt while
|
|
202
|
+
// `meta.agentKind` composes the SYSTEM prompt, and a payload that named a different kind (or
|
|
203
|
+
// named none, and defaulted) would pair one kind's task framing with another's instructions.
|
|
204
|
+
agentKind: cell.meta.agentKind,
|
|
205
|
+
pipelineName: asString(payload.pipelineName) || 'sandbox',
|
|
206
|
+
stepIndex: typeof payload.stepIndex === 'number' ? payload.stepIndex : 0,
|
|
207
|
+
isFinalStep: payload.isFinalStep !== false,
|
|
208
|
+
block: {
|
|
209
|
+
...block(cell),
|
|
210
|
+
...optional('estimate', payload.estimate),
|
|
211
|
+
},
|
|
212
|
+
ownService: ownService(payload),
|
|
213
|
+
priorOutputs: asArray(payload.priorOutputs).map((prior) => {
|
|
214
|
+
const p = asRecord(prior);
|
|
215
|
+
return { agentKind: asString(p.agentKind) || 'coder', output: asString(p.output) };
|
|
216
|
+
}),
|
|
217
|
+
decisions: asArray(payload.decisions).map((decision) => {
|
|
218
|
+
const d = asRecord(decision);
|
|
219
|
+
return { question: asString(d.question), chosen: asString(d.chosen) };
|
|
220
|
+
}),
|
|
221
|
+
resolvedDecision: asString(resolved.question) && asString(resolved.chosen)
|
|
222
|
+
? { question: asString(resolved.question), chosen: asString(resolved.chosen) }
|
|
223
|
+
: null,
|
|
224
|
+
...optional('injectedContextFiles', contextFiles(payload.injectedContextFiles)),
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Which system the fixture's work belongs to, ALWAYS answered.
|
|
229
|
+
*
|
|
230
|
+
* Production's `AgentContextBuilder` populates `ownService` on every dispatch, and
|
|
231
|
+
* `ownServiceSection` is the one section that renders when the value says "no service", because a
|
|
232
|
+
* short task title names no software, so a silent omission reads exactly like a task whose product
|
|
233
|
+
* is obvious, and a model asked for concrete output then supplies one. Leaving the field undefined
|
|
234
|
+
* here would have graded these three kinds on a prompt production never sends, and penalised a
|
|
235
|
+
* candidate for inventing a product the harness gave it no way to know.
|
|
236
|
+
*
|
|
237
|
+
* A fixture that identifies one authors `ownService` as the real `OwnServiceContext` (the payload
|
|
238
|
+
* IS the context shape); one that does not gets the honest `not-under-a-service`, which is what
|
|
239
|
+
* production sends for a task sitting outside every service frame.
|
|
240
|
+
*/
|
|
241
|
+
function ownService(payload) {
|
|
242
|
+
const own = payload.ownService;
|
|
243
|
+
if (own && typeof own === 'object' && typeof own.stated === 'boolean')
|
|
244
|
+
return own;
|
|
245
|
+
return { stated: false, reason: 'not-under-a-service' };
|
|
246
|
+
}
|
|
247
|
+
/** The injected context files, or undefined when the fixture declares none. */
|
|
248
|
+
function contextFiles(value) {
|
|
249
|
+
const files = asArray(value).map((file) => {
|
|
250
|
+
const f = asRecord(file);
|
|
251
|
+
return { path: asString(f.path), content: asString(f.content) };
|
|
252
|
+
});
|
|
253
|
+
return files.length > 0 ? files : undefined;
|
|
254
|
+
}
|
|
255
|
+
function asRecord(value) {
|
|
256
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value)
|
|
257
|
+
? value
|
|
258
|
+
: {};
|
|
259
|
+
}
|
|
260
|
+
function asArray(value) {
|
|
261
|
+
return Array.isArray(value) ? value : [];
|
|
262
|
+
}
|
|
263
|
+
function asString(value) {
|
|
264
|
+
return typeof value === 'string' ? value : '';
|
|
265
|
+
}
|
|
266
|
+
/** Spread an optional field only when it has a value, so the context stays sparse. */
|
|
267
|
+
function optional(key, value) {
|
|
268
|
+
return value === undefined || value === null ? {} : { [key]: value };
|
|
269
|
+
}
|
|
270
|
+
function optionalString(key, value) {
|
|
271
|
+
const text = asString(value).trim();
|
|
272
|
+
return text ? { [key]: text } : {};
|
|
273
|
+
}
|
|
274
|
+
//# sourceMappingURL=sandbox-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-input.js","sourceRoot":"","sources":["../../../src/modules/sandbox/sandbox-input.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,14 +4,6 @@ import { type ExpectationScore, type Rubric } from '@cat-factory/sandbox';
|
|
|
4
4
|
export { extractJson } from '@cat-factory/kernel';
|
|
5
5
|
/** Split a model catalog id (`provider:model`) into a {@link ModelRef}. */
|
|
6
6
|
export declare function parseModelCatalogId(id: string): ModelRef;
|
|
7
|
-
/**
|
|
8
|
-
* Render an inline fixture's payload into the task input the candidate reasons over (its
|
|
9
|
-
* system prompt carries the role instructions) and the judge grades against. Defensive:
|
|
10
|
-
* the payload is a `Record<string, unknown>` matching a `RequirementsContext` /
|
|
11
|
-
* `ClarityContext` (a `block` + optional `docs`/`tasks`) or a reviewer `AgentRunContext`
|
|
12
|
-
* (a `block` + the work-to-review in `priorOutputs`), so it reads each field tolerantly.
|
|
13
|
-
*/
|
|
14
|
-
export declare function renderFixtureInput(fixture: SandboxFixture): string;
|
|
15
7
|
/** System prompt for the Sandbox judge — a reference-free rubric grader. */
|
|
16
8
|
export declare const JUDGE_SYSTEM_PROMPT: string;
|
|
17
9
|
/** Build the judge user prompt for one cell: rubric + task input + candidate output + expectations. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/sandbox/sandbox.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAEnD,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,MAAM,EAGZ,MAAM,sBAAsB,CAAA;AAK7B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"sandbox.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/sandbox/sandbox.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAEnD,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,MAAM,EAGZ,MAAM,sBAAsB,CAAA;AAK7B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAQjD,2EAA2E;AAC3E,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,QAAQ,CAIxD;AAED,4EAA4E;AAC5E,eAAO,MAAM,mBAAmB,QAUrB,CAAA;AAEX,uGAAuG;AACvG,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,SAAS,kBAAkB,EAAE,GAC1C,MAAM,CAsBR;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,qBAAqB,EAAE,CAavF;AAED,mGAAmG;AACnG,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,gBAAgB,GAAG,sBAAsB,CAWzF;AAED,+FAA+F;AAC/F,wBAAgB,YAAY,CAC1B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,MAAM,GACb,sBAAsB,GAAG,IAAI,CAI/B;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,MAAM,CAOzE"}
|
|
@@ -5,9 +5,10 @@ import { renderExpectationBrief, scoreExpectations, } from '@cat-factory/sandbox
|
|
|
5
5
|
// so the run-driver imports it alongside the other judge helpers.
|
|
6
6
|
export { extractJson } from '@cat-factory/kernel';
|
|
7
7
|
// Pure helpers for the Sandbox run-driver + judge. Kept side-effect-free (no LLM/IO,
|
|
8
|
-
// no clock/identity) so the
|
|
9
|
-
//
|
|
10
|
-
//
|
|
8
|
+
// no clock/identity) so the judge-prompt assembly, score coercion and objective projection are
|
|
9
|
+
// deterministic and unit-testable; the service wraps them with the model-provider calls +
|
|
10
|
+
// persistence. The candidate's TASK INPUT is built in `sandbox-input.ts`, which routes each kind
|
|
11
|
+
// through the pure prompt builder its production caller uses.
|
|
11
12
|
/** Split a model catalog id (`provider:model`) into a {@link ModelRef}. */
|
|
12
13
|
export function parseModelCatalogId(id) {
|
|
13
14
|
const idx = id.indexOf(':');
|
|
@@ -15,51 +16,6 @@ export function parseModelCatalogId(id) {
|
|
|
15
16
|
return { provider: id, model: '' };
|
|
16
17
|
return { provider: id.slice(0, idx), model: id.slice(idx + 1) };
|
|
17
18
|
}
|
|
18
|
-
/**
|
|
19
|
-
* Render an inline fixture's payload into the task input the candidate reasons over (its
|
|
20
|
-
* system prompt carries the role instructions) and the judge grades against. Defensive:
|
|
21
|
-
* the payload is a `Record<string, unknown>` matching a `RequirementsContext` /
|
|
22
|
-
* `ClarityContext` (a `block` + optional `docs`/`tasks`) or a reviewer `AgentRunContext`
|
|
23
|
-
* (a `block` + the work-to-review in `priorOutputs`), so it reads each field tolerantly.
|
|
24
|
-
*/
|
|
25
|
-
export function renderFixtureInput(fixture) {
|
|
26
|
-
const payload = (fixture.payload ?? {});
|
|
27
|
-
const parts = [];
|
|
28
|
-
const block = payload.block;
|
|
29
|
-
if (block) {
|
|
30
|
-
const heading = block.type ? `${block.title ?? 'Untitled'} (${block.type})` : block.title;
|
|
31
|
-
parts.push(`# ${heading ?? 'Untitled'}`);
|
|
32
|
-
if (block.description)
|
|
33
|
-
parts.push(block.description);
|
|
34
|
-
}
|
|
35
|
-
const docs = Array.isArray(payload.docs) ? payload.docs : [];
|
|
36
|
-
if (docs.length > 0) {
|
|
37
|
-
parts.push('## Linked documents');
|
|
38
|
-
for (const doc of docs) {
|
|
39
|
-
const d = doc;
|
|
40
|
-
parts.push(`### ${d.title ?? 'Document'}\n${d.body ?? d.content ?? ''}`.trim());
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
const tasks = Array.isArray(payload.tasks) ? payload.tasks : [];
|
|
44
|
-
if (tasks.length > 0) {
|
|
45
|
-
parts.push('## Linked tracker issues');
|
|
46
|
-
for (const task of tasks) {
|
|
47
|
-
const t = task;
|
|
48
|
-
parts.push(`- ${t.title ?? 'Issue'}${t.body ? `: ${t.body}` : ''}`);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
const priorOutputs = Array.isArray(payload.priorOutputs)
|
|
52
|
-
? payload.priorOutputs
|
|
53
|
-
: [];
|
|
54
|
-
if (priorOutputs.length > 0) {
|
|
55
|
-
parts.push('## Work from earlier agents');
|
|
56
|
-
for (const prior of priorOutputs) {
|
|
57
|
-
const p = prior;
|
|
58
|
-
parts.push(`### ${p.agentKind ?? 'agent'}\n${p.output ?? ''}`.trim());
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return parts.join('\n\n').trim();
|
|
62
|
-
}
|
|
63
19
|
/** System prompt for the Sandbox judge — a reference-free rubric grader. */
|
|
64
20
|
export const JUDGE_SYSTEM_PROMPT = [
|
|
65
21
|
"You are a meticulous, impartial evaluator. You grade an AI agent's output for a given",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox.logic.js","sourceRoot":"","sources":["../../../src/modules/sandbox/sandbox.logic.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAGL,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,sBAAsB,CAAA;AAE7B,kFAAkF;AAClF,wFAAwF;AACxF,kEAAkE;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEjD,qFAAqF;AACrF,
|
|
1
|
+
{"version":3,"file":"sandbox.logic.js","sourceRoot":"","sources":["../../../src/modules/sandbox/sandbox.logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { SandboxFixture } from '@cat-factory/contracts';
|
|
2
|
+
import { type SandboxAgentKindMeta } from '@cat-factory/sandbox';
|
|
3
|
+
/**
|
|
4
|
+
* Resolve a Sandbox-testable kind, refusing one the catalog does not know or cannot run.
|
|
5
|
+
*
|
|
6
|
+
* Refused as early as the caller can manage: at CREATE, so a draft nobody can launch is never
|
|
7
|
+
* stored, and again at LAUNCH, because a catalog entry can stop being runnable between the two (a
|
|
8
|
+
* kind whose production surface changed) and a stored draft would otherwise dispatch under a
|
|
9
|
+
* composition that no longer matches it.
|
|
10
|
+
*/
|
|
11
|
+
export declare function assertSandboxRunnable(agentKind: string): SandboxAgentKindMeta;
|
|
12
|
+
/**
|
|
13
|
+
* Refuse a fixture whose starting point is a repository seed.
|
|
14
|
+
*
|
|
15
|
+
* The run-driver is inline-only: it has no container, no clone and no branch to push, so a
|
|
16
|
+
* `repo-feature` / `repo-bug` fixture has nothing to run against. The message names the route rather
|
|
17
|
+
* than saying "not yet supported", because the two ways to get there are different work and a reader
|
|
18
|
+
* deciding whether to wait needs to know which one is missing (see
|
|
19
|
+
* `docs/initiatives/sandbox-coverage-expansion.md`).
|
|
20
|
+
*/
|
|
21
|
+
export declare function assertSandboxRunnableFixture(fixture: Pick<SandboxFixture, 'kind' | 'name'>): void;
|
|
22
|
+
/**
|
|
23
|
+
* Refuse a fixture the chosen agent kind does not claim.
|
|
24
|
+
*
|
|
25
|
+
* The catalog entry's `fixtureKinds` is what the library filter offers, but the FILTER is the SPA's
|
|
26
|
+
* and the API is not the SPA's only caller. Without this, `POST /sandbox/experiments` accepted a
|
|
27
|
+
* `requirements` fixture under `task-estimator`: the estimator's system prompt went out, the
|
|
28
|
+
* requirements payload rendered through the estimator's builder, and the cell was graded against
|
|
29
|
+
* the `estimation` rubric using the requirements fixture's expectations. Every layer behaved
|
|
30
|
+
* correctly and the resulting score meant nothing.
|
|
31
|
+
*
|
|
32
|
+
* The catalog already guarantees no two kinds claim the same fixture kind (`baselines.test.ts`), so
|
|
33
|
+
* a fixture belongs to at most one agent and this is a total answer rather than a heuristic.
|
|
34
|
+
*/
|
|
35
|
+
export declare function assertSandboxFixtureMatchesKind(fixture: Pick<SandboxFixture, 'kind' | 'name'>, meta: SandboxAgentKindMeta): void;
|
|
36
|
+
//# sourceMappingURL=sandboxAdmission.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandboxAdmission.d.ts","sourceRoot":"","sources":["../../../src/modules/sandbox/sandboxAdmission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAA4B,MAAM,wBAAwB,CAAA;AAGtF,OAAO,EAAE,KAAK,oBAAoB,EAAmB,MAAM,sBAAsB,CAAA;AA2BjF;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,oBAAoB,CAe7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,IAAI,CAQjG;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC,EAC9C,IAAI,EAAE,oBAAoB,GACzB,IAAI,CAQN"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { SANDBOX_REPO_FIXTURE_KINDS } from '@cat-factory/contracts';
|
|
2
|
+
import { ValidationError } from '@cat-factory/kernel';
|
|
3
|
+
import { sandboxKindMeta } from '@cat-factory/sandbox';
|
|
4
|
+
// What the Sandbox will and will not run, in ONE place.
|
|
5
|
+
//
|
|
6
|
+
// There were two doors and only one of them was locked: `createExperiment` refused a container KIND
|
|
7
|
+
// while `launch` refused both the kind and a repo FIXTURE, each with its own hand-written message.
|
|
8
|
+
// So a matrix naming a repo fixture persisted as a draft that could never be launched, and the two
|
|
9
|
+
// copies of the container-kind wording were free to drift from the catalog's own explanation of why.
|
|
10
|
+
// Both doors now assert through here, and WHICH refusal applies comes off the catalog entry
|
|
11
|
+
// (`unsupportedReason`), the same value the SPA maps to its translated note.
|
|
12
|
+
/**
|
|
13
|
+
* The API-facing sentence for each refusal code, exhaustive over the vocabulary so a new member
|
|
14
|
+
* fails to compile until it has one.
|
|
15
|
+
*
|
|
16
|
+
* English on purpose: this is the message on a `ValidationError`, read by whoever called the
|
|
17
|
+
* endpoint, and it carries `details.reason` for a client that wants to say it differently. The
|
|
18
|
+
* SPA never renders it (it maps the CODE to a locale key), which is what keeps the catalog free of
|
|
19
|
+
* prose no locale can reach.
|
|
20
|
+
*/
|
|
21
|
+
const UNSUPPORTED_MESSAGES = {
|
|
22
|
+
'container-run-required': 'This agent’s deliverable is a pushed commit, so grading it needs a real container run ' +
|
|
23
|
+
'against a seed repository. Register a repo fixture pointing at a repository this deployment ' +
|
|
24
|
+
'owns once container cells land; an inline cell can only grade text.',
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Resolve a Sandbox-testable kind, refusing one the catalog does not know or cannot run.
|
|
28
|
+
*
|
|
29
|
+
* Refused as early as the caller can manage: at CREATE, so a draft nobody can launch is never
|
|
30
|
+
* stored, and again at LAUNCH, because a catalog entry can stop being runnable between the two (a
|
|
31
|
+
* kind whose production surface changed) and a stored draft would otherwise dispatch under a
|
|
32
|
+
* composition that no longer matches it.
|
|
33
|
+
*/
|
|
34
|
+
export function assertSandboxRunnable(agentKind) {
|
|
35
|
+
const meta = sandboxKindMeta(agentKind);
|
|
36
|
+
if (!meta) {
|
|
37
|
+
throw new ValidationError(`"${agentKind}" is not a Sandbox-testable agent kind`, {
|
|
38
|
+
reason: 'sandbox_kind_unknown',
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
if (meta.sandboxRun === 'unsupported') {
|
|
42
|
+
const reason = meta.unsupportedReason;
|
|
43
|
+
throw new ValidationError(reason ? UNSUPPORTED_MESSAGES[reason] : `"${agentKind}" cannot run in the Sandbox`, { reason: 'sandbox_kind_unsupported' });
|
|
44
|
+
}
|
|
45
|
+
return meta;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Refuse a fixture whose starting point is a repository seed.
|
|
49
|
+
*
|
|
50
|
+
* The run-driver is inline-only: it has no container, no clone and no branch to push, so a
|
|
51
|
+
* `repo-feature` / `repo-bug` fixture has nothing to run against. The message names the route rather
|
|
52
|
+
* than saying "not yet supported", because the two ways to get there are different work and a reader
|
|
53
|
+
* deciding whether to wait needs to know which one is missing (see
|
|
54
|
+
* `docs/initiatives/sandbox-coverage-expansion.md`).
|
|
55
|
+
*/
|
|
56
|
+
export function assertSandboxRunnableFixture(fixture) {
|
|
57
|
+
if (!SANDBOX_REPO_FIXTURE_KINDS.includes(fixture.kind))
|
|
58
|
+
return;
|
|
59
|
+
throw new ValidationError(`Fixture "${fixture.name}" starts from a repository seed, and Sandbox cells run inline with no ` +
|
|
60
|
+
'checkout. Use an inline fixture, or wait for container cells (which need a seed repository ' +
|
|
61
|
+
'this deployment owns).', { reason: 'sandbox_fixture_needs_checkout' });
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Refuse a fixture the chosen agent kind does not claim.
|
|
65
|
+
*
|
|
66
|
+
* The catalog entry's `fixtureKinds` is what the library filter offers, but the FILTER is the SPA's
|
|
67
|
+
* and the API is not the SPA's only caller. Without this, `POST /sandbox/experiments` accepted a
|
|
68
|
+
* `requirements` fixture under `task-estimator`: the estimator's system prompt went out, the
|
|
69
|
+
* requirements payload rendered through the estimator's builder, and the cell was graded against
|
|
70
|
+
* the `estimation` rubric using the requirements fixture's expectations. Every layer behaved
|
|
71
|
+
* correctly and the resulting score meant nothing.
|
|
72
|
+
*
|
|
73
|
+
* The catalog already guarantees no two kinds claim the same fixture kind (`baselines.test.ts`), so
|
|
74
|
+
* a fixture belongs to at most one agent and this is a total answer rather than a heuristic.
|
|
75
|
+
*/
|
|
76
|
+
export function assertSandboxFixtureMatchesKind(fixture, meta) {
|
|
77
|
+
if (meta.fixtureKinds.includes(fixture.kind))
|
|
78
|
+
return;
|
|
79
|
+
throw new ValidationError(`Fixture "${fixture.name}" is a "${fixture.kind}" fixture, which "${meta.agentKind}" is not ` +
|
|
80
|
+
`exercised against (it takes: ${meta.fixtureKinds.join(', ')}). Grading it here would score ` +
|
|
81
|
+
"one agent's task on another's rubric.", { reason: 'sandbox_fixture_kind_mismatch' });
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=sandboxAdmission.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandboxAdmission.js","sourceRoot":"","sources":["../../../src/modules/sandbox/sandboxAdmission.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAA6B,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEjF,wDAAwD;AACxD,EAAE;AACF,oGAAoG;AACpG,mGAAmG;AACnG,mGAAmG;AACnG,qGAAqG;AACrG,4FAA4F;AAC5F,6EAA6E;AAE7E;;;;;;;;GAQG;AACH,MAAM,oBAAoB,GAA6C;IACrE,wBAAwB,EACtB,wFAAwF;QACxF,8FAA8F;QAC9F,qEAAqE;CACxE,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACrD,MAAM,IAAI,GAAG,eAAe,CAAC,SAAS,CAAC,CAAA;IACvC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,eAAe,CAAC,IAAI,SAAS,wCAAwC,EAAE;YAC/E,MAAM,EAAE,sBAAsB;SAC/B,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,KAAK,aAAa,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAA;QACrC,MAAM,IAAI,eAAe,CACvB,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,6BAA6B,EAClF,EAAE,MAAM,EAAE,0BAA0B,EAAE,CACvC,CAAA;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,4BAA4B,CAAC,OAA8C;IACzF,IAAI,CAAE,0BAAgD,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAM;IACrF,MAAM,IAAI,eAAe,CACvB,YAAY,OAAO,CAAC,IAAI,wEAAwE;QAC9F,6FAA6F;QAC7F,wBAAwB,EAC1B,EAAE,MAAM,EAAE,gCAAgC,EAAE,CAC7C,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,+BAA+B,CAC7C,OAA8C,EAC9C,IAA0B;IAE1B,IAAK,IAAI,CAAC,YAAkC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAM;IAC3E,MAAM,IAAI,eAAe,CACvB,YAAY,OAAO,CAAC,IAAI,WAAW,OAAO,CAAC,IAAI,qBAAqB,IAAI,CAAC,SAAS,WAAW;QAC3F,gCAAgC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC;QAC7F,uCAAuC,EACzC,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAC5C,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/orchestration",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.279.0",
|
|
4
4
|
"description": "Delivery-workflow engine for the Agent Architecture Board (execution, bootstrap, pipelines, board, boardScan, requirements, and composition root).",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -25,20 +25,20 @@
|
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"ai": "^7.0.64",
|
|
28
|
-
"@cat-factory/agents": "0.
|
|
29
|
-
"@cat-factory/caching": "0.20.
|
|
30
|
-
"@cat-factory/contracts": "0.
|
|
31
|
-
"@cat-factory/integrations": "0.165.
|
|
32
|
-
"@cat-factory/kernel": "0.
|
|
33
|
-
"@cat-factory/prompt-fragments": "1.0.
|
|
34
|
-
"@cat-factory/sandbox": "0.
|
|
35
|
-
"@cat-factory/spend": "0.16.
|
|
36
|
-
"@cat-factory/workspaces": "0.28.
|
|
28
|
+
"@cat-factory/agents": "0.136.0",
|
|
29
|
+
"@cat-factory/caching": "0.20.31",
|
|
30
|
+
"@cat-factory/contracts": "0.320.0",
|
|
31
|
+
"@cat-factory/integrations": "0.165.4",
|
|
32
|
+
"@cat-factory/kernel": "0.310.0",
|
|
33
|
+
"@cat-factory/prompt-fragments": "1.0.86",
|
|
34
|
+
"@cat-factory/sandbox": "0.12.0",
|
|
35
|
+
"@cat-factory/spend": "0.16.2",
|
|
36
|
+
"@cat-factory/workspaces": "0.28.19"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"typescript": "7.0.2",
|
|
40
40
|
"vitest": "^4.1.10",
|
|
41
|
-
"@cat-factory/sandbox-fixtures": "0.
|
|
41
|
+
"@cat-factory/sandbox-fixtures": "0.8.0"
|
|
42
42
|
},
|
|
43
43
|
"scripts": {
|
|
44
44
|
"build": "tsc -b tsconfig.build.json",
|