refactor(javascript): own runtime reconciliation failures

Return expected source and semantic failures from the runtime input owner as tagged Results. Bind source schema validation to concrete schemas, preserve nested active-capture paths, and let unexpected interpretation and derivation failures reach the adapter boundary.

Remove broad protocol-error wrappers, duplicate active identity validation, and redundant JSON result parsing. Migrate parsed-fact consumers and retain CLI/MCP contracts. Relevant source and public-boundary tests pass; six injected implementation-fault controls fail on the prior revision. Live Electron behavior was not exercised.
This commit is contained in:
morluto
2026-10-23 09:55:02 +08:00
parent ed069bb9d4
commit f4b2ba1313
13 changed files with 358 additions and 171 deletions
@@ -1,6 +1,6 @@
import { createEvidence } from "../../domain/evidence.js";
import {
parseRuntimeReconciliationInput,
readRuntimeReconciliationInput,
reconcileJavaScriptRuntime,
} from "../../domain/javascript/javascriptRuntimeReconciliation.js";
import {
@@ -10,13 +10,17 @@ import {
import { createHistoricalSourceGraph } from "../../domain/referenceSourceGraph.js";
import { reconcileJavaScriptRuntimeInputSchema } from "../../domain/javascript/javascriptRuntimeReconciliationSchemas.js";
const reconciliation = reconcileJavaScriptRuntime(
parseRuntimeReconciliationInput(
reconcileJavaScriptRuntimeInputSchema.parse(
JAVASCRIPT_RUNTIME_RECONCILIATION_EXAMPLE,
),
const reconciliationInput = readRuntimeReconciliationInput(
reconcileJavaScriptRuntimeInputSchema.parse(
JAVASCRIPT_RUNTIME_RECONCILIATION_EXAMPLE,
),
);
if (!reconciliationInput.ok)
throw new Error(
"The JavaScript runtime reconciliation contract example is invalid",
{ cause: reconciliationInput.error },
);
const reconciliation = reconcileJavaScriptRuntime(reconciliationInput.value);
const reconciliationEvidence = createEvidence(
undefined,
{