@workbench-ai/workbench-built-in-adapters 0.0.51 → 0.0.52

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.
Files changed (2) hide show
  1. package/dist/execute.js +16 -7
  2. package/package.json +5 -5
package/dist/execute.js CHANGED
@@ -101,7 +101,7 @@ async function executeWorkbenchEngineResolveRequest(request) {
101
101
  });
102
102
  }
103
103
  async function executeWorkbenchEngineRunRequest(request) {
104
- const outcome = workbenchEngineGradingIsolation(request) === "separate"
104
+ const outcome = await workbenchEngineGradingIsolation(request) === "separate"
105
105
  ? await runWorkbenchEngineSeparateGrading(request)
106
106
  : await runWorkbenchEngineSharedGrading(request);
107
107
  if (!outcome.result) {
@@ -176,16 +176,25 @@ function workbenchEngineCandidateInvocation(request) {
176
176
  command: candidate.command,
177
177
  };
178
178
  }
179
- function workbenchEngineGradingIsolation(request) {
179
+ async function workbenchEngineGradingIsolation(request) {
180
180
  const grading = jsonRecord(adapterCommandConfigRecord(request).grading);
181
181
  const isolation = grading?.isolation;
182
- if (isolation === undefined) {
183
- return "shared";
182
+ if (isolation !== undefined &&
183
+ isolation !== "shared" &&
184
+ isolation !== "separate") {
185
+ throw new Error("Workbench engine grading.isolation must be shared or separate.");
184
186
  }
185
- if (isolation === "shared" || isolation === "separate") {
186
- return isolation;
187
+ if (await workbenchEnginePrivateFilesPresent(request)) {
188
+ return "separate";
187
189
  }
188
- throw new Error("Workbench engine grading.isolation must be shared or separate.");
190
+ return isolation ?? "shared";
191
+ }
192
+ async function workbenchEnginePrivateFilesPresent(request) {
193
+ if (!request.paths.enginePrivate) {
194
+ return false;
195
+ }
196
+ const files = await readOptionalSurfaceFiles(request.paths.enginePrivate);
197
+ return files.length > 0;
189
198
  }
190
199
  async function runWorkbenchEngineSharedGrading(request) {
191
200
  const inputs = await workbenchEngineRuntimeInputs(request);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@workbench-ai/workbench-built-in-adapters",
3
- "version": "0.0.51",
3
+ "version": "0.0.52",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",
@@ -32,12 +32,12 @@
32
32
  ],
33
33
  "dependencies": {
34
34
  "yaml": "^2.8.2",
35
+ "@workbench-ai/agent-driver-anthropic-claude-code": "0.0.45",
35
36
  "@workbench-ai/agent-driver-openai-codex": "0.0.45",
36
- "@workbench-ai/workbench-contract": "0.0.51",
37
+ "@workbench-ai/workbench-contract": "0.0.52",
38
+ "@workbench-ai/workbench-core": "0.0.52",
37
39
  "@workbench-ai/agent-driver": "0.0.45",
38
- "@workbench-ai/workbench-core": "0.0.51",
39
- "@workbench-ai/agent-driver-anthropic-claude-code": "0.0.45",
40
- "@workbench-ai/workbench-protocol": "0.0.51"
40
+ "@workbench-ai/workbench-protocol": "0.0.52"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@types/node": "^24.3.1",