@bluecopa/harness 0.1.0-snapshot.115 → 0.1.0-snapshot.116

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.
@@ -1,4 +1,4 @@
1
- import { A as ArcEvent, S as StepUsage } from '../types-Cqjw1J9_.js';
1
+ import { A as ArcEvent, S as StepUsage } from '../types-HplqyDx-.js';
2
2
  import 'zod';
3
3
  import 'ai';
4
4
 
@@ -1,4 +1,4 @@
1
- import { a as ArcLoopConfig, b as AgentMessage, A as ArcEvent, c as ArcRunResult, T as TraceEvent } from '../types-Cqjw1J9_.js';
1
+ import { a as ArcLoopConfig, b as AgentMessage, A as ArcEvent, c as ArcRunResult, T as TraceEvent } from '../types-HplqyDx-.js';
2
2
  import 'zod';
3
3
  import 'ai';
4
4
 
@@ -2677,7 +2677,12 @@ ${subGuideBlocks}
2677
2677
  observedEpisode.structuredOutput = attemptResult.structuredOutput;
2678
2678
  }
2679
2679
  const facts = collectObservedFacts(attemptResult.messages, observedEpisode);
2680
- completion2 = validateObservedProcessResult(request, facts) ?? void 0;
2680
+ const spec = getRequestCompletionPolicy(request);
2681
+ if (request.evaluateCompletion && spec) {
2682
+ completion2 = request.evaluateCompletion(facts, spec) ?? void 0;
2683
+ } else {
2684
+ completion2 = validateObservedProcessResult(request, facts) ?? void 0;
2685
+ }
2681
2686
  if (config.validateProcessResult) {
2682
2687
  try {
2683
2688
  const overridden = await config.validateProcessResult({
@@ -3131,6 +3136,7 @@ function buildProcessProfile(decl, globalTools) {
3131
3136
  { role: "assistant", content: JSON.stringify(demo.output, null, 2) }
3132
3137
  ]);
3133
3138
  }
3139
+ if (decl.evaluateCompletion) profile.evaluateCompletion = decl.evaluateCompletion;
3134
3140
  return profile;
3135
3141
  }
3136
3142
  function resolveProfile(config, globalTools) {
@@ -3180,14 +3186,17 @@ var ProcessManager = class {
3180
3186
  return resolveProfile(profileConfig, globalTools);
3181
3187
  }
3182
3188
  normalizeRequest(request) {
3189
+ const profile = this.resolveProfile(request);
3183
3190
  const completionPolicy = mergeCompletionPolicies(
3184
- this.resolveProfile(request)?.completionPolicy,
3191
+ profile?.completionPolicy,
3185
3192
  getRequestCompletionPolicy(request)
3186
3193
  );
3187
- if (!completionPolicy) return request;
3194
+ const evaluateCompletion = profile?.evaluateCompletion ?? request.evaluateCompletion;
3195
+ if (!completionPolicy && !evaluateCompletion) return request;
3188
3196
  return {
3189
3197
  ...request,
3190
- completionPolicy
3198
+ ...completionPolicy ? { completionPolicy } : {},
3199
+ ...evaluateCompletion ? { evaluateCompletion } : {}
3191
3200
  };
3192
3201
  }
3193
3202
  setSessionMemoFacts(facts) {