@senpi/runtime 3.0.57 → 3.0.59
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/dist/actions/action-events.d.ts +3 -3
- package/dist/actions/action-events.d.ts.map +1 -1
- package/dist/actions/action-events.js +24 -16
- package/dist/actions/action-events.js.map +1 -1
- package/dist/actions/action-runtime-module.d.ts.map +1 -1
- package/dist/actions/action-runtime-module.js +18 -1
- package/dist/actions/action-runtime-module.js.map +1 -1
- package/dist/actions/close-position/close-position.action.d.ts.map +1 -1
- package/dist/actions/close-position/close-position.action.js +84 -11
- package/dist/actions/close-position/close-position.action.js.map +1 -1
- package/dist/actions/event-derivation.d.ts +40 -2
- package/dist/actions/event-derivation.d.ts.map +1 -1
- package/dist/actions/event-derivation.js +178 -5
- package/dist/actions/event-derivation.js.map +1 -1
- package/dist/actions/open-position/open-position.action.d.ts.map +1 -1
- package/dist/actions/open-position/open-position.action.js +103 -16
- package/dist/actions/open-position/open-position.action.js.map +1 -1
- package/dist/actions/position-tracker/position-tracker.action.d.ts +2 -1
- package/dist/actions/position-tracker/position-tracker.action.d.ts.map +1 -1
- package/dist/actions/position-tracker/position-tracker.action.js +47 -15
- package/dist/actions/position-tracker/position-tracker.action.js.map +1 -1
- package/dist/actions/skipped-signal-results.d.ts +16 -0
- package/dist/actions/skipped-signal-results.d.ts.map +1 -0
- package/dist/actions/skipped-signal-results.js +47 -0
- package/dist/actions/skipped-signal-results.js.map +1 -0
- package/dist/cli/guide-commands.d.ts.map +1 -1
- package/dist/cli/guide-commands.js +28 -2
- package/dist/cli/guide-commands.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -1
- package/dist/runtime/lifecycle-events.d.ts +13 -0
- package/dist/runtime/lifecycle-events.d.ts.map +1 -1
- package/dist/runtime/lifecycle-events.js +32 -0
- package/dist/runtime/lifecycle-events.js.map +1 -1
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +3 -1
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/supervisor/long-running-supervisor.d.ts +8 -0
- package/dist/runtime/supervisor/long-running-supervisor.d.ts.map +1 -1
- package/dist/runtime/supervisor/long-running-supervisor.js +1 -0
- package/dist/runtime/supervisor/long-running-supervisor.js.map +1 -1
- package/dist/runtime-api/intake/intake-events.d.ts +19 -3
- package/dist/runtime-api/intake/intake-events.d.ts.map +1 -1
- package/dist/runtime-api/intake/intake-events.js +64 -2
- package/dist/runtime-api/intake/intake-events.js.map +1 -1
- package/dist/runtime-api/intake/process-signal-post.d.ts.map +1 -1
- package/dist/runtime-api/intake/process-signal-post.js +7 -1
- package/dist/runtime-api/intake/process-signal-post.js.map +1 -1
- package/dist/runtime-api/intake/scanner-launcher.d.ts.map +1 -1
- package/dist/runtime-api/intake/scanner-launcher.js +12 -0
- package/dist/runtime-api/intake/scanner-launcher.js.map +1 -1
- package/dist/runtime-api/intake/types.d.ts +24 -0
- package/dist/runtime-api/intake/types.d.ts.map +1 -1
- package/dist/runtime-api/routes/signals.d.ts.map +1 -1
- package/dist/runtime-api/routes/signals.js +10 -1
- package/dist/runtime-api/routes/signals.js.map +1 -1
- package/dist/runtime-api/routes/signals.schema.d.ts +10 -0
- package/dist/runtime-api/routes/signals.schema.d.ts.map +1 -1
- package/dist/runtime-api/routes/signals.schema.js +14 -0
- package/dist/runtime-api/routes/signals.schema.js.map +1 -1
- package/dist/scanners/events.d.ts +7 -0
- package/dist/scanners/events.d.ts.map +1 -1
- package/dist/scanners/events.js.map +1 -1
- package/dist/scanners/external/scaffold/delivery.py +23 -12
- package/dist/scanners/external/scaffold/http_post.py +10 -2
- package/dist/scanners/external/scaffold/import_check.py +6 -1
- package/dist/scanners/external/scaffold/preflight.py +6 -2
- package/dist/scanners/external/scaffold/scaffold.py +63 -11
- package/dist/scanners/runtime-module.d.ts.map +1 -1
- package/dist/scanners/runtime-module.js +10 -2
- package/dist/scanners/runtime-module.js.map +1 -1
- package/dist/telemetry/event-builders.d.ts +45 -6
- package/dist/telemetry/event-builders.d.ts.map +1 -1
- package/dist/telemetry/event-builders.js +99 -11
- package/dist/telemetry/event-builders.js.map +1 -1
- package/dist/telemetry/metrics.d.ts +14 -2
- package/dist/telemetry/metrics.d.ts.map +1 -1
- package/dist/telemetry/metrics.js +19 -4
- package/dist/telemetry/metrics.js.map +1 -1
- package/dist/telemetry/scanner-tick-event.d.ts +32 -0
- package/dist/telemetry/scanner-tick-event.d.ts.map +1 -0
- package/dist/telemetry/scanner-tick-event.js +32 -0
- package/dist/telemetry/scanner-tick-event.js.map +1 -0
- package/dist/utils/event-catalog.d.ts +76 -0
- package/dist/utils/event-catalog.d.ts.map +1 -1
- package/dist/utils/event-catalog.js +7 -0
- package/dist/utils/event-catalog.js.map +1 -1
- package/dist/validate/codes.d.ts +2 -0
- package/dist/validate/codes.d.ts.map +1 -1
- package/dist/validate/codes.js +6 -0
- package/dist/validate/codes.js.map +1 -1
- package/dist/validate/import-stage.d.ts.map +1 -1
- package/dist/validate/import-stage.js +7 -1
- package/dist/validate/import-stage.js.map +1 -1
- package/dist/validate/live-stage.d.ts +26 -0
- package/dist/validate/live-stage.d.ts.map +1 -1
- package/dist/validate/live-stage.js +65 -9
- package/dist/validate/live-stage.js.map +1 -1
- package/dist/validate/proof.d.ts.map +1 -1
- package/dist/validate/proof.js +37 -24
- package/dist/validate/proof.js.map +1 -1
- package/dist/validate/recipe-checks.d.ts.map +1 -1
- package/dist/validate/recipe-checks.js +4 -1
- package/dist/validate/recipe-checks.js.map +1 -1
- package/dist/validate/report.d.ts.map +1 -1
- package/dist/validate/report.js +3 -1
- package/dist/validate/report.js.map +1 -1
- package/dist/validate/run.d.ts.map +1 -1
- package/dist/validate/run.js +41 -14
- package/dist/validate/run.js.map +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +1 -1
|
@@ -95,7 +95,33 @@ export interface TickContext {
|
|
|
95
95
|
* diagnosis at the first sends someone hunting a gate that does not exist.
|
|
96
96
|
*/
|
|
97
97
|
nonMcpSources?: FindingLocation[];
|
|
98
|
+
/**
|
|
99
|
+
* What this run allowed a tick, and what production would allow it.
|
|
100
|
+
*
|
|
101
|
+
* They are not the same number. Validate caps at its own default so a six-hour-cadence scanner
|
|
102
|
+
* does not make the command hang for six hours; production, when the recipe declares no
|
|
103
|
+
* `timeout_seconds`, falls back to the interval (`scaffold.py`: `timeout_seconds = interval`).
|
|
104
|
+
* Carried here because a timeout finding that says "this would time out in production too" is
|
|
105
|
+
* simply false in that case, and a validator that states something untrue about production has
|
|
106
|
+
* failed at the one job it has.
|
|
107
|
+
*/
|
|
108
|
+
budget?: TickBudget;
|
|
109
|
+
}
|
|
110
|
+
export interface TickBudget {
|
|
111
|
+
/** The budget this run enforced. */
|
|
112
|
+
validateSeconds: number;
|
|
113
|
+
/** The budget production would enforce for the same scanner. */
|
|
114
|
+
productionSeconds: number;
|
|
115
|
+
/** Whether the recipe declared `timeout_seconds`. When it did, the two agree. */
|
|
116
|
+
declared: boolean;
|
|
98
117
|
}
|
|
118
|
+
/**
|
|
119
|
+
* Production's tick budget for a scanner, mirroring the scaffold's own fallback.
|
|
120
|
+
*
|
|
121
|
+
* Kept beside the judgement that reports it, with the source named, because the whole point is
|
|
122
|
+
* that this number is production's and not ours.
|
|
123
|
+
*/
|
|
124
|
+
export declare function productionBudgetSeconds(declaredTimeout: number | undefined, intervalSeconds: number): number;
|
|
99
125
|
/**
|
|
100
126
|
* Turn one tick into findings.
|
|
101
127
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live-stage.d.ts","sourceRoot":"","sources":["../../src/validate/live-stage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;
|
|
1
|
+
{"version":3,"file":"live-stage.d.ts","sourceRoot":"","sources":["../../src/validate/live-stage.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,13 @@
|
|
|
16
16
|
* fires and it computes a confidently wrong answer from missing input. Counting that as a read
|
|
17
17
|
* would report the run clean.
|
|
18
18
|
*/
|
|
19
|
-
|
|
19
|
+
// Via the repo's wrapper, never the stdlib module directly: OpenClaw's install gate
|
|
20
|
+
// blocks any plugin file matching BOTH a spawn-like call AND the literal module name,
|
|
21
|
+
// and `safe-spawn` exists to keep those bytes out of a file. Importing it directly here
|
|
22
|
+
// shipped in 3.0.57, whose published dist the gate refuses outright — a hard failure,
|
|
23
|
+
// not a warning, because senpi-agent's bootstrap deliberately stopped passing
|
|
24
|
+
// --dangerously-force-unsafe-install so that exactly this regression would be loud.
|
|
25
|
+
import { spawn } from "../utils/safe-spawn.js";
|
|
20
26
|
import { mkdtempSync, readFileSync, writeFileSync } from "node:fs";
|
|
21
27
|
import { tmpdir } from "node:os";
|
|
22
28
|
import { join } from "node:path";
|
|
@@ -61,6 +67,15 @@ function fullyFailedServices(reads) {
|
|
|
61
67
|
.map(([service]) => service)
|
|
62
68
|
.sort();
|
|
63
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* Production's tick budget for a scanner, mirroring the scaffold's own fallback.
|
|
72
|
+
*
|
|
73
|
+
* Kept beside the judgement that reports it, with the source named, because the whole point is
|
|
74
|
+
* that this number is production's and not ours.
|
|
75
|
+
*/
|
|
76
|
+
export function productionBudgetSeconds(declaredTimeout, intervalSeconds) {
|
|
77
|
+
return declaredTimeout ?? intervalSeconds;
|
|
78
|
+
}
|
|
64
79
|
/**
|
|
65
80
|
* Turn one tick into findings.
|
|
66
81
|
*
|
|
@@ -79,10 +94,24 @@ export function judgeTick(scanner, outcome, context = {}) {
|
|
|
79
94
|
}),
|
|
80
95
|
];
|
|
81
96
|
}
|
|
97
|
+
if (outcome.reason === "outer_timeout") {
|
|
98
|
+
// This kill exists for exactly what the tick's OWN budget cannot reach — a stall somewhere
|
|
99
|
+
// the in-process alarm never interrupts, a connection that never resolves. So the likely
|
|
100
|
+
// cause is the scanner, and routing it to ops told the one person who could fix it that it
|
|
101
|
+
// was not theirs.
|
|
102
|
+
return [
|
|
103
|
+
liveFinding(VALIDATE_CODE.tickUnresponsive, "locate-only", "error", {
|
|
104
|
+
what: `The tick for scanner '${scanner.name}' stopped responding and had to be killed`,
|
|
105
|
+
why: "It passed its own budget without the in-process timeout ending it, which means it stalled somewhere that timeout cannot interrupt — most often a network read with no deadline, or a blocking call outside Python's control. Production has the same blind spot, so a tick that hangs here can hang there.",
|
|
106
|
+
fix: "Give every outbound call an explicit timeout, and check for blocking work that does not yield — a socket read, a subprocess, a C extension.",
|
|
107
|
+
evidence: { detail: outcome.detail },
|
|
108
|
+
}),
|
|
109
|
+
];
|
|
110
|
+
}
|
|
82
111
|
return [
|
|
83
112
|
liveFinding(VALIDATE_CODE.envMissingSdk, "command", "error", {
|
|
84
|
-
what: `The tick could not be
|
|
85
|
-
why: "This is the environment the validator runs in
|
|
113
|
+
what: `The tick could not be started for scanner '${scanner.name}': ${outcome.detail ?? outcome.reason}`,
|
|
114
|
+
why: "The harness never ran, so nothing was learned about the strategy either way. This is the environment the validator runs in.",
|
|
86
115
|
fix: "Check that the Python interpreter and its dependencies are installed as the runtime image installs them.",
|
|
87
116
|
evidence: { reason: outcome.reason, detail: outcome.detail },
|
|
88
117
|
}),
|
|
@@ -107,12 +136,7 @@ export function judgeTick(scanner, outcome, context = {}) {
|
|
|
107
136
|
}
|
|
108
137
|
// ── the tick itself ──────────────────────────────────────────────────────
|
|
109
138
|
if (outcome.status === "timeout") {
|
|
110
|
-
findings.push(liveFinding(VALIDATE_CODE.tickTimeout, "edit", "error", {
|
|
111
|
-
what: `scan() did not finish within the budget this recipe declares`,
|
|
112
|
-
why: "The runtime kills a tick at this budget in production too, so this would time out on every tick rather than only here.",
|
|
113
|
-
fix: `Reduce the work in one tick — this one made ${reads.length} calls — or raise timeout_seconds if the budget is genuinely too tight.`,
|
|
114
|
-
evidence: { calls: reads.length },
|
|
115
|
-
}));
|
|
139
|
+
findings.push(liveFinding(VALIDATE_CODE.tickTimeout, "edit", "error", { ...timeoutParts(context.budget, reads.length) }));
|
|
116
140
|
return findings;
|
|
117
141
|
}
|
|
118
142
|
if (outcome.status === "error" && outcome.failure?.type === "EgressBlocked") {
|
|
@@ -314,6 +338,38 @@ function describeSources(sources) {
|
|
|
314
338
|
.join(", ");
|
|
315
339
|
return sources.length === 1 ? `${at} imports` : `${at} import`;
|
|
316
340
|
}
|
|
341
|
+
/**
|
|
342
|
+
* What a timeout means, which depends on whether the two budgets agree.
|
|
343
|
+
*
|
|
344
|
+
* When the recipe declares `timeout_seconds`, validate enforced exactly what production will, and
|
|
345
|
+
* the strong statement is true. When it does not, production falls back to the cadence — often far
|
|
346
|
+
* larger — and the honest report says so rather than claiming a production failure that would not
|
|
347
|
+
* happen. It is still worth reporting: a tick taking minutes is worth a look even where nothing
|
|
348
|
+
* kills it.
|
|
349
|
+
*/
|
|
350
|
+
function timeoutParts(budget, calls) {
|
|
351
|
+
const workFix = `Reduce the work in one tick — this one made ${calls} call${calls === 1 ? "" : "s"}`;
|
|
352
|
+
if (budget === undefined || budget.declared) {
|
|
353
|
+
const seconds = budget?.validateSeconds;
|
|
354
|
+
return {
|
|
355
|
+
what: `scan() did not finish within the ${seconds !== undefined ? `${seconds}s ` : ""}budget this recipe declares`,
|
|
356
|
+
why: "The runtime kills a tick at this budget in production too, so this would time out on every tick rather than only here.",
|
|
357
|
+
fix: `${workFix} — or raise timeout_seconds if the budget is genuinely too tight.`,
|
|
358
|
+
evidence: { calls, ...(seconds !== undefined ? { budget_seconds: seconds } : {}) },
|
|
359
|
+
};
|
|
360
|
+
}
|
|
361
|
+
return {
|
|
362
|
+
what: `scan() did not finish within this check's ${budget.validateSeconds}s budget`,
|
|
363
|
+
why: `The recipe declares no timeout_seconds, so production would allow ${budget.productionSeconds}s — its cadence — and this tick would probably not be killed there. This check caps at ${budget.validateSeconds}s so a long-cadence scanner cannot make it hang. So: not proof of a production timeout, but a tick this slow is worth understanding.`,
|
|
364
|
+
fix: `${workFix}. If the duration is expected, declare timeout_seconds so the budget is explicit, and pass --timeout to check against it here.`,
|
|
365
|
+
evidence: {
|
|
366
|
+
calls,
|
|
367
|
+
validate_budget_seconds: budget.validateSeconds,
|
|
368
|
+
production_budget_seconds: budget.productionSeconds,
|
|
369
|
+
timeout_declared: false,
|
|
370
|
+
},
|
|
371
|
+
};
|
|
372
|
+
}
|
|
317
373
|
function describeShapes(reads) {
|
|
318
374
|
const shapes = reads
|
|
319
375
|
.filter((r) => r.ok && r.response_keys)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"live-stage.js","sourceRoot":"","sources":["../../src/validate/live-stage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"live-stage.js","sourceRoot":"","sources":["../../src/validate/live-stage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/validate/proof.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAQH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,uFAAuF;AACvF,eAAO,MAAM,cAAc,sBAAsB,CAAC;AAUlD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,EAAE,CAAC,CAAC;IAClB,kEAAkE;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,YAAY,EAAE,kBAAkB,EAAE,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,iBAAiB,GAAG,yBAAyB,CAAC;AAEtF,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/validate/proof.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAQH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,uFAAuF;AACvF,eAAO,MAAM,cAAc,sBAAsB,CAAC;AAUlD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,EAAE,CAAC,CAAC;IAClB,kEAAkE;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,YAAY,EAAE,kBAAkB,EAAE,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,iBAAiB,GAAG,yBAAyB,CAAC;AAEtF,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AA0CD,qFAAqF;AACrF,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EAAE,GACrB;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAcxD;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,YAAY,EAAE,kBAAkB,EAAE,CAAC;CACpC;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAW7F;AAoED;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,iGAAiG;IACjG,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,YAAY,CAQzF"}
|
package/dist/validate/proof.js
CHANGED
|
@@ -61,10 +61,17 @@ function walk(root, packageRoot, into) {
|
|
|
61
61
|
if (stat.isDirectory()) {
|
|
62
62
|
if (!EXCLUDED_DIRS.has(name))
|
|
63
63
|
walk(full, packageRoot, into);
|
|
64
|
+
continue;
|
|
64
65
|
}
|
|
65
|
-
|
|
66
|
+
try {
|
|
66
67
|
into.set(relative(packageRoot, full), sha256(readFileSync(full)));
|
|
67
68
|
}
|
|
69
|
+
catch {
|
|
70
|
+
// A file that cannot be read is left out of the map, which reads downstream as absent —
|
|
71
|
+
// so verification refuses and names it, rather than throwing. Deliberately not skipped
|
|
72
|
+
// *silently*: skipping would let a proof be granted over bytes nobody hashed. Failing
|
|
73
|
+
// toward "re-validate this" is the safe direction to be wrong in.
|
|
74
|
+
}
|
|
68
75
|
}
|
|
69
76
|
}
|
|
70
77
|
/** Hash the authored content: the recipe as written, every scanner file verbatim. */
|
|
@@ -96,6 +103,18 @@ export function fingerprintPackage(recipePath, scannerRoots) {
|
|
|
96
103
|
*/
|
|
97
104
|
export function writeProof(inputs) {
|
|
98
105
|
const packageRoot = dirname(inputs.recipePath);
|
|
106
|
+
const path = join(packageRoot, PROOF_FILENAME);
|
|
107
|
+
try {
|
|
108
|
+
return recordProof(inputs, packageRoot, path);
|
|
109
|
+
}
|
|
110
|
+
catch (err) {
|
|
111
|
+
// Hashing reads the package, so it can fail for the same reasons the write can. Both are
|
|
112
|
+
// inside the guard: this runs after the verdict, on the success path, and must not turn a
|
|
113
|
+
// passing run into a thrown exception.
|
|
114
|
+
return { recorded: false, finding: proofNotRecordedFinding(packageRoot, path, err) };
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
function recordProof(inputs, packageRoot, path) {
|
|
99
118
|
const { fingerprint, files } = fingerprintPackage(inputs.recipePath, inputs.scannerRoots);
|
|
100
119
|
const record = {
|
|
101
120
|
record_version: 1,
|
|
@@ -111,29 +130,23 @@ export function writeProof(inputs) {
|
|
|
111
130
|
observations: inputs.observations,
|
|
112
131
|
created_at: new Date().toISOString(),
|
|
113
132
|
};
|
|
114
|
-
const
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
why: "The package is no less runnable — but the deploy gate reads the proof, not this output, so without the record the pass cannot be acted on.",
|
|
132
|
-
fix: `Make ${packageRoot} writable and run the validation again.`,
|
|
133
|
-
evidence: { error: String(err) },
|
|
134
|
-
},
|
|
135
|
-
};
|
|
136
|
-
}
|
|
133
|
+
const tmp = `${path}.tmp-${process.pid}`;
|
|
134
|
+
writeFileSync(tmp, `${JSON.stringify(record, null, 2)}\n`, "utf8");
|
|
135
|
+
renameSync(tmp, path);
|
|
136
|
+
return { recorded: true };
|
|
137
|
+
}
|
|
138
|
+
function proofNotRecordedFinding(packageRoot, path, err) {
|
|
139
|
+
return {
|
|
140
|
+
code: VALIDATE_CODE.proofNotRecorded,
|
|
141
|
+
severity: "warning",
|
|
142
|
+
stage: "proof",
|
|
143
|
+
actor: "ops",
|
|
144
|
+
fix_kind: "command",
|
|
145
|
+
what: `The run passed but its proof could not be written to ${path}`,
|
|
146
|
+
why: "The package is no less runnable — but the deploy gate reads the proof, not this output, so without the record the pass cannot be acted on.",
|
|
147
|
+
fix: `Make ${packageRoot} readable and writable, then run the validation again.`,
|
|
148
|
+
evidence: { error: String(err) },
|
|
149
|
+
};
|
|
137
150
|
}
|
|
138
151
|
function readRecord(packageRoot) {
|
|
139
152
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.js","sourceRoot":"","sources":["../../src/validate/proof.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI3C,uFAAuF;AACvF,MAAM,CAAC,MAAM,cAAc,GAAG,mBAAmB,CAAC;AAElD;;;GAGG;AACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC;AACxD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;AACvD,MAAM,iBAAiB,GAAG,CAAC,MAAM,CAAC,CAAC;AAqCnC,SAAS,MAAM,CAAC,IAAqB;IACnC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,2FAA2F;AAC3F,SAAS,IAAI,CAAC,IAAY,EAAE,WAAmB,EAAE,IAAyB;IACxE,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,sFAAsF;IAChG,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QAClC,IAAI,QAAQ,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC;QACT,IAAI,CAAC;YACH,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"proof.js","sourceRoot":"","sources":["../../src/validate/proof.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI3C,uFAAuF;AACvF,MAAM,CAAC,MAAM,cAAc,GAAG,mBAAmB,CAAC;AAElD;;;GAGG;AACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC;AACxD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;AACvD,MAAM,iBAAiB,GAAG,CAAC,MAAM,CAAC,CAAC;AAqCnC,SAAS,MAAM,CAAC,IAAqB;IACnC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,2FAA2F;AAC3F,SAAS,IAAI,CAAC,IAAY,EAAE,WAAmB,EAAE,IAAyB;IACxE,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,sFAAsF;IAChG,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QAClC,IAAI,QAAQ,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC;QACT,IAAI,CAAC;YACH,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;YAC5D,SAAS;QACX,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpE,CAAC;QAAC,MAAM,CAAC;YACP,wFAAwF;YACxF,uFAAuF;YACvF,sFAAsF;YACtF,kEAAkE;QACpE,CAAC;IACH,CAAC;AACH,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,kBAAkB,CAChC,UAAkB,EAClB,YAAsB;IAEtB,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,IAAI,CAAC;QACH,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/E,CAAC;IAAC,MAAM,CAAC;QACP,2FAA2F;IAC7F,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,YAAY;QAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;IACpF,MAAM,MAAM,GAAG,CAAC,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,OAAO;QACL,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC3C,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;KAClC,CAAC;AACJ,CAAC;AASD;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,MAAwB;IACjD,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,OAAO,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,yFAAyF;QACzF,0FAA0F;QAC1F,uCAAuC;QACvC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,uBAAuB,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;IACvF,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAClB,MAAwB,EACxB,WAAmB,EACnB,IAAY;IAEZ,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IAC1F,MAAM,MAAM,GAAgB;QAC1B,cAAc,EAAE,CAAC;QACjB,WAAW;QACX,KAAK;QACL,MAAM,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC;QAChD,aAAa,EAAE,MAAM,CAAC,YAAY;QAClC,eAAe,EAAE,OAAO;QACxB,OAAO,EAAE,MAAM;QACf,GAAG,CAAC,MAAM,CAAC,MAAM;YACf,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE;YACxG,CAAC,CAAC,EAAE,CAAC;QACP,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACrC,CAAC;IAEF,MAAM,GAAG,GAAG,GAAG,IAAI,QAAQ,OAAO,CAAC,GAAG,EAAE,CAAC;IACzC,aAAa,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnE,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACtB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,uBAAuB,CAAC,WAAmB,EAAE,IAAY,EAAE,GAAY;IAC9E,OAAO;QACL,IAAI,EAAE,aAAa,CAAC,gBAAgB;QACpC,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,SAAS;QACnB,IAAI,EAAE,wDAAwD,IAAI,EAAE;QACpE,GAAG,EAAE,4IAA4I;QACjJ,GAAG,EAAE,QAAQ,WAAW,wDAAwD;QAChF,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;KACjC,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,WAAmB;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAgB,CAAC;QAClG,2FAA2F;QAC3F,6FAA6F;QAC7F,mCAAmC;QACnC,IAAI,MAAM,CAAC,cAAc,KAAK,CAAC,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9G,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC,CAAC,+DAA+D;IACnF,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,MAAoB,EAAE,KAAqF;IAC1H,MAAM,IAAI,GACR,MAAM,KAAK,UAAU;QACnB,CAAC,CAAC,aAAa,CAAC,OAAO;QACvB,CAAC,CAAC,MAAM,KAAK,iBAAiB;YAC5B,CAAC,CAAC,aAAa,CAAC,cAAc;YAC9B,CAAC,CAAC,aAAa,CAAC,qBAAqB,CAAC;IAC5C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,CAAC;AACpG,CAAC;AAgBD;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,UAAkB,EAAE,UAAyB,EAAE;IACzE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;IAC1C,MAAM,MAAM,GACV,SAAS,CAAC,MAAM,KAAK,CAAC;QACpB,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC;QAC9B,CAAC,CAAC,eAAe,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC7C,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAO,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,eAAe,CAAC,UAAkB,EAAE,SAAmB;IAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACxC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,MAAM,CAAC,OAAQ,CAAC;YAChC,OAAO;gBACL,GAAG,MAAM;gBACT,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAChE,OAAO,EAAE;oBACP,GAAG,OAAO;oBACV,IAAI,EAAE,aAAa,QAAQ,MAAM,OAAO,CAAC,IAAI,EAAE;oBAC/C,GAAG,EAAE,uBAAuB,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE;iBAC1D;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAkB;IAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACvC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE;gBAC3B,IAAI,EAAE,+CAA+C,WAAW,EAAE;gBAClE,GAAG,EAAE,uKAAuK;gBAC5K,GAAG,EAAE,uBAAuB,WAAW,EAAE;aAC1C,CAAC;SACH,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,kBAAkB,CAChC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAChC,MAAM,CAAC,aAAa,CACrB,CAAC;IAEF,IAAI,OAAO,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI;gBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB;QAC3E,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,oCAAoC;QACtF,CAAC;QACD,MAAM,YAAY,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,iBAAiB;YACzB,YAAY;YACZ,MAAM;YACN,OAAO,EAAE,OAAO,CAAC,iBAAiB,EAAE;gBAClC,IAAI,EAAE,qDAAqD,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,YAAY,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACxK,GAAG,EAAE,yIAAyI;gBAC9I,GAAG,EAAE,uBAAuB,WAAW,EAAE;gBACzC,QAAQ,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE;aACxE,CAAC;SACH,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,eAAe,KAAK,OAAO,EAAE,CAAC;QACvC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,yBAAyB;YACjC,MAAM;YACN,OAAO,EAAE,OAAO,CAAC,yBAAyB,EAAE;gBAC1C,IAAI,EAAE,wCAAwC,MAAM,CAAC,eAAe,aAAa,OAAO,EAAE;gBAC1F,GAAG,EAAE,uJAAuJ;gBAC5J,GAAG,EAAE,uBAAuB,WAAW,EAAE;gBACzC,QAAQ,EAAE,EAAE,YAAY,EAAE,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE;aACrE,CAAC;SACH,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recipe-checks.d.ts","sourceRoot":"","sources":["../../src/validate/recipe-checks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,KAAK,EAAE,OAAO,EAAW,MAAM,YAAY,CAAC;AA0BnD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,EAAE,CAkCpE;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,EAAE,CAoBpE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,EAAE,CAqBtE;AAED,4FAA4F;AAC5F,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,EAAE,CAc3E;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,aAAa,EACrB,kBAAkB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EACvG,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,EACjC,IAAI,EAAE,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,GACnC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"recipe-checks.d.ts","sourceRoot":"","sources":["../../src/validate/recipe-checks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,KAAK,EAAE,OAAO,EAAW,MAAM,YAAY,CAAC;AA0BnD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,EAAE,CAkCpE;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,EAAE,CAoBpE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,EAAE,CAqBtE;AAED,4FAA4F;AAC5F,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,EAAE,CAc3E;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,aAAa,EACrB,kBAAkB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EACvG,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,EACjC,IAAI,EAAE,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,GACnC,OAAO,EAAE,CAyCX"}
|
|
@@ -180,7 +180,10 @@ export function findMissingEntrypoints(config, resolveScannerRoot, exists, join)
|
|
|
180
180
|
findings.push(staticFinding(VALIDATE_CODE.unresolvableScannerPath, "edit", {
|
|
181
181
|
what: `Scanner '${scanner.name}' declares path '${declaredPath}', which cannot be resolved`,
|
|
182
182
|
why: `${resolved.reason} An unresolved relative path is interpreted against whatever directory the runtime happens to be started from, which is rarely the one you meant.`,
|
|
183
|
-
|
|
183
|
+
// Two callers reach this finding and the remedy differs: `senpi validate` wants a
|
|
184
|
+
// target with a directory, the gateway install wants the dir forwarded alongside the
|
|
185
|
+
// inline YAML. Naming both beats a fix that is only correct for one of them.
|
|
186
|
+
fix: "Give the path something to resolve against: make it absolute, or supply the recipe's directory — `--dir` when validating inline content, `runtimeYamlDir` when installing it through the gateway. Validating a package directory rather than pasted text gets this for free.",
|
|
184
187
|
where: { yaml_path: `scanners.${index}.path` },
|
|
185
188
|
evidence: { declared_path: declaredPath, scanner: scanner.name },
|
|
186
189
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recipe-checks.js","sourceRoot":"","sources":["../../src/validate/recipe-checks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"recipe-checks.js","sourceRoot":"","sources":["../../src/validate/recipe-checks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/validate/report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,uDAAuD;AACvD,wBAAgB,UAAU,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAEzD;AAWD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAYtD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/validate/report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE/C,uDAAuD;AACvD,wBAAgB,UAAU,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAEzD;AAWD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAYtD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAiC1D"}
|
package/dist/validate/report.js
CHANGED
|
@@ -63,7 +63,9 @@ export function renderHuman(result) {
|
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
const verdictLine = result.verdict === "PASS"
|
|
66
|
-
|
|
66
|
+
// proof_eligible says a proof was WARRANTED; proof_recorded says one LANDED. Keying on the
|
|
67
|
+
// first prints "proof recorded" directly above the finding reporting that it was not.
|
|
68
|
+
? ` PASS${result.proof_recorded ? " · proof recorded" : ""}`
|
|
67
69
|
: ` ${result.verdict} (exit ${result.exit_code})`;
|
|
68
70
|
lines.push(verdictLine);
|
|
69
71
|
const basis = result.verdict_basis;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/validate/report.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/validate/report.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/validate/run.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,EAAkC,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAEtF,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;AAEnD,qGAAqG;AACrG,MAAM,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAErC,MAAM,WAAW,eAAe;IAC9B,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC;IACb,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,yFAAyF;IACzF,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE;QACN,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IACF,UAAU,EAAE,KAAK,EAAE,CAAC;IACpB,aAAa,EAAE,YAAY,CAAC;IAC5B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,oFAAoF;IACpF,cAAc,EAAE,OAAO,CAAC;IACxB,iFAAiF;IACjF,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAwDD,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAEnD;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAOrF;
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/validate/run.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH,OAAO,EAAkC,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAEtF,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;AAEnD,qGAAqG;AACrG,MAAM,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAErC,MAAM,WAAW,eAAe;IAC9B,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC;IACb,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,yFAAyF;IACzF,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,QAAQ,CAAC;IACpB,MAAM,EAAE;QACN,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IACF,UAAU,EAAE,KAAK,EAAE,CAAC;IACpB,aAAa,EAAE,YAAY,CAAC;IAC5B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,oFAAoF;IACpF,cAAc,EAAE,OAAO,CAAC;IACxB,iFAAiF;IACjF,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAwDD,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAEnD;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAOrF;AA8RD;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACjC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAuB7E;AAiGD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC7C,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAER;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,EAAE,CAQjF"}
|
package/dist/validate/run.js
CHANGED
|
@@ -9,7 +9,7 @@ import { existsSync } from "node:fs";
|
|
|
9
9
|
import { dirname, relative, resolve } from "node:path";
|
|
10
10
|
import { VALIDATE_CODE } from "./codes.js";
|
|
11
11
|
import { checkScanner, resolveRoot } from "./import-stage.js";
|
|
12
|
-
import { judgeTick, runTick } from "./live-stage.js";
|
|
12
|
+
import { judgeTick, productionBudgetSeconds, runTick } from "./live-stage.js";
|
|
13
13
|
import { recordValidateRun } from "../telemetry/metrics.js";
|
|
14
14
|
import { writeProof } from "./proof.js";
|
|
15
15
|
import { resolveWallet, walletClaim } from "./wallet.js";
|
|
@@ -101,7 +101,12 @@ async function runValidationInner(options) {
|
|
|
101
101
|
if (!resolution.ok)
|
|
102
102
|
return invocationFailure(resolution.finding);
|
|
103
103
|
const target = resolution.target;
|
|
104
|
-
|
|
104
|
+
// Only the depths that mean something for THIS target. The static depth is entirely about the
|
|
105
|
+
// recipe — every check it makes starts from a parsed config — so for a bare scanner directory or
|
|
106
|
+
// a single entrypoint it is not passing, it does not apply. The resolver already says which
|
|
107
|
+
// depths a target admits; running one it excluded produced a `✓ static` for work never done, and
|
|
108
|
+
// a claim about "the recipe" where no recipe exists.
|
|
109
|
+
const requested = depthsUpTo(options.depth).filter((d) => target.allowedDepths.includes(d));
|
|
105
110
|
const stagesRun = [];
|
|
106
111
|
const findings = [];
|
|
107
112
|
// Carried between depths so the import stage knows which scanners the recipe declared, rather
|
|
@@ -257,17 +262,29 @@ prior) {
|
|
|
257
262
|
const observations = [];
|
|
258
263
|
for (const scanner of targets) {
|
|
259
264
|
const declared = (config?.scanners ?? []).find((s) => s.name === scanner.name);
|
|
265
|
+
const declaredTimeout = declared?.timeout_seconds;
|
|
266
|
+
const intervalSeconds = declared?.interval_seconds ?? 60;
|
|
267
|
+
const validateSeconds = tickBudgetSeconds(declared, options.timeoutSeconds);
|
|
260
268
|
const outcome = await runTick({
|
|
261
269
|
scanner,
|
|
262
270
|
wallet,
|
|
263
|
-
timeoutSeconds:
|
|
264
|
-
intervalSeconds
|
|
271
|
+
timeoutSeconds: validateSeconds,
|
|
272
|
+
intervalSeconds,
|
|
265
273
|
defaultSignalValiditySeconds: declared?.default_signal_validity_seconds ?? 600,
|
|
266
274
|
inputs: declared?.inputs,
|
|
267
275
|
signalDataSchema: declared?.signal_data_schema,
|
|
268
276
|
stateHistoryMaxCount: declared?.state_history_max_count,
|
|
269
277
|
});
|
|
270
|
-
findings.push(...judgeTick(scanner, outcome, {
|
|
278
|
+
findings.push(...judgeTick(scanner, outcome, {
|
|
279
|
+
nonMcpSources,
|
|
280
|
+
budget: {
|
|
281
|
+
validateSeconds,
|
|
282
|
+
productionSeconds: productionBudgetSeconds(declaredTimeout, intervalSeconds),
|
|
283
|
+
// An explicit --timeout is the caller's number, not the recipe's, so the two budgets
|
|
284
|
+
// only genuinely agree when the recipe itself declared one and nothing overrode it.
|
|
285
|
+
declared: declaredTimeout !== undefined && options.timeoutSeconds === undefined,
|
|
286
|
+
},
|
|
287
|
+
}));
|
|
271
288
|
observations.push({
|
|
272
289
|
scanner: scanner.name,
|
|
273
290
|
reads_ok: outcome.reads_ok ?? 0,
|
|
@@ -350,19 +367,29 @@ function assemble(target, stagesRun, findings, options, wallet, liveExecuted) {
|
|
|
350
367
|
// author-written scanner reaches this depth and executes nothing — claiming it "ticked and
|
|
351
368
|
// emitted" would be a green result asserting things it never checked, which is the precise
|
|
352
369
|
// failure this command exists to correct. The claim states the absence instead.
|
|
353
|
-
|
|
370
|
+
// A code-only target never had a recipe, so the import claim must not describe one.
|
|
371
|
+
const codeOnly = target.recipePath === undefined && target.recipeContent === undefined;
|
|
372
|
+
const claims = deepest === "import" && codeOnly
|
|
354
373
|
? {
|
|
355
|
-
proves: "
|
|
374
|
+
proves: "every scanner file compiles, and the entrypoint imports and exposes scan(inputs, ctx)",
|
|
356
375
|
doesNotProve: [
|
|
357
|
-
"anything about
|
|
358
|
-
"
|
|
376
|
+
"anything about a recipe — none was supplied with this target",
|
|
377
|
+
"that a tick executes",
|
|
359
378
|
],
|
|
360
379
|
}
|
|
361
|
-
: deepest === "live" &&
|
|
362
|
-
?
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
380
|
+
: deepest === "live" && liveExecuted === 0
|
|
381
|
+
? {
|
|
382
|
+
proves: "the recipe is well formed and every scanner it declares is runtime-provided — there is no author-written code in this package to execute",
|
|
383
|
+
doesNotProve: [
|
|
384
|
+
"anything about author code, since none exists here",
|
|
385
|
+
"runtime-provided scanners, which are covered by the runtime's own tests rather than by this run",
|
|
386
|
+
],
|
|
387
|
+
}
|
|
388
|
+
: deepest === "live" && wallet !== undefined
|
|
389
|
+
? walletClaim(wallet)
|
|
390
|
+
: deepest
|
|
391
|
+
? DEPTH_CLAIMS[deepest]
|
|
392
|
+
: undefined;
|
|
366
393
|
const basis = {
|
|
367
394
|
rule: strict
|
|
368
395
|
? "a pass requires no findings of any severity"
|