@mrrlin-dev/mcp 0.4.111 → 0.4.113

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/bin.cjs +24 -17
  2. package/package.json +1 -1
package/dist/bin.cjs CHANGED
@@ -45285,10 +45285,11 @@ function extractCodexExecUsage(stdout) {
45285
45285
  return last;
45286
45286
  }
45287
45287
  function extractClaudeExecUsage(parsed) {
45288
- if (!Array.isArray(parsed))
45288
+ const events = Array.isArray(parsed) ? parsed : typeof parsed === "object" && parsed !== null ? [parsed] : null;
45289
+ if (events === null)
45289
45290
  return null;
45290
- for (let i = parsed.length - 1; i >= 0; i -= 1) {
45291
- const element = parsed[i];
45291
+ for (let i = events.length - 1; i >= 0; i -= 1) {
45292
+ const element = events[i];
45292
45293
  if (typeof element !== "object" || element === null)
45293
45294
  continue;
45294
45295
  const record2 = element;
@@ -45525,8 +45526,11 @@ function extractOneShotResult(stdout) {
45525
45526
  } catch {
45526
45527
  return { ok: false, error: "claude exec produced no parseable JSON output" };
45527
45528
  }
45529
+ if (typeof parsed === "object" && parsed !== null && !Array.isArray(parsed)) {
45530
+ parsed = [parsed];
45531
+ }
45528
45532
  if (!Array.isArray(parsed)) {
45529
- return { ok: false, error: "claude exec output was not a JSON array" };
45533
+ return { ok: false, error: "claude exec output was neither a JSON array nor a result object" };
45530
45534
  }
45531
45535
  let resultEvent = null;
45532
45536
  for (let i = parsed.length - 1; i >= 0; i -= 1) {
@@ -47749,6 +47753,7 @@ function gateCallRecorder(args) {
47749
47753
  function buildSpecGateDeps(args) {
47750
47754
  const { client, projectSlug, specPageId, codexExecutable, extraHeadCount = 0, seat, stateDir } = args;
47751
47755
  const consensusProvider = process.env.MRRLIN_CONSENSUS_PROVIDER?.trim().toLowerCase() || void 0;
47756
+ const execProvider = consensusProvider ?? seat?.id;
47752
47757
  const recordCost = gateCallRecorder({
47753
47758
  stateDir,
47754
47759
  projectSlug,
@@ -47868,7 +47873,7 @@ ${artifact}`,
47868
47873
  codexExecutable
47869
47874
  },
47870
47875
  void 0,
47871
- consensusProvider
47876
+ execProvider
47872
47877
  );
47873
47878
  recordCost("head", personaName, null, startedAt, result);
47874
47879
  return result;
@@ -47888,7 +47893,7 @@ ${artifact}`,
47888
47893
  model: consensusProvider ? void 0 : seat?.model ?? seat?.models?.strong
47889
47894
  },
47890
47895
  void 0,
47891
- consensusProvider
47896
+ execProvider
47892
47897
  );
47893
47898
  recordCost("arbiter", "arbiter", seat?.model ?? seat?.models?.strong ?? null, startedAt, result);
47894
47899
  return result;
@@ -47913,7 +47918,7 @@ ${artifact}`,
47913
47918
  codexExecutable
47914
47919
  },
47915
47920
  void 0,
47916
- consensusProvider
47921
+ execProvider
47917
47922
  );
47918
47923
  recordCost("reviser", null, null, startedAt, result);
47919
47924
  return result;
@@ -47951,7 +47956,7 @@ ${artifact}`,
47951
47956
  const highlights = await curateFindings(Array.isArray(history) ? history : [], {
47952
47957
  runCodexExec: async (execInput) => {
47953
47958
  const startedAt = Date.now();
47954
- const result = await runAgentExec(execInput, void 0, consensusProvider);
47959
+ const result = await runAgentExec(execInput, void 0, execProvider);
47955
47960
  recordCost("findings", "findings-writer", null, startedAt, result);
47956
47961
  return result;
47957
47962
  },
@@ -47990,7 +47995,7 @@ ${artifact}`,
47990
47995
  // call the cost record silently omits.
47991
47996
  runCodexExec: async (input) => {
47992
47997
  const startedAt = Date.now();
47993
- const result = await runAgentExec(input, void 0, consensusProvider);
47998
+ const result = await runAgentExec(input, void 0, execProvider);
47994
47999
  recordCost("findings", "findings-writer", null, startedAt, result);
47995
48000
  return result;
47996
48001
  },
@@ -48020,6 +48025,7 @@ ${artifact}`,
48020
48025
  function buildCodeGateDeps(args) {
48021
48026
  const { client, projectSlug, baseRef, cwd, codexExecutable, extraHeads, seat, stateDir } = args;
48022
48027
  const consensusProvider = process.env.MRRLIN_CONSENSUS_PROVIDER?.trim().toLowerCase() || void 0;
48028
+ const execProvider = consensusProvider ?? seat?.id;
48023
48029
  const recordCost = gateCallRecorder({
48024
48030
  stateDir,
48025
48031
  projectSlug,
@@ -48071,7 +48077,7 @@ ${artifact}`,
48071
48077
  codexExecutable
48072
48078
  },
48073
48079
  void 0,
48074
- consensusProvider
48080
+ execProvider
48075
48081
  );
48076
48082
  recordCost("head", personaName, null, startedAt, result);
48077
48083
  return result;
@@ -48091,7 +48097,7 @@ ${artifact}`,
48091
48097
  model: consensusProvider ? void 0 : seat?.model ?? seat?.models?.strong
48092
48098
  },
48093
48099
  void 0,
48094
- consensusProvider
48100
+ execProvider
48095
48101
  );
48096
48102
  recordCost("arbiter", "arbiter", seat?.model ?? seat?.models?.strong ?? null, startedAt, result);
48097
48103
  return result;
@@ -48117,7 +48123,7 @@ ${artifact}`,
48117
48123
  codexExecutable
48118
48124
  },
48119
48125
  void 0,
48120
- consensusProvider
48126
+ execProvider
48121
48127
  );
48122
48128
  recordCost("reviser", null, null, startedAt, result);
48123
48129
  return result;
@@ -48143,6 +48149,7 @@ function renderCriteriaBlock(criteria) {
48143
48149
  async function buildDeliverableGateDeps(args) {
48144
48150
  const { client, projectSlug, deliverablePageId, attemptOutcome, codexExecutable, runId, seat, stateDir } = args;
48145
48151
  const consensusProvider = process.env.MRRLIN_CONSENSUS_PROVIDER?.trim().toLowerCase() || void 0;
48152
+ const execProvider = consensusProvider ?? seat?.id;
48146
48153
  const recordCost = gateCallRecorder({
48147
48154
  stateDir,
48148
48155
  projectSlug,
@@ -48221,7 +48228,7 @@ ${persona}`,
48221
48228
  codexExecutable
48222
48229
  },
48223
48230
  void 0,
48224
- consensusProvider
48231
+ execProvider
48225
48232
  );
48226
48233
  recordCost("head", personaName, null, startedAt, result);
48227
48234
  return result;
@@ -48241,7 +48248,7 @@ ${persona}`,
48241
48248
  model: consensusProvider ? void 0 : seat?.model ?? seat?.models?.strong
48242
48249
  },
48243
48250
  void 0,
48244
- consensusProvider
48251
+ execProvider
48245
48252
  );
48246
48253
  recordCost("arbiter", "arbiter", seat?.model ?? seat?.models?.strong ?? null, startedAt, result);
48247
48254
  return result;
@@ -48268,7 +48275,7 @@ You revise a deliverable to address the accepted issues so it satisfies the acce
48268
48275
  codexExecutable
48269
48276
  },
48270
48277
  void 0,
48271
- consensusProvider
48278
+ execProvider
48272
48279
  );
48273
48280
  recordCost("reviser", null, null, startedAt, result);
48274
48281
  return result;
@@ -48300,7 +48307,7 @@ You revise a deliverable to address the accepted issues so it satisfies the acce
48300
48307
  const rounds2 = typeof r["rounds"] === "number" ? r["rounds"] : 0;
48301
48308
  const history = r["history"];
48302
48309
  const highlights = await curateFindings(Array.isArray(history) ? history : [], {
48303
- runCodexExec: (execInput) => runAgentExec(execInput, void 0, consensusProvider),
48310
+ runCodexExec: (execInput) => runAgentExec(execInput, void 0, execProvider),
48304
48311
  loadPersona,
48305
48312
  cwd: sterileCwd(),
48306
48313
  timeoutMs,
@@ -61757,7 +61764,7 @@ Do NOT derail the current task - if the operator has an in-flight question, answ
61757
61764
  }
61758
61765
 
61759
61766
  // src/_generated/version.ts
61760
- var PKG_VERSION = "0.4.111";
61767
+ var PKG_VERSION = "0.4.113";
61761
61768
 
61762
61769
  // src/receipt-signing.ts
61763
61770
  var import_node_crypto13 = __toESM(require("node:crypto"), 1);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mrrlin-dev/mcp",
3
- "version": "0.4.111",
3
+ "version": "0.4.113",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "mrrlin-mcp": "dist/bin.cjs"