mirror of
https://github.com/morluto/rea.git
synced 2026-11-05 06:15:59 +00:00
refactor(evidence): unify retained inputs across domains (#8299)
Declare logical Evidence sources once and resolve exact retained inputs through shared application workflows across 20 composition tools. Preserve domain-owned authentication, source closure, caller choices, coverage and resource admission. Validation includes public CLI/MCP regressions, local Codex terra/high trials and fresh-import real-artifact workflows. Measurements, failed attempts and coverage limits are recorded in docs/verification/evidence-input-composition-2026-10-31.md. Fixes #8293. Fixes #8281. Assisted-by: Suika (gensokyo-skills:suika-scatter-gather-planning)
This commit is contained in:
1 parent
23de10bb28
commit
a989c0e458
114 files changed
+8532
-1383
No files matched your search
@@ -3,19 +3,17 @@ import {
|
||||
localPathStringSchema,
|
||||
} from "../../domain/localPath.js";
|
||||
import { sourceToBundleViewRequestSchema } from "../../domain/analysisView/sourceToBundleView.js";
|
||||
import { evidenceSchema } from "../../domain/evidence.js";
|
||||
import { z } from "zod";
|
||||
|
||||
import { evidenceInputSchema } from "../../domain/evidenceReference.js";
|
||||
import { compareApplicationVersionsInputSchema } from "../../domain/javascript/javascriptApplicationVersionComparisonSchemas.js";
|
||||
import { compareJavaScriptExportShapesInputSchema } from "../../domain/javascript/javascriptExportShapeComparisonSchemas.js";
|
||||
import { traceApplicationFeatureInputSchema } from "../../domain/javascript/javascriptFeatureTraceSchemas.js";
|
||||
import { javaScriptSemanticQueryInputSchema } from "../../domain/javascript/javascriptSemanticQuerySchemas.js";
|
||||
import { traceJavaScriptSemanticsInputSchema } from "../../domain/javascript/javascriptSemanticTraceSchemas.js";
|
||||
import { compareSourceToBundleInputSchema } from "../../domain/javascript/sourceToBundleComparisonSchemas.js";
|
||||
import { reconcileJavaScriptRuntimeInputSchema } from "../../domain/javascript/javascriptRuntimeReconciliationSchemas.js";
|
||||
|
||||
const traceApplicationFeatureFacts = {
|
||||
native_observations:
|
||||
traceApplicationFeatureInputSchema.shape.native_observations,
|
||||
native_observations: z.array(evidenceInputSchema).default([]),
|
||||
seed: traceApplicationFeatureInputSchema.shape.seed,
|
||||
semantic_page: traceApplicationFeatureInputSchema.shape.semantic_page,
|
||||
direction: traceApplicationFeatureInputSchema.shape.direction,
|
||||
@@ -28,16 +26,14 @@ export const traceApplicationFeatureRequestSchema = z.strictObject({
|
||||
});
|
||||
|
||||
/** Semantic trace request accepting inline or same-session application Evidence. */
|
||||
export const traceJavaScriptSemanticsRequestSchema = z.strictObject({
|
||||
application: evidenceInputSchema,
|
||||
query: javaScriptSemanticQueryInputSchema,
|
||||
});
|
||||
export const traceJavaScriptSemanticsRequestSchema =
|
||||
traceJavaScriptSemanticsInputSchema.extend({
|
||||
application: evidenceInputSchema,
|
||||
});
|
||||
|
||||
const compareApplicationVersionsFacts = {
|
||||
left_native_observations:
|
||||
compareApplicationVersionsInputSchema.shape.left_native_observations,
|
||||
right_native_observations:
|
||||
compareApplicationVersionsInputSchema.shape.right_native_observations,
|
||||
left_native_observations: z.array(evidenceInputSchema).default([]),
|
||||
right_native_observations: z.array(evidenceInputSchema).default([]),
|
||||
} as const;
|
||||
|
||||
/** Application comparison request accepting inline or same-session application Evidence. */
|
||||
@@ -65,7 +61,7 @@ export const compareSourceToBundleCliInputSchema = z.strictObject({
|
||||
compareSourceToBundleInputSchema.shape.reference,
|
||||
referenceFile,
|
||||
]),
|
||||
application: evidenceSchema,
|
||||
application: evidenceInputSchema,
|
||||
});
|
||||
/** The MCP host accepts absolute local paths; omitted view preserves the full report. */
|
||||
export const compareSourceToBundleRequestSchema = z.strictObject({
|
||||
@@ -94,3 +90,15 @@ export const compareJavaScriptExportShapesRequestSchema = z.strictObject({
|
||||
left: evidenceInputSchema,
|
||||
right: evidenceInputSchema,
|
||||
});
|
||||
|
||||
/** Static layers and passive observations share the same logical Evidence inputs. */
|
||||
export const reconcileJavaScriptRuntimeRequestSchema = z.strictObject({
|
||||
static_layers: z
|
||||
.array(
|
||||
reconcileJavaScriptRuntimeInputSchema.shape.static_layers.element.extend({
|
||||
analysis: evidenceInputSchema,
|
||||
}),
|
||||
)
|
||||
.min(1),
|
||||
runtime_observations: z.array(evidenceInputSchema).min(1),
|
||||
});
|
||||
@@ -28,10 +28,8 @@ import {
|
||||
analyzeJavaScriptApplicationInputSchema,
|
||||
javascriptApplicationAnalysisResultSchema,
|
||||
} from "../../domain/javascript/javascriptApplicationAnalysis.js";
|
||||
import {
|
||||
javascriptRuntimeReconciliationResultSchema,
|
||||
reconcileJavaScriptRuntimeInputSchema,
|
||||
} from "../../domain/javascript/javascriptRuntimeReconciliationSchemas.js";
|
||||
import { javascriptRuntimeReconciliationResultSchema } from "../../domain/javascript/javascriptRuntimeReconciliationSchemas.js";
|
||||
import { reconcileJavaScriptRuntimeRequestSchema } from "./applicationWorkflowInputContracts.js";
|
||||
import { JAVASCRIPT_RUNTIME_RECONCILIATION_EXAMPLE } from "./javascriptRuntimeReconciliationExample.js";
|
||||
|
||||
const listOutputSchema = evidenceResultOf(electronTargetListSchema);
|
||||
@@ -149,7 +147,7 @@ export const ELECTRON_TOOL_CONTRACTS = [
|
||||
description:
|
||||
"Reconcile verified static JavaScript application graphs with existing passive web/Electron CDP, passive V8 Inspector, or provider-owned active Electron Evidence. Active Electron captures contribute an explicitly partial target-only runtime record; they never invent renderer scripts, frames, workers, or execution claims. Exact captured-source digests take priority over caller-declared file/URL mappings; target, frame, script, and worker ambiguity remains explicit, and source-map authority stays separate.",
|
||||
kind: "electron-provider",
|
||||
inputSchema: reconcileJavaScriptRuntimeInputSchema,
|
||||
inputSchema: reconcileJavaScriptRuntimeRequestSchema,
|
||||
outputSchema: reconciliationOutputSchema,
|
||||
examples: [
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user