@inerrata-corporation/errata 2.0.2-dev.1274 → 2.0.2-dev.1299

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 +26 -7
  2. package/package.json +1 -1
package/errata.mjs CHANGED
@@ -64,7 +64,7 @@ function toCloudAttrs(attrs) {
64
64
  }
65
65
  return rest2;
66
66
  }
67
- var SEMANTIC_NODE_LABELS, ROUTING_REASONS, CONTEXT_NODE_LABELS, CODE_NODE_LABELS, ALL_NODE_LABELS, STRUCTURAL_EDGES, CAUSAL_EDGES, RESOLUTION_EDGES, CONCEPTUAL_EDGES, EVIDENCE_EDGES, CODE_EDGES, BRIDGE_EDGES, IDENTITY_EDGES, JUSTIFICATION_EDGES, BELIEF_EDGES, ABSTRACTION_EDGES, DECOMPOSITION_EDGES, TRANSFER_EDGES, SOLUTION_STRUCTURE_EDGES, SUSPICION_EDGES, TAXONOMY_EDGES, TRIAGE_EDGES, GIT_EDGES, ALL_EDGE_TYPES, PAGERANK_EXCLUSIONS, EDGE_WEIGHT, EDGE_CONDUCTANCE_OVERRIDES, CAUSAL_PROTECT_EDGES, VALIDATION_SOURCES, TRUTH_KIND, ABSTRACTION_LEVEL, PROBLEM_RESOLUTION, DRIFT_KIND, TEST_PATH_RE, TEST_SCOPE_RE;
67
+ var SEMANTIC_NODE_LABELS, ANCHOR_REFUSAL_REASONS, ROUTING_REASONS, CONTEXT_NODE_LABELS, CODE_NODE_LABELS, ALL_NODE_LABELS, STRUCTURAL_EDGES, CAUSAL_EDGES, RESOLUTION_EDGES, CONCEPTUAL_EDGES, EVIDENCE_EDGES, CODE_EDGES, BRIDGE_EDGES, IDENTITY_EDGES, JUSTIFICATION_EDGES, BELIEF_EDGES, ABSTRACTION_EDGES, DECOMPOSITION_EDGES, TRANSFER_EDGES, SOLUTION_STRUCTURE_EDGES, SUSPICION_EDGES, TAXONOMY_EDGES, TRIAGE_EDGES, GIT_EDGES, ALL_EDGE_TYPES, PAGERANK_EXCLUSIONS, EDGE_WEIGHT, EDGE_CONDUCTANCE_OVERRIDES, CAUSAL_PROTECT_EDGES, VALIDATION_SOURCES, TRUTH_KIND, ABSTRACTION_LEVEL, PROBLEM_RESOLUTION, DRIFT_KIND, TEST_PATH_RE, TEST_SCOPE_RE;
68
68
  var init_castalia = __esm({
69
69
  "../../packages/shared/src/castalia.ts"() {
70
70
  "use strict";
@@ -96,6 +96,16 @@ var init_castalia = __esm({
96
96
  // truth (PLAN_PLASTICITY §2.3 / §4). truthKind/scope/groundedSupport in attrs.
97
97
  "Claim"
98
98
  ];
99
+ ANCHOR_REFUSAL_REASONS = [
100
+ /** The spine probe ran CLEAN and did not confirm the public claim. */
101
+ "spine-refused",
102
+ /** No anchor tag at all — cannot positively confirm, fail closed. */
103
+ "untagged-failclosed",
104
+ /** The daemon itself tagged the anchor private — a deliberate claim, not a refusal. */
105
+ "daemon-tagged-private",
106
+ /** The probe threw or timed out — the system was blind, not decided (see routingProbeFailed). */
107
+ "probe-failed"
108
+ ];
99
109
  ROUTING_REASONS = [
100
110
  /** Harness org (CTF lane, e2e battery, canary) — forced org-private. */
101
111
  "harness-clamp",
@@ -16079,6 +16089,7 @@ __export(src_exports, {
16079
16089
  ALL_EDGE_TYPES: () => ALL_EDGE_TYPES,
16080
16090
  ALL_NODE_LABELS: () => ALL_NODE_LABELS,
16081
16091
  AMBIGUOUS_ALIASES: () => AMBIGUOUS_ALIASES,
16092
+ ANCHOR_REFUSAL_REASONS: () => ANCHOR_REFUSAL_REASONS,
16082
16093
  BELIEF_EDGES: () => BELIEF_EDGES,
16083
16094
  BRIDGE_EDGES: () => BRIDGE_EDGES,
16084
16095
  CAUSAL_EDGES: () => CAUSAL_EDGES,
@@ -29839,8 +29850,9 @@ function mergeProblemsByEmbedding(store, opts) {
29839
29850
  );
29840
29851
  const corro = (n) => Number(n.attrs["corroborations"] ?? 0);
29841
29852
  const consumed = /* @__PURE__ */ new Set();
29853
+ const seeds = opts.freshSince === void 0 ? open2 : open2.filter((p) => p.createdAt > opts.freshSince);
29842
29854
  store.transaction(() => {
29843
- for (const a of open2) {
29855
+ for (const a of seeds) {
29844
29856
  if (consumed.has(a.id)) continue;
29845
29857
  const cluster = [a];
29846
29858
  for (const b of open2) {
@@ -57728,7 +57740,7 @@ function createWatchBreaker(deps) {
57728
57740
  }
57729
57741
 
57730
57742
  // src/engine.ts
57731
- var DAEMON_VERSION = true ? "2.0.2-dev.1274" : "2.0.0-alpha.0";
57743
+ var DAEMON_VERSION = true ? "2.0.2-dev.1299" : "2.0.0-alpha.0";
57732
57744
  var IGNORED_PATH = /[\\/](?:\.git|node_modules|\.errata|\.claude|\.codex|\.cursor|\.turbo|\.next|dist|coverage|test-results|playwright-report|__pycache__)(?:[\\/]|$)/;
57733
57745
  var IGNORED_NOISE = /castalia\.db|eventlog\.sqlite|turn-cursors/;
57734
57746
  var GIT_OP_MUTE_MS = 4e3;
@@ -59769,10 +59781,17 @@ B: ${b}`,
59769
59781
  const sem = await embedSemanticNodes(store);
59770
59782
  if (sem.embedded > 0) {
59771
59783
  console.log(`[errata] embedded ${sem.embedded} semantic node(s)`);
59772
- const e = mergeProblemsByEmbedding(store, { ts: Date.now() });
59773
- if (e.merged > 0) {
59774
- console.log(`[errata] dedup: merged ${e.merged} paraphrased problem(s) by embedding across ${e.clusters} cluster(s)`);
59775
- }
59784
+ }
59785
+ const parkWmRaw = store.getMeta?.("fold_park_sweep_at") ?? null;
59786
+ const e = mergeProblemsByEmbedding(store, {
59787
+ ts: Date.now(),
59788
+ ...parkWmRaw !== null ? { freshSince: Number(parkWmRaw) || 0 } : {}
59789
+ });
59790
+ store.setMeta?.("fold_park_sweep_at", String(Date.now()));
59791
+ if (e.merged > 0 || (e.nearMissMarked ?? 0) > 0) {
59792
+ console.log(`[errata] dedup: merged ${e.merged} paraphrased problem(s) across ${e.clusters} cluster(s), parked ${e.nearMissMarked ?? 0} near-miss nomination(s)${parkWmRaw === null ? " (first full sweep)" : ""}`);
59793
+ }
59794
+ if (sem.embedded > 0) {
59776
59795
  const cb = bindCanonicalNeighbors(store, { ts: Date.now() });
59777
59796
  if (cb.bound > 0) {
59778
59797
  console.log(`[errata] canonical-bind: +${cb.bound} machine-proposed link(s) across ${cb.scanned} problem(s)`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inerrata-corporation/errata",
3
- "version": "2.0.2-dev.1274",
3
+ "version": "2.0.2-dev.1299",
4
4
  "description": "errata - local-first observation engine for AI coding agents",
5
5
  "type": "module",
6
6
  "bin": {