feat(javascript): record Electron integrity mismatches

This commit is contained in:
morluto
2026-10-10 02:00:08 +08:00
parent f0dc233d64
commit 7915ee5178
21 changed files with 429 additions and 35 deletions
@@ -12,6 +12,7 @@ import {
} from "./javascriptSemanticGraph.js";
import { digestSchema } from "../digests.js";
import { prefixedDigestSchema } from "../digests.js";
import { integrityContradictionSchema } from "../artifactGraph.js";
import { localPathStringSchema } from "../localPath.js";
const countSchema = z.number().int().min(0);
@@ -20,6 +21,7 @@ const countSchema = z.number().int().min(0);
export const analyzeJavaScriptApplicationInputSchema = z.strictObject({
input_path: localPathStringSchema,
format: z.enum(["auto", "asar", "directory"]).default("auto"),
integrity_policy: z.enum(["fail", "record-and-continue"]).default("fail"),
});
/** Compact counts for the high-level Electron architecture/security surface. */
@@ -66,6 +68,7 @@ const applicationAnalysisResultShape = z.strictObject({
root_artifact_sha256: digestSchema,
inventory_manifest_id: prefixedDigestSchema("agm"),
inventory_graph_sha256: digestSchema,
integrity_contradictions: z.array(integrityContradictionSchema),
graph: javascriptApplicationGraphSchema,
summary: electronBoundarySummarySchema,
statistics: reconstructionStatisticsSchema,