@inerrata-corporation/errata 2.0.6-dev.2559 → 2.0.6-dev.2561

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/errata.mjs +8 -4
  2. package/package.json +1 -1
package/errata.mjs CHANGED
@@ -23483,6 +23483,7 @@ function evaluateMechanisms(store, invocations = /* @__PURE__ */ new Map(), mech
23483
23483
  const stalled = backlog !== void 0 && backlog > 0 && effectCount === 0 && (inv?.runs ?? 0) >= STALL_MIN_RUNS && span >= STALL_MIN_SPAN_MS && (backlogWas === void 0 || backlog >= backlogWas);
23484
23484
  let verdict;
23485
23485
  if (!inv || inv.runs === 0) verdict = "never-invoked";
23486
+ else if (d.configCounter && inv.lastTotals?.[d.configCounter] === 0) verdict = "unconfigured";
23486
23487
  else if (fed.fraction < (d.fedEdges?.minFraction ?? d.fed?.minFraction ?? 0)) verdict = "starved";
23487
23488
  else if (stalled) verdict = "stalled";
23488
23489
  else if (effectCount === 0) verdict = "no-effect";
@@ -23510,7 +23511,7 @@ function formatMechanismStatus(rows, nowMs) {
23510
23511
  return rows.map((r) => {
23511
23512
  const pct = (r.fedFraction * 100).toFixed(r.fedFraction < 0.01 ? 2 : 1);
23512
23513
  const age = r.lastInvokedMs === void 0 ? "never" : `${Math.max(0, Math.round((nowMs - r.lastInvokedMs) / 6e4))}m ago`;
23513
- const mark = r.verdict === "ok" ? "ok " : r.verdict === "no-effect" ? "IDLE" : r.verdict === "stalled" ? "STUCK" : "DEAD";
23514
+ const mark = r.verdict === "ok" ? "ok " : r.verdict === "no-effect" ? "IDLE" : r.verdict === "unconfigured" ? "OFF" : r.verdict === "stalled" ? "STUCK" : "DEAD";
23514
23515
  const hours = r.spanMs === void 0 ? 0 : Math.floor(r.spanMs / 36e5);
23515
23516
  const over = hours >= 24 ? `${Math.floor(hours / 24)}d` : `${hours}h`;
23516
23517
  const trend = r.verdict === "stalled" && r.backlog !== void 0 ? ` \u2014 ${r.backlog} waiting${r.backlogWas !== void 0 ? ` (was ${r.backlogWas})` : ""}, none cleared in ${over}` : "";
@@ -23717,7 +23718,8 @@ var init_mechanism_liveness = __esm({
23717
23718
  // Standing nominations ARE the judge-less backlog — without the gauge a
23718
23719
  // deployment with no judge configured reads as "nothing to fold".
23719
23720
  backlogCounter: "standing",
23720
- note: "standing > 0 with folded 0 = the judge lane is unconfigured (ERRATA_FOLD_JUDGE / azure env), not an empty queue"
23721
+ configCounter: "judgeConfigured",
23722
+ note: "the ambiguous band needs the opt-in judge: set ERRATA_FOLD_JUDGE=1 + a configured chat provider (azure env), or leave it off and the nominations stand"
23721
23723
  },
23722
23724
  {
23723
23725
  id: "cite-anchor-accrual",
@@ -78330,7 +78332,7 @@ function createWatchBreaker(deps) {
78330
78332
  }
78331
78333
 
78332
78334
  // src/engine.ts
78333
- var DAEMON_VERSION = true ? "2.0.6-dev.2559" : "2.0.0-alpha.0";
78335
+ var DAEMON_VERSION = true ? "2.0.6-dev.2561" : "2.0.0-alpha.0";
78334
78336
  var IGNORED_PATH = /[\\/](?:\.git|node_modules|\.errata|\.claude|\.codex|\.cursor|\.turbo|\.next|dist|coverage|test-results|playwright-report|__pycache__)(?:[\\/]|$)/;
78335
78337
  var IGNORED_NOISE = /castalia\.db|eventlog\.sqlite|turn-cursors/;
78336
78338
  var GIT_OP_MUTE_MS = 4e3;
@@ -80469,7 +80471,9 @@ B: ${b}`,
80469
80471
  rejected: fj.rejected,
80470
80472
  standing: fj.standing,
80471
80473
  judgeErrors: fj.judgeErrors,
80472
- retargeted: fj.retargeted
80474
+ retargeted: fj.retargeted,
80475
+ // Opt-in lane: 0 tells the liveness watch "off by choice", not "stuck".
80476
+ judgeConfigured: foldJudge ? 1 : 0
80473
80477
  });
80474
80478
  if (fj.folded > 0) {
80475
80479
  console.log(`[errata] fold-judge: folded ${fj.folded} paraphrase pair(s) (${fj.foldedEmbedding} by embedding, ${fj.foldedJudge} by judge), ${fj.standing} standing`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inerrata-corporation/errata",
3
- "version": "2.0.6-dev.2559",
3
+ "version": "2.0.6-dev.2561",
4
4
  "description": "errata - local-first observation engine for AI coding agents",
5
5
  "type": "module",
6
6
  "bin": {