@inerrata-corporation/errata 2.0.2-dev.1285 → 2.0.2-dev.1300
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.
- package/errata.mjs +40 -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,
|
|
@@ -53730,6 +53741,7 @@ function parseDesignResolutions(text) {
|
|
|
53730
53741
|
}
|
|
53731
53742
|
return out2;
|
|
53732
53743
|
}
|
|
53744
|
+
var OPENCODE_PARSER_PINNED_VERSION = "1.18.18";
|
|
53733
53745
|
var OPENCODE_TRANSCRIPT_HEADER_TYPE = "errata-opencode-session";
|
|
53734
53746
|
var FILE_TOOLS = /* @__PURE__ */ new Set(["Read", "Edit", "Write", "MultiEdit", "NotebookEdit"]);
|
|
53735
53747
|
var WRITE_TOOLS = /* @__PURE__ */ new Set(["Edit", "Write", "MultiEdit", "NotebookEdit"]);
|
|
@@ -53764,6 +53776,7 @@ function readAssistantTurnsFrom(transcriptPath, fromByte, includeThinking = true
|
|
|
53764
53776
|
losses: { parseFailures: parsed.parseFailures, ioFailed, bytesUnreachable: 0 }
|
|
53765
53777
|
};
|
|
53766
53778
|
}
|
|
53779
|
+
var CODEX_PARSER_PINNED_VERSION = "0.144.5";
|
|
53767
53780
|
function detectHostHarness(raw2) {
|
|
53768
53781
|
const lines = raw2.split(/\r?\n/);
|
|
53769
53782
|
let checked = 0;
|
|
@@ -57729,7 +57742,7 @@ function createWatchBreaker(deps) {
|
|
|
57729
57742
|
}
|
|
57730
57743
|
|
|
57731
57744
|
// src/engine.ts
|
|
57732
|
-
var DAEMON_VERSION = true ? "2.0.2-dev.
|
|
57745
|
+
var DAEMON_VERSION = true ? "2.0.2-dev.1300" : "2.0.0-alpha.0";
|
|
57733
57746
|
var IGNORED_PATH = /[\\/](?:\.git|node_modules|\.errata|\.claude|\.codex|\.cursor|\.turbo|\.next|dist|coverage|test-results|playwright-report|__pycache__)(?:[\\/]|$)/;
|
|
57734
57747
|
var IGNORED_NOISE = /castalia\.db|eventlog\.sqlite|turn-cursors/;
|
|
57735
57748
|
var GIT_OP_MUTE_MS = 4e3;
|
|
@@ -63378,6 +63391,17 @@ function shouldUseOAuthLogin(flags2, env2 = process.env) {
|
|
|
63378
63391
|
}
|
|
63379
63392
|
|
|
63380
63393
|
// src/doctor.ts
|
|
63394
|
+
import { spawnSync } from "node:child_process";
|
|
63395
|
+
function installedHarnessVersion(bin) {
|
|
63396
|
+
try {
|
|
63397
|
+
const r = spawnSync(bin, ["--version"], { encoding: "utf8", timeout: 3e3 });
|
|
63398
|
+
if (r.status !== 0 && !r.stdout) return null;
|
|
63399
|
+
const m = /(\d+\.\d+\.\d+)/.exec(`${r.stdout ?? ""}${r.stderr ?? ""}`);
|
|
63400
|
+
return m ? m[1] : null;
|
|
63401
|
+
} catch {
|
|
63402
|
+
return null;
|
|
63403
|
+
}
|
|
63404
|
+
}
|
|
63381
63405
|
async function diagnoseInstallation(cfg, dependencies) {
|
|
63382
63406
|
const checks = [];
|
|
63383
63407
|
const profileName = cfg.activeInstallationProfile;
|
|
@@ -63450,6 +63474,20 @@ async function diagnoseInstallation(cfg, dependencies) {
|
|
|
63450
63474
|
});
|
|
63451
63475
|
}
|
|
63452
63476
|
}
|
|
63477
|
+
const versionOf = dependencies.harnessVersion ?? installedHarnessVersion;
|
|
63478
|
+
for (const { bin, pinned } of [
|
|
63479
|
+
{ bin: "codex", pinned: CODEX_PARSER_PINNED_VERSION },
|
|
63480
|
+
{ bin: "opencode", pinned: OPENCODE_PARSER_PINNED_VERSION }
|
|
63481
|
+
]) {
|
|
63482
|
+
const installed = versionOf(bin);
|
|
63483
|
+
checks.push(
|
|
63484
|
+
installed === null ? { id: `${bin}_parser_pin`, status: "pass", detail: `${bin} not installed \u2014 parser-pin check skipped` } : installed === pinned ? { id: `${bin}_parser_pin`, status: "pass", detail: `${bin} ${installed} matches the transcript-parser pin` } : {
|
|
63485
|
+
id: `${bin}_parser_pin`,
|
|
63486
|
+
status: "warn",
|
|
63487
|
+
detail: `${bin} ${installed} \u2260 parser pinned ${pinned} \u2014 transcripts verified against ${pinned}; re-pin fixtures if capture drifts`
|
|
63488
|
+
}
|
|
63489
|
+
);
|
|
63490
|
+
}
|
|
63453
63491
|
return {
|
|
63454
63492
|
ok: checks.every((check2) => check2.status !== "fail"),
|
|
63455
63493
|
profile: profileName,
|