@post-print/agent-harness 0.1.13 → 0.1.14

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.
@@ -30,9 +30,17 @@ export interface JudgeClassifierOptions {
30
30
  }>;
31
31
  };
32
32
  }
33
+ export interface JudgeSdkError {
34
+ message?: string;
35
+ code?: string;
36
+ }
33
37
  export interface JudgeClassifierResult {
34
38
  status: string;
35
39
  text: string;
40
+ /** Unnormalized SDK terminal status (e.g. `error`, `cancelled`). */
41
+ rawStatus?: string;
42
+ /** SDK error payload when the judge run did not finish cleanly. */
43
+ sdkError?: JudgeSdkError;
36
44
  }
37
45
  export interface CursorRunResult {
38
46
  status: string;
@@ -1 +1 @@
1
- {"version":3,"file":"cursor-run.d.ts","sourceRoot":"","sources":["../src/cursor-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,KAAK,UAAU,EACf,MAAM,cAAc,CAAC;AAOtB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAkC7C,MAAM,WAAW,gBAAgB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IACtE,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,yFAAyF;IACzF,eAAe,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,sBAAsB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;CACtE;AAED,MAAM,WAAW,qBAAqB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,CAAC;CAClB;AAED,4DAA4D;AAC5D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAE5E;AAwBD,iGAAiG;AACjG,wBAAsB,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CA4DxF;AAED,oGAAoG;AACpG,wBAAsB,kBAAkB,CACvC,OAAO,EAAE,sBAAsB,GAC7B,OAAO,CAAC,qBAAqB,CAAC,CAoBhC;AAED,sGAAsG;AACtG,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,CAS3E;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAqBlE"}
1
+ {"version":3,"file":"cursor-run.d.ts","sourceRoot":"","sources":["../src/cursor-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,KAAK,UAAU,EACf,MAAM,cAAc,CAAC;AAOtB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAkC7C,MAAM,WAAW,gBAAgB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;IACtE,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,yFAAyF;IACzF,eAAe,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,sBAAsB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;CACtE;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,qBAAqB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,aAAa,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,CAAC;CAClB;AAED,4DAA4D;AAC5D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAE5E;AAwBD,iGAAiG;AACjG,wBAAsB,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CA4DxF;AAED,oGAAoG;AACpG,wBAAsB,kBAAkB,CACvC,OAAO,EAAE,sBAAsB,GAC7B,OAAO,CAAC,qBAAqB,CAAC,CAwBhC;AAeD,sGAAsG;AACtG,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,CAS3E;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAqBlE"}
@@ -179,12 +179,28 @@ export async function runJudgeClassifier(options) {
179
179
  local: { cwd: options.cwd },
180
180
  });
181
181
  const text = result.result?.trim() ?? "";
182
- const status = result.status === "finished" ? "completed" : result.status;
182
+ const rawStatus = result.status;
183
+ const status = rawStatus === "finished" ? "completed" : rawStatus;
184
+ const sdkError = extractJudgeSdkError(result.error);
183
185
  return {
184
186
  status: normalizeSdkRunStatus(status),
185
187
  text,
188
+ rawStatus,
189
+ sdkError,
186
190
  };
187
191
  }
192
+ function extractJudgeSdkError(error) {
193
+ if (!error || typeof error !== "object") {
194
+ return undefined;
195
+ }
196
+ const record = error;
197
+ const message = typeof record.message === "string" ? record.message : undefined;
198
+ const code = typeof record.code === "string" ? record.code : undefined;
199
+ if (!message && !code) {
200
+ return undefined;
201
+ }
202
+ return { message, code };
203
+ }
188
204
  /** Assistant prose from a Cursor SDK message stream (last assistant block wins for short replies). */
189
205
  export function assistantTextFromSdkMessages(messages) {
190
206
  const chunks = [];
@@ -1 +1 @@
1
- {"version":3,"file":"cursor-run.js","sourceRoot":"","sources":["../src/cursor-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cursor-run.js","sourceRoot":"","sources":["../src/cursor-run.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ import type { AgentSession, ContextProfile, RunAgentOptions } from "./types.js";
3
3
  export { ClaudeAdapter, CursorAdapter, createAdapter, ReplayAdapter, } from "./adapters/index.js";
4
4
  export type { SdkMessage } from "./capture.js";
5
5
  export { assistantPrefixBeforeTools, buildTraceFromSdkMessages, captureGitDiff, collapseTraceWhitespace, enrichTrace, extractShellCommands, extractShellCommandsFromToolCalls, extractSkillsAppliedFromText, extractSkillsInvokedFromText, extractSkillsInvokedFromToolCalls, handsOnTierBeforeTools, inferReviewDepthFromText, inferRoutingFromText, mergeSkillsInvoked, routingBlockBeforeTools, } from "./capture.js";
6
- export { assistantTextFromSdkMessages, type CursorRunOptions, type CursorRunResult, type JudgeClassifierOptions, type JudgeClassifierResult, runCursorAgent, runJudgeClassifier, textBlocksFromSdkMessage, } from "./cursor-run.js";
6
+ export { assistantTextFromSdkMessages, type CursorRunOptions, type CursorRunResult, type JudgeClassifierOptions, type JudgeClassifierResult, type JudgeSdkError, runCursorAgent, runJudgeClassifier, textBlocksFromSdkMessage, } from "./cursor-run.js";
7
7
  export { type JudgeCriterion, type JudgeTraceOptions, type JudgeTraceResult, type JudgeVerdict, judgeTrace, type ParsedJudgeJson, parseJudgeJsonResponse, parseJudgeLegacyResponse, parseJudgeResponse, } from "./judge.js";
8
8
  export { type Logger, type LogLevel, logger } from "./logger.js";
9
9
  export { getHealthStatus, HEALTH_CHECK_PATH, type HealthStatus } from "./main.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEhF,OAAO,EACN,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,GACb,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EACN,0BAA0B,EAC1B,yBAAyB,EACzB,cAAc,EACd,uBAAuB,EACvB,WAAW,EACX,oBAAoB,EACpB,iCAAiC,EACjC,4BAA4B,EAC5B,4BAA4B,EAC5B,iCAAiC,EACjC,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,4BAA4B,EAC5B,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,cAAc,EACd,kBAAkB,EAClB,wBAAwB,GACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,UAAU,EACV,KAAK,eAAe,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EACN,oBAAoB,EACpB,eAAe,EACf,KAAK,iBAAiB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,cAAc,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,iBAAiB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACX,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,UAAU,EACV,cAAc,EACd,WAAW,EACX,aAAa,EACb,eAAe,EACf,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,wBAAwB,EACxB,mBAAmB,EACnB,qBAAqB,GACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACN,6BAA6B,EAC7B,sBAAsB,EACtB,4BAA4B,EAC5B,KAAK,gBAAgB,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,kBAAkB,EAAE,WAAW,EAAE,CAAC;AAEhD,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC;IACtE,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,0DAA0D;AAC1D,wBAAsB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAK1E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEhF,OAAO,EACN,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,GACb,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EACN,0BAA0B,EAC1B,yBAAyB,EACzB,cAAc,EACd,uBAAuB,EACvB,WAAW,EACX,oBAAoB,EACpB,iCAAiC,EACjC,4BAA4B,EAC5B,4BAA4B,EAC5B,iCAAiC,EACjC,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,4BAA4B,EAC5B,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,GACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,UAAU,EACV,KAAK,eAAe,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EACN,oBAAoB,EACpB,eAAe,EACf,KAAK,iBAAiB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,cAAc,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,iBAAiB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACX,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,UAAU,EACV,cAAc,EACd,WAAW,EACX,aAAa,EACb,eAAe,EACf,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACN,wBAAwB,EACxB,mBAAmB,EACnB,qBAAqB,GACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACN,6BAA6B,EAC7B,sBAAsB,EACtB,4BAA4B,EAC5B,KAAK,gBAAgB,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,kBAAkB,EAAE,WAAW,EAAE,CAAC;AAEhD,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC;IACtE,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,0DAA0D;AAC1D,wBAAsB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAK1E"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAA2B,WAAW,EAAE,MAAM,cAAc,CAAC;AAGpE,OAAO,EACN,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,GACb,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACN,0BAA0B,EAC1B,yBAAyB,EACzB,cAAc,EACd,uBAAuB,EACvB,WAAW,EACX,oBAAoB,EACpB,iCAAiC,EACjC,4BAA4B,EAC5B,4BAA4B,EAC5B,iCAAiC,EACjC,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,4BAA4B,EAK5B,cAAc,EACd,kBAAkB,EAClB,wBAAwB,GACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAKN,UAAU,EAEV,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAA8B,MAAM,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAqB,MAAM,WAAW,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EACN,oBAAoB,EACpB,eAAe,EAEf,qBAAqB,EACrB,sBAAsB,EACtB,cAAc,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,gBAAgB,EAChB,qBAAqB,GAErB,MAAM,qBAAqB,CAAC;AAiB7B,OAAO,EACN,wBAAwB,EACxB,mBAAmB,EACnB,qBAAqB,GACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACN,6BAA6B,EAC7B,sBAAsB,EACtB,4BAA4B,GAE5B,MAAM,eAAe,CAAC;AACvB,OAAO,EAA2B,WAAW,EAAE,CAAC;AAOhD,0DAA0D;AAC1D,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,KAAoB;IAClD,MAAM,OAAO,GACZ,KAAK,CAAC,OAAO,IAAI,CAAC,MAAM,WAAW,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9F,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAA2B,WAAW,EAAE,MAAM,cAAc,CAAC;AAGpE,OAAO,EACN,aAAa,EACb,aAAa,EACb,aAAa,EACb,aAAa,GACb,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACN,0BAA0B,EAC1B,yBAAyB,EACzB,cAAc,EACd,uBAAuB,EACvB,WAAW,EACX,oBAAoB,EACpB,iCAAiC,EACjC,4BAA4B,EAC5B,4BAA4B,EAC5B,iCAAiC,EACjC,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,4BAA4B,EAM5B,cAAc,EACd,kBAAkB,EAClB,wBAAwB,GACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAKN,UAAU,EAEV,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAA8B,MAAM,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAqB,MAAM,WAAW,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EACN,oBAAoB,EACpB,eAAe,EAEf,qBAAqB,EACrB,sBAAsB,EACtB,cAAc,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACN,gBAAgB,EAChB,qBAAqB,GAErB,MAAM,qBAAqB,CAAC;AAiB7B,OAAO,EACN,wBAAwB,EACxB,mBAAmB,EACnB,qBAAqB,GACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACN,6BAA6B,EAC7B,sBAAsB,EACtB,4BAA4B,GAE5B,MAAM,eAAe,CAAC;AACvB,OAAO,EAA2B,WAAW,EAAE,CAAC;AAOhD,0DAA0D;AAC1D,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,KAAoB;IAClD,MAAM,OAAO,GACZ,KAAK,CAAC,OAAO,IAAI,CAAC,MAAM,WAAW,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9F,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;AAC3C,CAAC"}
package/dist/judge.d.ts CHANGED
@@ -8,6 +8,20 @@ export interface JudgeVerdict {
8
8
  pass: boolean;
9
9
  rationale: string;
10
10
  evidence?: string[];
11
+ /** Present when the judge SDK run failed (distinct from a criterion miss). */
12
+ infraError?: string;
13
+ /** Unnormalized SDK status when the judge run did not finish. */
14
+ rawSdkStatus?: string;
15
+ sdkError?: {
16
+ message?: string;
17
+ code?: string;
18
+ };
19
+ /** Attempt number (1 until retries land). */
20
+ attempt?: number;
21
+ /** Wall time for this judge criterion call (ms). */
22
+ durationMs?: number;
23
+ transcriptChars?: number;
24
+ promptChars?: number;
11
25
  }
12
26
  export interface JudgeTraceOptions {
13
27
  cwd: string;
@@ -28,7 +42,12 @@ export interface ParsedJudgeJson {
28
42
  export declare function parseJudgeJsonResponse(text: string): ParsedJudgeJson;
29
43
  /** Fallback when model ignores JSON contract — parse YES/NO prose. */
30
44
  export declare function parseJudgeLegacyResponse(text: string): ParsedJudgeJson;
31
- /** Parse structured JSON first, then legacy YES/NO prose. */
45
+ /**
46
+ * Parse structured JSON first, then legacy YES/NO prose.
47
+ * Once a real JSON contract attempt is detected (array, object with `verdict`,
48
+ * or truncated JSON-shaped text), never salvage YES/NO from the body — invalid
49
+ * contracts are infra failures, not rubric answers.
50
+ */
32
51
  export declare function parseJudgeResponse(text: string): ParsedJudgeJson;
33
52
  /** Score fuzzy rubric criteria with a structured JSON judge (live runs only). */
34
53
  export declare function judgeTrace(trace: AgentTrace, criteria: JudgeCriterion[], options: JudgeTraceOptions): Promise<JudgeTraceResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"judge.d.ts","sourceRoot":"","sources":["../src/judge.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C,MAAM,WAAW,cAAc;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CACf;AAuBD,wEAAwE;AACxE,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAuCpE;AA+BD,sEAAsE;AACtE,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CA4CtE;AAED,6DAA6D;AAC7D,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAMhE;AA6DD,iFAAiF;AACjF,wBAAsB,UAAU,CAC/B,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,cAAc,EAAE,EAC1B,OAAO,EAAE,iBAAiB,GACxB,OAAO,CAAC,gBAAgB,CAAC,CAgC3B"}
1
+ {"version":3,"file":"judge.d.ts","sourceRoot":"","sources":["../src/judge.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAO7C,MAAM,WAAW,cAAc;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAChC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CACf;AAoWD,wEAAwE;AACxE,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAEpE;AA8BD,sEAAsE;AACtE,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CA4CtE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAQhE;AAmHD,iFAAiF;AACjF,wBAAsB,UAAU,CAC/B,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,cAAc,EAAE,EAC1B,OAAO,EAAE,iBAAiB,GACxB,OAAO,CAAC,gBAAgB,CAAC,CAwC3B"}
package/dist/judge.js CHANGED
@@ -1,5 +1,7 @@
1
1
  import { runJudgeClassifier } from "./cursor-run.js";
2
- const JSON_FENCE_PATTERN = /```(?:json)?\s*([\s\S]*?)```/i;
2
+ // Optional info-string (`json`, `js`, `typescript`, …) on the opening fence line.
3
+ // Without this, ` ```js\n"yes"\n``` ` extracts `js\n"yes"` and never latches.
4
+ const JSON_FENCE_PATTERN = /```[^\n`]*\s*([\s\S]*?)```/;
3
5
  const JSON_OBJECT_PATTERN = /\{[\s\S]*\}/;
4
6
  function transcriptForJudge(trace) {
5
7
  return [
@@ -20,46 +22,303 @@ function normalizeVerdict(value) {
20
22
  }
21
23
  return undefined;
22
24
  }
23
- /** Parse structured judge JSON (`verdict`, `evidence`, `rationale`). */
24
- export function parseJudgeJsonResponse(text) {
25
+ // Whole-reply opening fence is a contract attempt regardless of info-string
26
+ // (`json`, `js`, `typescript`, bare, …). Mid-prose fence mentions do not match.
27
+ const JUDGE_JSON_FENCE_OPEN_PATTERN = /^```/;
28
+ const JUDGE_VERDICT_KEY_PATTERN = /"verdict"\s*:/;
29
+ /** Same prefixes legacy YES/NO strips — gate same-line JSON peels. */
30
+ const JUDGE_VERDICT_PREFIX_PATTERN = /^(?:answer|verdict|line\s*1)\s*:\s*/i;
31
+ /** Complete JSON number token (rejects bare `1.` with no fractional digits). */
32
+ const JUDGE_JSON_NUMBER_TOKEN = /^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?/;
33
+ const JUDGE_JSON_BOOL_NULL_TOKEN = /^(?:true|false|null)/i;
34
+ /** Closed fences, or a trailing unclosed fence (prose preamble + open contract). */
35
+ const MARKDOWN_FENCE_STRIP_PATTERN = /```[^\n`]*\s*[\s\S]*?(?:```|$)/g;
36
+ /**
37
+ * After a complete JSON number/bool/null token: whether the remainder is
38
+ * contract junk (latch) vs English continuation (allow YES/NO salvage).
39
+ *
40
+ * `true\nYES` / `3 YES` / `42,` / `3, YES` → latch.
41
+ * `true story` / `3 findings` / `3, findings` / `true, the agent` → salvage.
42
+ */
43
+ function jsonPrimitiveRemainderIsContract(rest) {
44
+ if (rest === "") {
45
+ return true;
46
+ }
47
+ const restTrim = rest.trimStart();
48
+ if (restTrim === "") {
49
+ return true;
50
+ }
51
+ // Comma after a primitive is JSON-ish only when nothing English follows
52
+ // (`42,` / `3, YES`). List/prose continuations (`3, findings`, `1, 2, and 3`)
53
+ // must still reach YES/NO salvage.
54
+ if (restTrim.startsWith(",")) {
55
+ const afterComma = restTrim.slice(1).trimStart();
56
+ if (afterComma === "") {
57
+ return true;
58
+ }
59
+ if (/^(?:yes|no)\b/i.test(afterComma)) {
60
+ return true;
61
+ }
62
+ if (/[A-Za-z]/.test(afterComma)) {
63
+ return false;
64
+ }
65
+ return true;
66
+ }
67
+ const firstWord = /^([A-Za-z]+)/.exec(restTrim)?.[1]?.toLowerCase();
68
+ if (firstWord === "yes" || firstWord === "no") {
69
+ return true;
70
+ }
71
+ if (/^[A-Za-z]/.test(restTrim)) {
72
+ return false;
73
+ }
74
+ return true;
75
+ }
76
+ /**
77
+ * Detect truncated/unparseable JSON-shaped contract attempts. Only replies
78
+ * that *are* JSON-shaped (value prefix or open with a fence) count — a mid-prose
79
+ * mention of ```json or an incidental blob is not a contract attempt.
80
+ *
81
+ * Number/bool/null prefixes latch only for a complete JSON token (optionally
82
+ * with trailing junk). Numbered-list prose (`1. …`) and English continuations
83
+ * (`true story`, `3 findings`) must not latch — YES/NO salvage still applies.
84
+ */
85
+ function looksLikeJudgeJsonAttempt(text) {
86
+ const trimmed = text.trim();
87
+ if (JUDGE_JSON_FENCE_OPEN_PATTERN.test(trimmed)) {
88
+ return true;
89
+ }
90
+ if (/^["{[]/.test(trimmed)) {
91
+ return true;
92
+ }
93
+ const number = JUDGE_JSON_NUMBER_TOKEN.exec(trimmed);
94
+ if (number) {
95
+ const rest = trimmed.slice(number[0].length);
96
+ // `1. prose` / `10) prose` — list markers, not number-then-junk.
97
+ if (/^[.)]/.test(rest)) {
98
+ return false;
99
+ }
100
+ return jsonPrimitiveRemainderIsContract(rest);
101
+ }
102
+ const boolNull = JUDGE_JSON_BOOL_NULL_TOKEN.exec(trimmed);
103
+ if (boolNull) {
104
+ return jsonPrimitiveRemainderIsContract(trimmed.slice(boolNull[0].length));
105
+ }
106
+ return false;
107
+ }
108
+ /** Drop fenced bodies so legacy YES/NO does not match inside quoted JSON strings. */
109
+ function stripMarkdownFencesForLegacy(text) {
110
+ return text.replace(MARKDOWN_FENCE_STRIP_PATTERN, "\n");
111
+ }
112
+ /**
113
+ * True when the JSON contract body is array-shaped (`[` before any `{`),
114
+ * including truncated arrays. Object-extraction must not peel an inner
115
+ * `{…}` out of those replies.
116
+ */
117
+ function isArrayShapedJudgeJson(text) {
118
+ const trimmed = text.trim();
119
+ const fenced = trimmed.match(JSON_FENCE_PATTERN);
120
+ const body = fenced?.[1]?.trim() ?? trimmed;
121
+ const bracket = body.indexOf("[");
122
+ if (bracket === -1) {
123
+ return false;
124
+ }
125
+ const brace = body.indexOf("{");
126
+ return brace === -1 || bracket < brace;
127
+ }
128
+ const INVALID_JUDGE_JSON = {
129
+ pass: false,
130
+ rationale: "judge returned invalid JSON (expected { verdict, evidence, rationale })",
131
+ evidence: [],
132
+ valid: false,
133
+ };
134
+ function arrayLooksLikeJudgeContract(parsed) {
135
+ if (parsed.some((item) => item !== null &&
136
+ typeof item === "object" &&
137
+ !Array.isArray(item) &&
138
+ "verdict" in item)) {
139
+ return true;
140
+ }
141
+ // Wrong-shaped contract answers like `["yes"]` / `["no"]` — not incidental
142
+ // lists such as `[1,2,3]` or `["intro","summary"]`.
143
+ return (parsed.length > 0 &&
144
+ parsed.every((item) => typeof item === "string" && normalizeVerdict(item) !== undefined));
145
+ }
146
+ /** Peeled objects with judge-schema keys but no `verdict` are contract attempts. */
147
+ function objectLooksLikeJudgeSchema(record) {
148
+ return "evidence" in record || "rationale" in record;
149
+ }
150
+ /**
151
+ * Try structured judge JSON. `structured` latches only for real contract
152
+ * attempts: whole-text/fenced JSON bodies, verdict-shaped arrays or objects,
153
+ * or failed candidates carrying a `verdict` key — not incidental arrays,
154
+ * mid-prose truncated blobs, or fence mentions inside prose.
155
+ */
156
+ function tryParseJudgeJson(text) {
25
157
  const trimmed = text.trim();
26
158
  const candidates = [trimmed];
27
159
  const fenced = trimmed.match(JSON_FENCE_PATTERN);
28
- if (fenced?.[1]) {
29
- candidates.unshift(fenced[1].trim());
160
+ const fencedBody = fenced?.[1]?.trim();
161
+ if (fencedBody) {
162
+ candidates.unshift(fencedBody);
30
163
  }
31
- const objectMatch = trimmed.match(JSON_OBJECT_PATTERN);
32
- if (objectMatch?.[0]) {
33
- candidates.push(objectMatch[0]);
164
+ const arrayShaped = isArrayShapedJudgeJson(trimmed);
165
+ // Prose-prefixed single objects may still use greedy `{…}` extraction.
166
+ // Array-shaped replies (including truncated `[{…}`) must not peel inner objects.
167
+ if (!arrayShaped) {
168
+ const objectMatch = trimmed.match(JSON_OBJECT_PATTERN);
169
+ if (objectMatch?.[0]) {
170
+ candidates.push(objectMatch[0]);
171
+ }
172
+ const brace = trimmed.indexOf("{");
173
+ if (brace > 0) {
174
+ candidates.push(trimmed.slice(brace));
175
+ }
34
176
  }
177
+ else {
178
+ const bracket = trimmed.indexOf("[");
179
+ if (bracket >= 0) {
180
+ candidates.push(trimmed.slice(bracket));
181
+ }
182
+ }
183
+ // Contract peels under a prose preamble (not mid-prose incidental quotes):
184
+ // - line-leading `"…` / `[…` (`Answer:\n"yes"`)
185
+ // - line-leading JSON number/bool/null (`Answer:\n42\nYES`)
186
+ // - same-line after answer|verdict|line 1: (`Answer: "yes"`, `Verdict: 42`)
187
+ // Mid-line quotes without that prefix (`YES` + ```js\n"yes"\n```) stay
188
+ // incidental — fence bodies use `fencedBody` / whole-reply fence primary.
189
+ const lineLeadingJsonValues = new Set();
190
+ let insideFence = false;
191
+ const pushContractPeel = (value) => {
192
+ const peel = value.trim();
193
+ if (!peel) {
194
+ return;
195
+ }
196
+ candidates.push(peel);
197
+ lineLeadingJsonValues.add(peel);
198
+ };
199
+ const isLineLeadingJsonPrimitive = (lineTrim) => {
200
+ if (lineTrim.startsWith('"') || lineTrim.startsWith("[")) {
201
+ return true;
202
+ }
203
+ // Complete number/bool/null lines (optional contract junk) — not English
204
+ // (`3 findings`, `true story`) which looksLikeJudgeJsonAttempt rejects.
205
+ return (looksLikeJudgeJsonAttempt(lineTrim) &&
206
+ (JUDGE_JSON_NUMBER_TOKEN.test(lineTrim) || JUDGE_JSON_BOOL_NULL_TOKEN.test(lineTrim)));
207
+ };
208
+ for (const line of trimmed.split("\n")) {
209
+ const lineTrim = line.trim();
210
+ if (lineTrim.startsWith("```")) {
211
+ insideFence = !insideFence;
212
+ continue;
213
+ }
214
+ if (insideFence) {
215
+ continue;
216
+ }
217
+ if (isLineLeadingJsonPrimitive(lineTrim)) {
218
+ pushContractPeel(lineTrim);
219
+ }
220
+ const prefix = JUDGE_VERDICT_PREFIX_PATTERN.exec(lineTrim);
221
+ if (prefix) {
222
+ const remainder = lineTrim.slice(prefix[0].length).trim();
223
+ if (remainder.startsWith('"') ||
224
+ remainder.startsWith("[") ||
225
+ remainder.startsWith("{") ||
226
+ isLineLeadingJsonPrimitive(remainder)) {
227
+ pushContractPeel(remainder);
228
+ }
229
+ }
230
+ }
231
+ let structured = false;
232
+ let failedJsonShape = false;
233
+ // Only whole-reply fences are primary contract attempts. Mid-prose fences
234
+ // (e.g. YES + ```js\n"yes"\n```) stay incidental like unfenced peels.
235
+ const wholeReplyFence = JUDGE_JSON_FENCE_OPEN_PATTERN.test(trimmed);
35
236
  for (const candidate of candidates) {
237
+ const candidateTrim = candidate.trim();
238
+ const primary = candidateTrim === trimmed ||
239
+ (wholeReplyFence && fencedBody !== undefined && candidateTrim === fencedBody);
240
+ const lineLeading = lineLeadingJsonValues.has(candidateTrim);
36
241
  try {
37
242
  const parsed = JSON.parse(candidate);
38
- const verdict = normalizeVerdict(parsed.verdict);
243
+ if (parsed === null || typeof parsed !== "object") {
244
+ // Whole-text/fenced JSON primitives (`"yes"`, `42`, `true`, `null`)
245
+ // are contract attempts that violate the object contract — refuse
246
+ // and latch so callers do not YES/NO-salvage a quoted verdict.
247
+ // Preamble peels (`Answer:\n"yes"`, `Answer: "yes"`, `Answer:\n42`)
248
+ // are the same wrong-shaped contract; mid-line incidental quote
249
+ // peels stay out of `lineLeadingJsonValues`.
250
+ if (primary || lineLeading) {
251
+ return { result: { ...INVALID_JUDGE_JSON }, structured: true };
252
+ }
253
+ continue;
254
+ }
255
+ if (Array.isArray(parsed)) {
256
+ // Whole-text/fenced arrays are contract attempts; peeled arrays count
257
+ // when verdict-shaped or yes/no string arrays (`["yes"]`). Incidental
258
+ // lists (e.g. `Scores: [1,2,3]`) still allow YES/NO salvage.
259
+ if (primary || arrayLooksLikeJudgeContract(parsed)) {
260
+ return { result: { ...INVALID_JUDGE_JSON }, structured: true };
261
+ }
262
+ continue;
263
+ }
264
+ const record = parsed;
265
+ // Objects without `verdict`: schema-shaped peels (`evidence`/`rationale`)
266
+ // are failed contract attempts; bare quote blobs stay incidental.
267
+ if (!("verdict" in record)) {
268
+ if (primary || objectLooksLikeJudgeSchema(record)) {
269
+ return { result: { ...INVALID_JUDGE_JSON }, structured: true };
270
+ }
271
+ continue;
272
+ }
273
+ structured = true;
274
+ const verdict = normalizeVerdict(record.verdict);
39
275
  if (verdict !== undefined) {
40
276
  return {
41
- pass: verdict === "yes",
42
- rationale: String(parsed.rationale ?? "").trim() || "no rationale",
43
- evidence: Array.isArray(parsed.evidence)
44
- ? parsed.evidence.map((item) => String(item)).filter(Boolean)
45
- : [],
46
- valid: true,
277
+ result: {
278
+ pass: verdict === "yes",
279
+ rationale: String(record.rationale ?? "").trim() || "no rationale",
280
+ evidence: Array.isArray(record.evidence)
281
+ ? record.evidence.map((item) => String(item)).filter(Boolean)
282
+ : [],
283
+ valid: true,
284
+ },
285
+ structured: true,
47
286
  };
48
287
  }
288
+ return { result: { ...INVALID_JUDGE_JSON }, structured: true };
49
289
  }
50
290
  catch {
51
- // try next candidate
291
+ // A failed parse latches `structured` only for real contract attempts:
292
+ // the whole/fenced body is a JSON value (object/array/primitive),
293
+ // including trailing junk after a primitive (`"yes" clearly`), or a
294
+ // peeled candidate carries a `"verdict":` key (truncated contract).
295
+ // Line-leading string/array peels (`Answer:\n"yes" clearly`,
296
+ // `Answer:\n["yes"`) latch the same way. Mid-prose incidental peels
297
+ // (e.g. `Evidence: {"quote":"hello"`) keep YES/NO salvage available.
298
+ if (primary) {
299
+ if (looksLikeJudgeJsonAttempt(candidateTrim)) {
300
+ failedJsonShape = true;
301
+ }
302
+ }
303
+ else if ((candidateTrim.startsWith("{") || candidateTrim.startsWith("[")) &&
304
+ JUDGE_VERDICT_KEY_PATTERN.test(candidateTrim)) {
305
+ failedJsonShape = true;
306
+ }
307
+ else if (lineLeading && looksLikeJudgeJsonAttempt(candidateTrim)) {
308
+ failedJsonShape = true;
309
+ }
52
310
  }
53
311
  }
54
312
  return {
55
- pass: false,
56
- rationale: "judge returned invalid JSON (expected { verdict, evidence, rationale })",
57
- evidence: [],
58
- valid: false,
313
+ result: { ...INVALID_JUDGE_JSON },
314
+ structured: structured || failedJsonShape || looksLikeJudgeJsonAttempt(trimmed),
59
315
  };
60
316
  }
317
+ /** Parse structured judge JSON (`verdict`, `evidence`, `rationale`). */
318
+ export function parseJudgeJsonResponse(text) {
319
+ return tryParseJudgeJson(text).result;
320
+ }
61
321
  const JUDGE_MARKDOWN_TRIM_PATTERN = /^\*+\s*|\s*\*+$/g;
62
- const JUDGE_VERDICT_PREFIX_PATTERN = /^(?:answer|verdict|line\s*1)\s*:\s*/i;
63
322
  const JUDGE_TRAILING_PUNCT_PATTERN = /[.:!]+$/g;
64
323
  const JUDGE_TAIL_VERDICT_PATTERN = /\b(YES|NO)\.?\s*$/i;
65
324
  const JUDGE_INLINE_VERDICT_PATTERN = /\b(YES|NO)\b/i;
@@ -127,13 +386,20 @@ export function parseJudgeLegacyResponse(text) {
127
386
  valid: false,
128
387
  };
129
388
  }
130
- /** Parse structured JSON first, then legacy YES/NO prose. */
389
+ /**
390
+ * Parse structured JSON first, then legacy YES/NO prose.
391
+ * Once a real JSON contract attempt is detected (array, object with `verdict`,
392
+ * or truncated JSON-shaped text), never salvage YES/NO from the body — invalid
393
+ * contracts are infra failures, not rubric answers.
394
+ */
131
395
  export function parseJudgeResponse(text) {
132
- const json = parseJudgeJsonResponse(text);
133
- if (json.valid) {
134
- return json;
396
+ const { result, structured } = tryParseJudgeJson(text);
397
+ if (result.valid || structured) {
398
+ return result;
135
399
  }
136
- return parseJudgeLegacyResponse(text);
400
+ // Strip fences so preamble + ```json\n"yes"\n``` cannot salvage from the
401
+ // quoted primitive; outer YES/NO beside incidental fences still works.
402
+ return parseJudgeLegacyResponse(stripMarkdownFencesForLegacy(text));
137
403
  }
138
404
  function buildJudgePrompt(transcript, question) {
139
405
  return [
@@ -149,6 +415,22 @@ function buildJudgePrompt(transcript, question) {
149
415
  `Criterion: ${question}`,
150
416
  ].join("\n");
151
417
  }
418
+ function formatJudgeInfraError(result) {
419
+ const details = [];
420
+ if (result.rawStatus) {
421
+ details.push(`sdk: ${result.rawStatus}`);
422
+ }
423
+ if (result.sdkError?.code) {
424
+ details.push(`code: ${result.sdkError.code}`);
425
+ }
426
+ if (result.sdkError?.message) {
427
+ details.push(`error: ${result.sdkError.message}`);
428
+ }
429
+ if (details.length === 0) {
430
+ return `judge run status: ${result.status}`;
431
+ }
432
+ return `judge run status: ${result.status} (${details.join(", ")})`;
433
+ }
152
434
  async function runJudgePrompt(prompt, options) {
153
435
  const apiKey = options.apiKey ?? process.env.CURSOR_API_KEY;
154
436
  if (!apiKey) {
@@ -157,36 +439,60 @@ async function runJudgePrompt(prompt, options) {
157
439
  rationale: "CURSOR_API_KEY not set",
158
440
  evidence: [],
159
441
  error: "missing api key",
442
+ infraError: "missing api key",
443
+ durationMs: 0,
160
444
  };
161
445
  }
446
+ const started = performance.now();
162
447
  try {
163
448
  const result = await runJudgeClassifier({
164
449
  cwd: options.cwd,
165
450
  prompt,
166
451
  apiKey,
167
452
  });
453
+ const durationMs = Math.round(performance.now() - started);
168
454
  if (result.status !== "completed") {
455
+ const infraError = formatJudgeInfraError(result);
169
456
  return {
170
457
  pass: false,
171
- rationale: `judge run status: ${result.status}`,
458
+ rationale: infraError,
172
459
  evidence: [],
173
- error: `judge run status: ${result.status}`,
460
+ error: infraError,
461
+ infraError,
462
+ rawSdkStatus: result.rawStatus ?? result.status,
463
+ sdkError: result.sdkError,
464
+ durationMs,
174
465
  };
175
466
  }
176
467
  const parsed = parseJudgeResponse(result.text);
177
468
  if (!parsed.valid) {
469
+ const rationale = `${parsed.rationale} (raw: ${result.text.slice(0, 160) || "empty"})`;
178
470
  return {
179
471
  pass: false,
180
- rationale: `${parsed.rationale} (raw: ${result.text.slice(0, 160) || "empty"})`,
472
+ rationale,
181
473
  evidence: [],
182
- error: parsed.rationale,
474
+ error: rationale,
475
+ infraError: rationale,
476
+ durationMs,
183
477
  };
184
478
  }
185
- return { pass: parsed.pass, rationale: parsed.rationale, evidence: parsed.evidence };
479
+ return {
480
+ pass: parsed.pass,
481
+ rationale: parsed.rationale,
482
+ evidence: parsed.evidence,
483
+ durationMs,
484
+ };
186
485
  }
187
486
  catch (error) {
188
487
  const message = error instanceof Error ? error.message : "judge prompt failed";
189
- return { pass: false, rationale: message, evidence: [], error: message };
488
+ return {
489
+ pass: false,
490
+ rationale: message,
491
+ evidence: [],
492
+ error: message,
493
+ infraError: message,
494
+ durationMs: Math.round(performance.now() - started),
495
+ };
190
496
  }
191
497
  }
192
498
  /** Score fuzzy rubric criteria with a structured JSON judge (live runs only). */
@@ -203,6 +509,7 @@ export async function judgeTrace(trace, criteria, options) {
203
509
  };
204
510
  }
205
511
  const transcript = transcriptForJudge(trace);
512
+ const transcriptChars = transcript.length;
206
513
  const verdicts = [];
207
514
  for (const criterion of criteria) {
208
515
  const prompt = buildJudgePrompt(transcript, criterion.question);
@@ -212,6 +519,13 @@ export async function judgeTrace(trace, criteria, options) {
212
519
  pass: parsed.pass,
213
520
  rationale: parsed.rationale,
214
521
  evidence: parsed.evidence,
522
+ infraError: parsed.infraError,
523
+ rawSdkStatus: parsed.rawSdkStatus,
524
+ sdkError: parsed.sdkError,
525
+ attempt: 1,
526
+ durationMs: parsed.durationMs,
527
+ transcriptChars,
528
+ promptChars: prompt.length,
215
529
  });
216
530
  if (parsed.error) {
217
531
  return { verdicts, skipped: false, error: parsed.error };
package/dist/judge.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"judge.js","sourceRoot":"","sources":["../src/judge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"judge.js","sourceRoot":"","sources":["../src/judge.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@post-print/agent-harness",
3
- "version": "0.1.13",
3
+ "version": "0.1.14",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",