@workbench-ai/workbench-core 0.0.70 → 0.0.72

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/index.d.ts CHANGED
@@ -113,6 +113,7 @@ export interface WorkbenchImproveOptions extends WorkbenchCommandOptions {
113
113
  version?: string;
114
114
  skill?: string;
115
115
  agent?: string;
116
+ improverAgent?: WorkbenchAgent;
116
117
  budget?: number;
117
118
  samples?: number;
118
119
  parentRunId?: string;
@@ -274,7 +275,7 @@ export declare function workbenchImprovementEvidenceTraces(traces: readonly Work
274
275
  export declare function workbenchImprovementEvidenceTracesForVersion(state: WorkbenchProjectState, options: {
275
276
  versionId: string;
276
277
  skillName: string;
277
- agent: WorkbenchAgent;
278
+ agent?: WorkbenchAgent;
278
279
  evalHash?: string;
279
280
  traceIds?: readonly string[];
280
281
  }): WorkbenchTrace[];
@@ -382,7 +383,7 @@ export declare function importObjectPack(state: WorkbenchProjectState, pack: Wor
382
383
  export declare function hashJson(value: unknown): string;
383
384
  export declare function hashFiles(files: readonly SurfaceSnapshotFile[]): string;
384
385
  export declare function workbenchExecutionEventBatchId(batch: WorkbenchExecutionEventBatch): string;
385
- export declare function readWorkbenchSkillRunOutputScore(output: unknown): number;
386
+ export declare function readWorkbenchSkillRunOutputScore(output: unknown): number | undefined;
386
387
  export declare function readWorkbenchSkillRunOutputUsage(output: unknown): UsageSummary | undefined;
387
388
  export declare function readWorkbenchSkillTraceResultsCostUsd(results: readonly unknown[]): number | undefined;
388
389
  export declare function readWorkbenchSkillUsageCostUsd(usage: UsageSummary | undefined): number | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1707,6 +1707,7 @@ const DEFAULT_SKILL_ENVIRONMENT_DOCKERFILE = [
1707
1707
  const HTTP_REMOTE_GZIP_THRESHOLD_BYTES = 1024 * 1024;
1708
1708
  const projectLockContext = new AsyncLocalStorage();
1709
1709
  const projectLockQueues = new Map();
1710
+ const stateSaveQueues = new Map();
1710
1711
  const SKILL_EVAL_COMMAND_AGENT_ADAPTERS = new Set(["local", "command"]);
1711
1712
  const SKILL_EVAL_PROVIDER_AGENT_ADAPTERS = new Set(["codex", "claude"]);
1712
1713
  const UTF8_DECODER = new TextDecoder("utf-8", { fatal: true });
@@ -1722,6 +1723,24 @@ const IGNORED_SKILL_FILES = new Set([
1722
1723
  ]);
1723
1724
  export async function initWorkbenchSkill(options = {}) {
1724
1725
  const root = resolveRoot(options.dir);
1726
+ const rootExists = await exists(root);
1727
+ if (rootExists && await exists(workbenchDir(root))) {
1728
+ throw new WorkbenchCodedError("already_initialized", `Workbench project already exists: ${root}`, {
1729
+ remediation: `cd ${root} && workbench`,
1730
+ subject: { root },
1731
+ exitCode: 2,
1732
+ });
1733
+ }
1734
+ if (rootExists && !await exists(workbenchDir(root))) {
1735
+ const entries = await fs.readdir(root);
1736
+ if (entries.length > 0) {
1737
+ throw new WorkbenchCodedError("usage", `Directory is not empty: ${root}`, {
1738
+ remediation: "To adopt an existing folder, write SKILL.md yourself, then run a Workbench command from that folder.",
1739
+ subject: { root },
1740
+ exitCode: 2,
1741
+ });
1742
+ }
1743
+ }
1725
1744
  await fs.mkdir(root, { recursive: true });
1726
1745
  await ensureFile(path.join(root, SKILL_FILE), [
1727
1746
  "---",
@@ -1766,7 +1785,6 @@ export async function initWorkbenchSkill(options = {}) {
1766
1785
  "#!/bin/sh",
1767
1786
  "set -eu",
1768
1787
  "test -f \"$SKILL_DIR/SKILL.md\"",
1769
- "grep -q '^# Skill' \"$SKILL_DIR/SKILL.md\"",
1770
1788
  "mkdir -p \"$OUTPUT_DIR\"",
1771
1789
  "cp \"$SKILL_DIR/SKILL.md\" \"$OUTPUT_DIR/SKILL.md\"",
1772
1790
  "printf '{\"ok\":true,\"kind\":\"smoke\",\"message\":\"Starter smoke check passed; replace with workflow-specific evals.\"}\\n' > \"$OUTPUT_DIR/result.json\"",
@@ -1821,7 +1839,7 @@ export async function workbenchStatusSnapshot(options = {}) {
1821
1839
  total: 0,
1822
1840
  },
1823
1841
  remotes: [],
1824
- next: [`workbench new ${root}`],
1842
+ next: `workbench new ${root}`,
1825
1843
  };
1826
1844
  }
1827
1845
  return withWorkbenchProjectLockRoot(root, async () => {
@@ -1837,7 +1855,7 @@ export async function workbenchStatusSnapshot(options = {}) {
1837
1855
  await saveState(root, state);
1838
1856
  const defaultSkill = await readDefaultSkillSelection(root, skillSources);
1839
1857
  const defaultAgent = await readDefaultAgentSelection(root, agents);
1840
- const latestVersionId = state.versions[state.versions.length - 1]?.id;
1858
+ const latestVersionId = version.id;
1841
1859
  const lastRun = [...state.runs].sort((left, right) => right.createdAt.localeCompare(left.createdAt))[0];
1842
1860
  const syncByRemote = new Map(syncStates.map((entry) => [entry.remote, entry]));
1843
1861
  const remotes = Object.values(state.remotes)
@@ -1851,9 +1869,8 @@ export async function workbenchStatusSnapshot(options = {}) {
1851
1869
  ...(sync.lastSyncedAt ? { lastSyncedAt: sync.lastSyncedAt } : {}),
1852
1870
  lastAttemptAt: sync.lastAttemptAt,
1853
1871
  ...(sync.lastError ? { lastError: sync.lastError } : { lastError: null }),
1854
- ...(sync.status === "error" ? { nextCommand: `workbench sync ${remote.name}` } : {}),
1855
1872
  }
1856
- : { status: "never", lastError: null, nextCommand: `workbench sync ${remote.name}` };
1873
+ : { status: "never", lastError: null };
1857
1874
  return {
1858
1875
  name: remote.name,
1859
1876
  kind: remote.kind,
@@ -1883,49 +1900,14 @@ export async function workbenchStatusSnapshot(options = {}) {
1883
1900
  ...(lastRun ? {
1884
1901
  lastRunId: lastRun.id,
1885
1902
  lastStatus: lastRun.status,
1886
- ...(lastRun.score !== undefined ? { lastScore: lastRun.score } : {}),
1903
+ ...(lastRun.status === "succeeded" && lastRun.score !== undefined ? { lastScore: lastRun.score } : {}),
1887
1904
  } : {}),
1888
1905
  },
1889
1906
  remotes,
1890
- next: statusNextCommands({ state, remotes, defaultAgent }),
1907
+ next: null,
1891
1908
  };
1892
1909
  });
1893
1910
  }
1894
- function statusNextCommands(args) {
1895
- const commands = [];
1896
- if (args.state.runs.length === 0) {
1897
- commands.push("workbench eval");
1898
- }
1899
- const lastRun = [...args.state.runs].sort((left, right) => right.createdAt.localeCompare(left.createdAt))[0];
1900
- if (lastRun?.status === "failed" || lastRun?.status === "canceled") {
1901
- commands.push(`workbench show ${lastRun.id}`);
1902
- commands.push(`workbench improve --agents ${args.defaultAgent ?? "default"} --budget 1 -n 1`);
1903
- }
1904
- const failedRemote = args.remotes.find((remote) => remote.sync.status === "error");
1905
- if (failedRemote) {
1906
- commands.push(`workbench sync ${failedRemote.name}`);
1907
- }
1908
- const unpublishedRemote = args.remotes.find((remote) => remote.kind === "workbench-cloud" &&
1909
- remote.publication.status === "unpublished" &&
1910
- remote.sync.status === "up_to_date");
1911
- if (unpublishedRemote) {
1912
- commands.push("workbench publish");
1913
- }
1914
- const publishedRemote = args.remotes.find((remote) => remote.kind === "workbench-cloud" && remote.publication.installUrl);
1915
- if (publishedRemote?.publication.installUrl) {
1916
- commands.push(`workbench install ${installHandleFromPublicationUrl(publishedRemote.publication.installUrl) ?? publishedRemote.publication.installUrl} --list`);
1917
- }
1918
- return [...new Set(commands)];
1919
- }
1920
- function installHandleFromPublicationUrl(installUrl) {
1921
- try {
1922
- const parsed = parseWorkbenchRemoteUrl(installUrl);
1923
- return parsed.kind === "workbench-cloud" ? `${parsed.owner}/${parsed.skill}` : undefined;
1924
- }
1925
- catch {
1926
- return undefined;
1927
- }
1928
- }
1929
1911
  async function workbenchStatusUnlocked(root, options = {}) {
1930
1912
  await autoSyncDefaultRemote(root, options);
1931
1913
  const [state, agents, skillSources] = await Promise.all([
@@ -1937,7 +1919,7 @@ async function workbenchStatusUnlocked(root, options = {}) {
1937
1919
  await saveState(root, state);
1938
1920
  await autoSyncDefaultRemote(root, options);
1939
1921
  const lastRun = state.runs
1940
- .filter((run) => typeof run.score === "number")
1922
+ .filter((run) => run.status === "succeeded" && typeof run.score === "number")
1941
1923
  .sort((left, right) => right.createdAt.localeCompare(left.createdAt))[0];
1942
1924
  return {
1943
1925
  root,
@@ -2254,7 +2236,7 @@ export function createWorkbenchSkillEvalRuntimeInput(args) {
2254
2236
  runId: args.runId,
2255
2237
  versionId: args.versionId,
2256
2238
  attemptIndex: args.attempt ?? 0,
2257
- samples: 1,
2239
+ samples: Math.max(1, args.sample + 1),
2258
2240
  caseIds: [args.runtimeCase.id],
2259
2241
  sampleIndexesByCase: new Map([[args.runtimeCase.id, [args.sample]]]),
2260
2242
  spec,
@@ -2449,7 +2431,7 @@ export function workbenchImprovementEvidenceTraces(traces) {
2449
2431
  export function workbenchImprovementEvidenceTracesForVersion(state, options) {
2450
2432
  const lineageVersionIds = lineageAncestorVersionIds(state, options.versionId);
2451
2433
  const selectedTraceIds = options.traceIds?.length ? new Set(options.traceIds) : null;
2452
- const agentHash = hashJson(options.agent);
2434
+ const agentHash = options.agent ? hashJson(options.agent) : undefined;
2453
2435
  return improvementEvidenceTraces(state.traces.filter((trace) => {
2454
2436
  if (selectedTraceIds && !selectedTraceIds.has(trace.id)) {
2455
2437
  return false;
@@ -2457,13 +2439,19 @@ export function workbenchImprovementEvidenceTracesForVersion(state, options) {
2457
2439
  if (!lineageVersionIds.has(trace.versionId)) {
2458
2440
  return false;
2459
2441
  }
2460
- if (trace.skillName !== options.skillName || trace.agentName !== options.agent.name) {
2442
+ if (trace.skillName !== options.skillName) {
2461
2443
  return false;
2462
2444
  }
2463
2445
  if (options.evalHash && !traceEvalHashMatches(state, trace, options.evalHash)) {
2464
2446
  return false;
2465
2447
  }
2466
- return traceAgentHashMatches(state, trace, agentHash);
2448
+ if (options.agent) {
2449
+ if (trace.agentName !== options.agent.name) {
2450
+ return false;
2451
+ }
2452
+ return traceAgentHashMatches(state, trace, agentHash);
2453
+ }
2454
+ return true;
2467
2455
  }));
2468
2456
  }
2469
2457
  function improvementEvidenceTraces(traces) {
@@ -2550,7 +2538,7 @@ export function workbenchSkillImproveCanUseQueuedAdapter(agent) {
2550
2538
  return agentImproveAdapterInvocation(agent) !== null;
2551
2539
  }
2552
2540
  export function workbenchSkillImproveAdapterRequirementMessage(agent) {
2553
- return `Agent ${agent.name} cannot run improve because it has no skill-improvement adapter. Add improveCommand to a local/command agent, or use a Codex/Claude agent with adapter auth.`;
2541
+ return `Agent ${agent.name} cannot run improve because it has no skill-improvement adapter. Run workbench login claude (or codex) to connect an improver.`;
2554
2542
  }
2555
2543
  export function readWorkbenchSkillImprovementPatchFromRemoteJob(remoteJob) {
2556
2544
  const output = asRuntimeRecord(remoteJob.output);
@@ -2768,16 +2756,22 @@ export async function executeQueuedWorkbenchSkillEvalJob(input) {
2768
2756
  traceId: input.traceId,
2769
2757
  });
2770
2758
  const finishedAt = result.job.finishedAt ?? now();
2759
+ const proofStatus = result.job.status === "succeeded" ? "succeeded" : "failed";
2771
2760
  const run = {
2772
2761
  ...existingRun,
2773
- status: result.job.status === "succeeded" ? "succeeded" : "failed",
2774
- score: result.job.score,
2762
+ status: proofStatus,
2775
2763
  latencyMs: result.job.durationMs ?? 0,
2776
2764
  traceIds: [result.trace.id],
2777
2765
  jobIds: [result.job.id],
2778
2766
  finishedAt,
2779
2767
  ...(result.job.error ? { error: result.job.error } : {}),
2780
2768
  };
2769
+ if (proofStatus === "succeeded" && result.job.score !== undefined) {
2770
+ run.score = result.job.score;
2771
+ }
2772
+ else {
2773
+ delete run.score;
2774
+ }
2781
2775
  return {
2782
2776
  run: copyRun(run),
2783
2777
  job: copyJob(result.job),
@@ -2802,8 +2796,19 @@ export async function improveWorkbenchSkill(options = {}) {
2802
2796
  agent: options.agent,
2803
2797
  authToken: options.authToken,
2804
2798
  });
2799
+ const externalImprover = options.improverAgent && !options.agent ? options.improverAgent : undefined;
2805
2800
  if (runtime.skillBundles.length !== 1 || runtime.selectedAgents.length !== 1) {
2806
- throw new WorkbenchUserError("workbench improve requires exactly one skill and one agent. Pass --skills primary --agents AGENT.");
2801
+ const configuredSkills = [...new Set(runtime.skillBundles.map((bundle) => bundle.skillName))].sort();
2802
+ const configuredAgents = [...new Set(runtime.selectedAgents.map((agent) => agent.name))].sort();
2803
+ throw new WorkbenchCodedError("usage", [
2804
+ "workbench improve requires exactly one skill and one eval agent.",
2805
+ `Configured skills: ${configuredSkills.length > 0 ? configuredSkills.join(", ") : "none"}.`,
2806
+ `Configured agents: ${configuredAgents.length > 0 ? configuredAgents.join(", ") : "none"}.`,
2807
+ ].join(" "), {
2808
+ remediation: `Run workbench improve --skills ${configuredSkills[0] ?? PRIMARY_SKILL_NAME} --agents ${configuredAgents[0] ?? "default"}.`,
2809
+ subject: { configuredSkills, configuredAgents },
2810
+ exitCode: 2,
2811
+ });
2807
2812
  }
2808
2813
  const [skillBundle] = runtime.skillBundles;
2809
2814
  if (!skillBundle) {
@@ -2816,9 +2821,13 @@ export async function improveWorkbenchSkill(options = {}) {
2816
2821
  upsertByHash(state.skillBundles, bundle);
2817
2822
  }
2818
2823
  upsertAgentSnapshots(state.agents, runtime.agents);
2819
- const agent = runtime.selectedAgents[0];
2820
- if (!agent) {
2821
- throw new WorkbenchUserError("No agent selected for improve.");
2824
+ const evalAgent = runtime.selectedAgents[0];
2825
+ if (!evalAgent) {
2826
+ throw new WorkbenchUserError("No eval agent selected for improve.");
2827
+ }
2828
+ const improverAgent = externalImprover ?? evalAgent;
2829
+ if (externalImprover) {
2830
+ upsertAgentSnapshots(state.agents, [externalImprover]);
2822
2831
  }
2823
2832
  const selectedEvidenceTraceIds = options.evidenceTraceIds?.length
2824
2833
  ? new Set(options.evidenceTraceIds)
@@ -2826,13 +2835,13 @@ export async function improveWorkbenchSkill(options = {}) {
2826
2835
  const historicalTraces = workbenchImprovementEvidenceTracesForVersion(state, {
2827
2836
  versionId: base.id,
2828
2837
  skillName: skillBundle.skillName,
2829
- agent,
2838
+ agent: evalAgent,
2830
2839
  evalHash: runtime.evalSnapshot.hash,
2831
2840
  ...(selectedEvidenceTraceIds ? { traceIds: [...selectedEvidenceTraceIds] } : {}),
2832
2841
  });
2833
2842
  const improvementEvidence = improvementEvidenceFromTraces(historicalTraces);
2834
2843
  if (improvementEvidence.length === 0) {
2835
- throw new WorkbenchUserError("workbench improve needs failed or reviewed trace evidence for the selected agent on this version. Run `workbench eval --agents AGENT` until a failure is recorded, or edit SKILL.md directly.");
2844
+ throw new WorkbenchUserError(`workbench improve needs failed or reviewed trace evidence for ${evalAgent.name} on this version. Run \`workbench eval --agents ${evalAgent.name}\` until a failure is recorded, or edit SKILL.md directly.`);
2836
2845
  }
2837
2846
  const evalSnapshot = runtime.evalSnapshot;
2838
2847
  upsertEvalSnapshotObject(state.evals, evalSnapshot);
@@ -2842,13 +2851,13 @@ export async function improveWorkbenchSkill(options = {}) {
2842
2851
  skillName: skillBundle.skillName,
2843
2852
  skillBundleHash: skillBundle.hash,
2844
2853
  evalHash: evalSnapshot.hash,
2845
- agentName: agent.name,
2846
- agentHash: hashJson(agent),
2854
+ agentName: evalAgent.name,
2855
+ agentHash: hashJson(evalAgent),
2847
2856
  });
2848
2857
  const improvement = await createSkillImprovementPatch({
2849
2858
  root,
2850
2859
  state,
2851
- agent,
2860
+ agent: improverAgent,
2852
2861
  base,
2853
2862
  evalHash: evalSnapshot.hash,
2854
2863
  environmentDockerfile: runtime.environmentDockerfile,
@@ -2857,7 +2866,7 @@ export async function improveWorkbenchSkill(options = {}) {
2857
2866
  });
2858
2867
  const applied = applyWorkbenchSkillImprovementPatch(state, {
2859
2868
  baseVersionId: base.id,
2860
- agent,
2869
+ agent: improverAgent,
2861
2870
  patch: improvement.patch,
2862
2871
  createdAt: now(),
2863
2872
  });
@@ -2865,7 +2874,7 @@ export async function improveWorkbenchSkill(options = {}) {
2865
2874
  const version = applied.version;
2866
2875
  const outputRuntime = await createWorkbenchVersionRuntimeSnapshot(version, {
2867
2876
  skill: PRIMARY_SKILL_NAME,
2868
- agent: agent.name,
2877
+ agent: evalAgent.name,
2869
2878
  authToken: options.authToken,
2870
2879
  });
2871
2880
  const [outputSkillBundle] = outputRuntime.skillBundles;
@@ -2876,13 +2885,16 @@ export async function improveWorkbenchSkill(options = {}) {
2876
2885
  upsertByHash(state.skillBundles, bundle);
2877
2886
  }
2878
2887
  upsertAgentSnapshots(state.agents, outputRuntime.agents);
2888
+ if (externalImprover) {
2889
+ upsertAgentSnapshots(state.agents, [externalImprover]);
2890
+ }
2879
2891
  const run = await executeWorkbenchEvaluationRun({
2880
2892
  root,
2881
2893
  state,
2882
2894
  version,
2883
2895
  skillBundle: outputSkillBundle,
2884
2896
  evalSnapshot,
2885
- agent,
2897
+ agent: evalAgent,
2886
2898
  kind: "improve",
2887
2899
  ...(options.parentRunId !== undefined ? { parentRunId: options.parentRunId } : {}),
2888
2900
  samples: options.samples ?? 1,
@@ -2927,7 +2939,7 @@ export async function improveWorkbenchSkill(options = {}) {
2927
2939
  promotionReason: promotion.reason,
2928
2940
  ...(incumbentRun ? { incumbentRunId: incumbentRun.id } : {}),
2929
2941
  ...(typeof incumbentRun?.score === "number" ? { incumbentScore: incumbentRun.score } : {}),
2930
- ...(typeof run.score === "number" ? { outputScore: run.score } : {}),
2942
+ ...(run.status === "succeeded" && typeof run.score === "number" ? { outputScore: run.score } : {}),
2931
2943
  };
2932
2944
  });
2933
2945
  }
@@ -3168,15 +3180,15 @@ export async function showWorkbenchRef(ref, options = {}) {
3168
3180
  }
3169
3181
  return file;
3170
3182
  }
3171
- const run = state.runs.find((entry) => entry.id === objectRef);
3183
+ const run = resolveStateObjectByRef(state.runs, objectRef, "run");
3172
3184
  if (run) {
3173
3185
  return run;
3174
3186
  }
3175
- const job = state.jobs.find((entry) => entry.id === objectRef);
3187
+ const job = resolveStateObjectByRef(state.jobs, objectRef, "job");
3176
3188
  if (job) {
3177
3189
  return job;
3178
3190
  }
3179
- const trace = state.traces.find((entry) => entry.id === objectRef);
3191
+ const trace = resolveStateObjectByRef(state.traces, objectRef, "trace");
3180
3192
  if (trace) {
3181
3193
  if (filePath) {
3182
3194
  const file = trace.files.find((entry) => entry.path === filePath);
@@ -3191,7 +3203,7 @@ export async function showWorkbenchRef(ref, options = {}) {
3191
3203
  }
3192
3204
  return trace;
3193
3205
  }
3194
- const artifact = state.artifacts.find((entry) => entry.id === objectRef);
3206
+ const artifact = resolveStateObjectByRef(state.artifacts, objectRef, "artifact");
3195
3207
  if (artifact) {
3196
3208
  if (filePath) {
3197
3209
  const file = artifact.files.find((entry) => entry.path === filePath);
@@ -3213,6 +3225,27 @@ export async function showWorkbenchRef(ref, options = {}) {
3213
3225
  });
3214
3226
  });
3215
3227
  }
3228
+ function resolveStateObjectByRef(entries, ref, kind) {
3229
+ const normalized = ref.trim();
3230
+ if (!normalized) {
3231
+ return undefined;
3232
+ }
3233
+ const candidates = entries.filter((entry) => objectIdRefMatches(entry.id, normalized));
3234
+ if (candidates.length > 1) {
3235
+ throw new WorkbenchCodedError("ref_ambiguous", `${capitalize(kind)} ref is ambiguous: ${ref}. Candidates: ${candidates.map((entry) => entry.id).slice(0, 8).join(", ")}.`, {
3236
+ subject: { ref, candidates: candidates.map((entry) => entry.id).slice(0, 20) },
3237
+ exitCode: 2,
3238
+ });
3239
+ }
3240
+ return candidates[0];
3241
+ }
3242
+ function objectIdRefMatches(id, ref) {
3243
+ if (id === ref || id.startsWith(ref)) {
3244
+ return true;
3245
+ }
3246
+ const separator = id.indexOf("_");
3247
+ return separator !== -1 && id.slice(separator + 1).startsWith(ref);
3248
+ }
3216
3249
  export async function filesForWorkbenchRef(ref, options = {}) {
3217
3250
  const root = resolveRoot(options.dir);
3218
3251
  return withWorkbenchProjectLockIfInitialized(root, async () => {
@@ -3226,11 +3259,11 @@ export async function filesForWorkbenchRef(ref, options = {}) {
3226
3259
  if (version) {
3227
3260
  return version.files.map(copyFile);
3228
3261
  }
3229
- const trace = state.traces.find((entry) => entry.id === ref);
3262
+ const trace = resolveStateObjectByRef(state.traces, ref, "trace");
3230
3263
  if (trace) {
3231
3264
  return trace.files.map(copyFile);
3232
3265
  }
3233
- const artifact = state.artifacts.find((entry) => entry.id === ref);
3266
+ const artifact = resolveStateObjectByRef(state.artifacts, ref, "artifact");
3234
3267
  if (artifact) {
3235
3268
  return artifact.files.map(copyFile);
3236
3269
  }
@@ -3340,7 +3373,7 @@ function traceRubricForCase(trace) {
3340
3373
  }
3341
3374
  function caseDraftTestScript(id, trace) {
3342
3375
  const message = trace
3343
- ? `Trace-derived case ${id} needs expert acceptance criteria before it can pass. Source trace: ${trace.id}.`
3376
+ ? `Draft trace-derived case ${id} needs expert acceptance criteria before it can pass. Source trace: ${trace.id}.`
3344
3377
  : `Draft case ${id} needs a workflow-specific prompt, rubric, and test before it can pass.`;
3345
3378
  return [
3346
3379
  "#!/bin/sh",
@@ -3685,7 +3718,7 @@ export function createWorkbenchInspectionSnapshotFromState(options) {
3685
3718
  .map((remote) => ({ ...remote }))
3686
3719
  .sort((left, right) => left.name.localeCompare(right.name));
3687
3720
  const lastRun = state.runs
3688
- .filter((run) => typeof run.score === "number")
3721
+ .filter((run) => run.status === "succeeded" && typeof run.score === "number")
3689
3722
  .sort((left, right) => right.createdAt.localeCompare(left.createdAt))[0];
3690
3723
  const status = {
3691
3724
  root,
@@ -4565,6 +4598,14 @@ async function executeWorkbenchEvaluationRun(args) {
4565
4598
  }));
4566
4599
  }
4567
4600
  await saveState(args.root, args.state);
4601
+ let stateSaveQueue = Promise.resolve();
4602
+ const enqueueRunStateSave = async () => {
4603
+ const next = stateSaveQueue.then(async () => {
4604
+ await saveState(args.root, args.state);
4605
+ });
4606
+ stateSaveQueue = next.catch(() => undefined);
4607
+ await next;
4608
+ };
4568
4609
  const persistedTerminalJobs = new Map();
4569
4610
  const persistTerminalJob = async (completed) => {
4570
4611
  const plannedJob = inputsByJobId.get(completed.id);
@@ -4591,7 +4632,7 @@ async function executeWorkbenchEvaluationRun(args) {
4591
4632
  upsertJobObject(args.state.jobs, result.job);
4592
4633
  upsertImmutableById(args.state.artifacts, result.artifact, "artifact");
4593
4634
  upsertImmutableById(args.state.traces, result.trace, "trace");
4594
- await saveState(args.root, args.state);
4635
+ await enqueueRunStateSave();
4595
4636
  };
4596
4637
  let dag;
4597
4638
  try {
@@ -4614,7 +4655,7 @@ async function executeWorkbenchEvaluationRun(args) {
4614
4655
  runtimeCase: plannedJob.runtimeCase,
4615
4656
  sample: plannedJob.sample,
4616
4657
  }));
4617
- await saveState(args.root, args.state);
4658
+ await enqueueRunStateSave();
4618
4659
  },
4619
4660
  onJobFinished: persistTerminalJob,
4620
4661
  executeJob: async (job) => {
@@ -4678,7 +4719,10 @@ async function executeWorkbenchEvaluationRun(args) {
4678
4719
  const finishedAt = now();
4679
4720
  run.finishedAt = finishedAt;
4680
4721
  run.status = jobs.every((job) => job.status === "succeeded") ? "succeeded" : "failed";
4681
- const scoredJobs = jobs.filter((job) => typeof job.score === "number");
4722
+ delete run.score;
4723
+ const scoredJobs = run.status === "succeeded"
4724
+ ? jobs.filter((job) => job.status === "succeeded" && typeof job.score === "number")
4725
+ : [];
4682
4726
  if (scoredJobs.length > 0) {
4683
4727
  run.score = Number((scoredJobs.reduce((sum, job) => sum + (job.score ?? 0), 0) / scoredJobs.length).toFixed(3));
4684
4728
  }
@@ -4760,22 +4804,26 @@ function skillEvalLifecycleJobFromRemoteJob(args) {
4760
4804
  function skillEvalObjectsFromRemoteJob(args) {
4761
4805
  const finishedAt = args.remoteJob.finishedAt ?? now();
4762
4806
  const output = asRuntimeRecord(args.remoteJob.output);
4763
- const score = args.runtimeCase.smoke === true ? undefined : readWorkbenchSkillRunOutputScore(output);
4807
+ const status = args.remoteJob.status === "succeeded" ? "succeeded" :
4808
+ args.remoteJob.status === "cancelled" ? "canceled" : "failed";
4809
+ const score = status === "succeeded" && args.runtimeCase.smoke !== true
4810
+ ? readWorkbenchSkillRunOutputScore(output)
4811
+ : undefined;
4764
4812
  const usage = readWorkbenchSkillRunOutputUsage(output);
4765
4813
  const outputResult = jsonRecord(output.result);
4766
- if (args.runtimeCase.smoke === true) {
4767
- stripSmokeResultScores(outputResult);
4814
+ if (args.runtimeCase.smoke === true || status !== "succeeded") {
4815
+ stripResultScores(outputResult);
4768
4816
  }
4769
4817
  const resultPayload = {
4770
- status: args.remoteJob.status === "succeeded" ? "succeeded" : "failed",
4771
- ...(score !== undefined ? { score } : {}),
4772
- ...(args.remoteJob.error ? { error: args.remoteJob.error } : {}),
4773
4818
  ...outputResult,
4774
4819
  ...(usage ? { usage: usage } : {}),
4775
4820
  ...(args.result ?? {}),
4821
+ status: status === "succeeded" ? "succeeded" : "failed",
4822
+ ...(score !== undefined ? { score } : {}),
4823
+ ...(args.remoteJob.error ? { error: args.remoteJob.error } : {}),
4776
4824
  };
4777
- if (args.runtimeCase.smoke === true) {
4778
- stripSmokeResultScores(resultPayload);
4825
+ if (args.runtimeCase.smoke === true || status !== "succeeded") {
4826
+ stripResultScores(resultPayload);
4779
4827
  }
4780
4828
  const files = Array.isArray(output.files)
4781
4829
  ? output.files.filter(isSurfaceSnapshotFile).map(copyFile)
@@ -4821,8 +4869,6 @@ function skillEvalObjectsFromRemoteJob(args) {
4821
4869
  ...files.map(copyFile),
4822
4870
  ],
4823
4871
  };
4824
- const status = args.remoteJob.status === "succeeded" ? "succeeded" :
4825
- args.remoteJob.status === "cancelled" ? "canceled" : "failed";
4826
4872
  const job = {
4827
4873
  id: args.remoteJob.id,
4828
4874
  runId: args.run.id,
@@ -4836,7 +4882,7 @@ function skillEvalObjectsFromRemoteJob(args) {
4836
4882
  caseId: args.runtimeCase.id,
4837
4883
  sample: args.sample,
4838
4884
  status,
4839
- ...(score !== undefined ? { score } : {}),
4885
+ ...(status === "succeeded" && score !== undefined ? { score } : {}),
4840
4886
  command: configString(asRuntimeRecord(asRuntimeRecord(jsonRecord(args.remoteJob.input).execution).adapter).with, "command"),
4841
4887
  artifactIds: [artifact.id],
4842
4888
  traceIds: [trace.id],
@@ -4857,7 +4903,7 @@ export function readWorkbenchSkillRunOutputScore(output) {
4857
4903
  : typeof metrics.score === "number"
4858
4904
  ? metrics.score
4859
4905
  : undefined;
4860
- return typeof score === "number" && Number.isFinite(score) ? score : 0;
4906
+ return typeof score === "number" && Number.isFinite(score) ? score : undefined;
4861
4907
  }
4862
4908
  export function readWorkbenchSkillRunOutputUsage(output) {
4863
4909
  const record = asRuntimeRecord(output);
@@ -5639,11 +5685,19 @@ function resolveNamedSelection(entries, selection, defaultSelection, noun) {
5639
5685
  return names.map((name) => {
5640
5686
  const entry = entries.find((candidate) => candidate.name === name);
5641
5687
  if (!entry) {
5642
- throw new WorkbenchUserError(`${capitalize(noun)} not found: ${name}`);
5688
+ throw new WorkbenchUserError(`${capitalize(noun)} not found: ${name}. Configured ${noun}s: ${configuredSelectionNames(entries)}.`);
5643
5689
  }
5644
5690
  return entry;
5645
5691
  });
5646
5692
  }
5693
+ function configuredSelectionNames(entries) {
5694
+ const names = entries.map((entry) => entry.name).sort();
5695
+ if (names.length === 0) {
5696
+ return "none";
5697
+ }
5698
+ const visible = names.slice(0, 8);
5699
+ return `${visible.join(", ")}${names.length > visible.length ? ", ..." : ""}`;
5700
+ }
5647
5701
  function readManifestDefaultSelection(record, fileLabel, entries, noun) {
5648
5702
  const configured = typeof record.default === "string" ? record.default.trim() : "";
5649
5703
  if (!configured) {
@@ -6546,37 +6600,54 @@ function transientStateReadUnavailableError(root) {
6546
6600
  return error;
6547
6601
  }
6548
6602
  async function saveState(root, state) {
6549
- await withWorkbenchProjectLockRoot(root, async () => {
6550
- await fs.mkdir(workbenchDir(root), { recursive: true });
6551
- await fs.mkdir(path.join(workbenchDir(root), TMP_DIR), { recursive: true });
6552
- await fs.rm(path.join(workbenchDir(root), "store"), { recursive: true, force: true });
6553
- await recoverAtomicStateCommit(root);
6554
- const nonce = `${process.pid}-${Date.now()}-${randomBytes(4).toString("hex")}`;
6555
- const tempRoot = path.join(workbenchDir(root), TMP_DIR, `state-${nonce}`);
6556
- const tempObjectsDir = path.join(tempRoot, OBJECTS_DIR);
6557
- const tempRefsDir = path.join(tempRoot, REFS_DIR);
6558
- try {
6559
- await writeObjectCollectionToDir(tempObjectsDir, "version", state.versions, (version) => version.id);
6560
- await writeObjectCollectionToDir(tempObjectsDir, "skill-source", state.skillSources, (source) => source.name);
6561
- await writeObjectCollectionToDir(tempObjectsDir, "skill-bundle", state.skillBundles, (bundle) => bundle.hash);
6562
- await writeObjectCollectionToDir(tempObjectsDir, "eval", state.evals, (evalSnapshot) => evalSnapshot.hash);
6563
- await writeObjectCollectionToDir(tempObjectsDir, "agent", state.agents, (agent) => hashJson(agent));
6564
- await writeObjectCollectionToDir(tempObjectsDir, "run", state.runs, (run) => run.id);
6565
- await writeObjectCollectionToDir(tempObjectsDir, "job", state.jobs, (job) => job.id);
6566
- await writeObjectCollectionToDir(tempObjectsDir, "trace", state.traces, (trace) => trace.id);
6567
- await writeObjectCollectionToDir(tempObjectsDir, "execution-event", state.executionEvents, workbenchExecutionEventBatchId);
6568
- await writeObjectCollectionToDir(tempObjectsDir, "artifact", state.artifacts, (artifact) => artifact.id);
6569
- await writeObjectCollectionToDir(tempObjectsDir, "lineage", state.lineage, (edge) => hashJson(edge).slice(0, 24));
6570
- await writeWorkbenchRefsToDir(tempRefsDir, state.refs);
6571
- await replaceStateDirectory(objectsDir(root), tempObjectsDir, stateBackupDir(root, OBJECTS_DIR));
6572
- await replaceStateDirectory(refsDir(root), tempRefsDir, stateBackupDir(root, REFS_DIR));
6573
- await writeWorkbenchRemotesFile(root, state.remotes);
6574
- }
6575
- finally {
6576
- await fs.rm(tempRoot, { recursive: true, force: true });
6577
- }
6603
+ await withStateSaveQueue(root, async () => {
6604
+ await withWorkbenchProjectLockRoot(root, async () => {
6605
+ await fs.mkdir(workbenchDir(root), { recursive: true });
6606
+ await fs.mkdir(path.join(workbenchDir(root), TMP_DIR), { recursive: true });
6607
+ await fs.rm(path.join(workbenchDir(root), "store"), { recursive: true, force: true });
6608
+ await recoverAtomicStateCommit(root);
6609
+ const nonce = `${process.pid}-${Date.now()}-${randomBytes(4).toString("hex")}`;
6610
+ const tempRoot = path.join(workbenchDir(root), TMP_DIR, `state-${nonce}`);
6611
+ const tempObjectsDir = path.join(tempRoot, OBJECTS_DIR);
6612
+ const tempRefsDir = path.join(tempRoot, REFS_DIR);
6613
+ try {
6614
+ await writeObjectCollectionToDir(tempObjectsDir, "version", state.versions, (version) => version.id);
6615
+ await writeObjectCollectionToDir(tempObjectsDir, "skill-source", state.skillSources, (source) => source.name);
6616
+ await writeObjectCollectionToDir(tempObjectsDir, "skill-bundle", state.skillBundles, (bundle) => bundle.hash);
6617
+ await writeObjectCollectionToDir(tempObjectsDir, "eval", state.evals, (evalSnapshot) => evalSnapshot.hash);
6618
+ await writeObjectCollectionToDir(tempObjectsDir, "agent", state.agents, (agent) => hashJson(agent));
6619
+ await writeObjectCollectionToDir(tempObjectsDir, "run", state.runs, (run) => run.id);
6620
+ await writeObjectCollectionToDir(tempObjectsDir, "job", state.jobs, (job) => job.id);
6621
+ await writeObjectCollectionToDir(tempObjectsDir, "trace", state.traces, (trace) => trace.id);
6622
+ await writeObjectCollectionToDir(tempObjectsDir, "execution-event", state.executionEvents, workbenchExecutionEventBatchId);
6623
+ await writeObjectCollectionToDir(tempObjectsDir, "artifact", state.artifacts, (artifact) => artifact.id);
6624
+ await writeObjectCollectionToDir(tempObjectsDir, "lineage", state.lineage, (edge) => hashJson(edge).slice(0, 24));
6625
+ await writeWorkbenchRefsToDir(tempRefsDir, state.refs);
6626
+ await replaceStateDirectory(objectsDir(root), tempObjectsDir, stateBackupDir(root, OBJECTS_DIR));
6627
+ await replaceStateDirectory(refsDir(root), tempRefsDir, stateBackupDir(root, REFS_DIR));
6628
+ await writeWorkbenchRemotesFile(root, state.remotes);
6629
+ }
6630
+ finally {
6631
+ await fs.rm(tempRoot, { recursive: true, force: true });
6632
+ }
6633
+ });
6578
6634
  });
6579
6635
  }
6636
+ async function withStateSaveQueue(root, fn) {
6637
+ const normalizedRoot = path.resolve(root);
6638
+ const previous = stateSaveQueues.get(normalizedRoot) ?? Promise.resolve();
6639
+ const next = previous.catch(() => undefined).then(fn);
6640
+ const settled = next.then(() => undefined, () => undefined);
6641
+ stateSaveQueues.set(normalizedRoot, settled);
6642
+ try {
6643
+ return await next;
6644
+ }
6645
+ finally {
6646
+ if (stateSaveQueues.get(normalizedRoot) === settled) {
6647
+ stateSaveQueues.delete(normalizedRoot);
6648
+ }
6649
+ }
6650
+ }
6580
6651
  class WorkbenchRemoteNotFoundError extends Error {
6581
6652
  code = "ENOENT";
6582
6653
  constructor(message) {
@@ -6872,7 +6943,7 @@ async function writeObjectPackFiles(root, pack) {
6872
6943
  }
6873
6944
  await writeJsonl(path.join(root, "indexes", "versions.jsonl"), pack.versions);
6874
6945
  await writeJsonl(path.join(root, "indexes", "lineage.jsonl"), pack.lineage);
6875
- await writeJsonl(path.join(root, "indexes", "measurements.jsonl"), pack.runs.filter((run) => run.score !== undefined));
6946
+ await writeJsonl(path.join(root, "indexes", "measurements.jsonl"), pack.runs.filter((run) => run.status === "succeeded" && run.score !== undefined));
6876
6947
  await writeJsonl(path.join(root, "indexes", "runs.jsonl"), pack.runs);
6877
6948
  await writeJsonl(path.join(root, "indexes", "jobs.jsonl"), pack.jobs);
6878
6949
  await writeJsonl(path.join(root, "indexes", "execution-events.jsonl"), pack.executionEvents);
@@ -7160,22 +7231,62 @@ function validateRemoteName(name) {
7160
7231
  function resolveVersion(state, ref) {
7161
7232
  const version = findVersion(state, ref);
7162
7233
  if (!version) {
7163
- throw new WorkbenchUserError(`Version not found: ${ref}`);
7234
+ throw new WorkbenchUserError(`Version not found: ${ref}. Configured versions: ${configuredVersionRefs(state)}.`);
7164
7235
  }
7165
7236
  return version;
7166
7237
  }
7167
7238
  function findVersion(state, ref) {
7168
7239
  const normalized = ref.trim();
7169
7240
  const mapped = normalized === "current" ? state.refs.current : state.refs[normalized] ?? normalized;
7170
- return state.versions.find((version) => version.id === mapped ||
7171
- version.hash === mapped ||
7172
- version.hash.startsWith(mapped ?? ""));
7241
+ if (!mapped) {
7242
+ return undefined;
7243
+ }
7244
+ const candidates = uniqueById(state.versions.filter((version) => versionRefMatches(version, mapped)));
7245
+ if (candidates.length > 1) {
7246
+ throw new WorkbenchCodedError("ref_ambiguous", `Version ref is ambiguous: ${ref}. Candidates: ${candidates.map(versionDisplayCandidate).join(", ")}.`, {
7247
+ subject: { ref, candidates: candidates.map((version) => version.id) },
7248
+ exitCode: 2,
7249
+ });
7250
+ }
7251
+ return candidates[0];
7173
7252
  }
7174
7253
  function findVersionById(state, id) {
7175
7254
  return id ? state.versions.find((version) => version.id === id) : undefined;
7176
7255
  }
7256
+ function versionRefMatches(version, ref) {
7257
+ const normalized = ref.trim();
7258
+ const withoutVersionPrefix = normalized.startsWith("v_") ? normalized.slice(2) : normalized;
7259
+ return version.id === normalized ||
7260
+ version.hash === normalized ||
7261
+ version.id.startsWith(normalized) ||
7262
+ version.hash.startsWith(normalized) ||
7263
+ version.hash.startsWith(withoutVersionPrefix) ||
7264
+ version.id.startsWith(`v_${withoutVersionPrefix}`);
7265
+ }
7266
+ function configuredVersionRefs(state) {
7267
+ const refs = state.versions
7268
+ .slice(-8)
7269
+ .map(versionDisplayCandidate)
7270
+ .sort();
7271
+ return refs.length > 0 ? refs.join(", ") : "none";
7272
+ }
7273
+ function versionDisplayCandidate(version) {
7274
+ return version.hash.slice(0, 8);
7275
+ }
7276
+ function uniqueById(entries) {
7277
+ const seen = new Set();
7278
+ const unique = [];
7279
+ for (const entry of entries) {
7280
+ if (seen.has(entry.id)) {
7281
+ continue;
7282
+ }
7283
+ seen.add(entry.id);
7284
+ unique.push(entry);
7285
+ }
7286
+ return unique;
7287
+ }
7177
7288
  function latestScoredRun(args) {
7178
- return latestMatchingRun(args, (run) => typeof run.score === "number");
7289
+ return latestMatchingRun(args, (run) => run.status === "succeeded" && typeof run.score === "number");
7179
7290
  }
7180
7291
  function latestComparableRun(args) {
7181
7292
  return latestMatchingRun(args);
@@ -7198,7 +7309,7 @@ function comparisonCellRunFields(run, jobs) {
7198
7309
  return {
7199
7310
  runId: run.id,
7200
7311
  status: run.status,
7201
- ...(run.score !== undefined ? { score: run.score } : {}),
7312
+ ...(run.status === "succeeded" && run.score !== undefined ? { score: run.score } : {}),
7202
7313
  ...(run.costUsd !== undefined ? { costUsd: run.costUsd } : {}),
7203
7314
  ...(run.latencyMs !== undefined ? { latencyMs: run.latencyMs } : {}),
7204
7315
  ...(run.error ? { error: run.error } : {}),
@@ -8065,7 +8176,7 @@ function jsonRecord(value) {
8065
8176
  const record = asRecord(value);
8066
8177
  return record ? Object.fromEntries(Object.entries(record).map(([key, entry]) => [key, toJson(entry)])) : {};
8067
8178
  }
8068
- function stripSmokeResultScores(result) {
8179
+ function stripResultScores(result) {
8069
8180
  delete result.score;
8070
8181
  const metrics = asRecord(result.metrics);
8071
8182
  if (metrics) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@workbench-ai/workbench-core",
3
- "version": "0.0.70",
3
+ "version": "0.0.72",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/workbench-ai/workbench.git",
@@ -22,8 +22,8 @@
22
22
  ],
23
23
  "dependencies": {
24
24
  "yaml": "^2.8.2",
25
- "@workbench-ai/workbench-contract": "0.0.70",
26
- "@workbench-ai/workbench-protocol": "0.0.70"
25
+ "@workbench-ai/workbench-contract": "0.0.72",
26
+ "@workbench-ai/workbench-protocol": "0.0.72"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@types/node": "^24.3.1",