mirror of
https://github.com/morluto/rea.git
synced 2026-11-03 21:36:13 +00:00
feat(mcp): support runtime analysis limit recovery (#7049)
* feat(mcp): support runtime analysis limit recovery * refactor(config): remove unused limit re-exports * fix(android): keep fixture release metadata dependency-free * fix(settings): preserve provider budgets and recovery facts * fix(tests): resolve lint plugins from their repository owner * refactor(mcp): verify guidance delivery without frozen wording * fix(android): align availability with runtime timeout * test(recovery): assert limit facts instead of frozen wording * fix(mcp): share runtime settings with the default JADX provider * test(mcp): bound acknowledgements and release held work on failure * fix(catalog): declare runtime settings tools as MCP-only
This commit is contained in:
1 parent
ab720b4216
commit
f3ed1657f8
120 files changed
+2899
-884
No files matched your search
@@ -1,3 +1,4 @@
|
||||
import type { AnalysisSettingsReader } from "../../domain/analysisSettings.js";
|
||||
import {
|
||||
ASAR_HEADER_ADMISSION_SETTING,
|
||||
parseAsarHeaderAdmission,
|
||||
@@ -39,6 +40,7 @@ const OPERATION = "analyze_javascript_application" as const;
|
||||
|
||||
/** Execution options plus the composition root's environment for admission settings. */
|
||||
export interface JavaScriptApplicationOptions extends ExecutionOptions {
|
||||
readonly settings?: AnalysisSettingsReader;
|
||||
readonly environment?: Readonly<Record<string, string | undefined>>;
|
||||
}
|
||||
|
||||
@@ -67,6 +69,12 @@ export const analyzeJavaScriptApplicationValidated = async (
|
||||
options.environment?.[ASAR_HEADER_ADMISSION_SETTING],
|
||||
);
|
||||
if (!asarHeaderAdmission.ok) return asarHeaderAdmission;
|
||||
const overrides = options.settings?.().overrides;
|
||||
const header = overrides?.["asar.max_header_bytes"];
|
||||
const acceptedAdmission =
|
||||
header === undefined
|
||||
? asarHeaderAdmission.value
|
||||
: { maximumBytes: header, source: "runtime" as const };
|
||||
let reconstructed: JavaScriptArtifactReconstructionResult | undefined;
|
||||
let result: JavaScriptApplicationAnalysisResult | undefined;
|
||||
let evidence: Evidence | undefined;
|
||||
@@ -84,7 +92,8 @@ export const analyzeJavaScriptApplicationValidated = async (
|
||||
scope,
|
||||
options.signal,
|
||||
options.progress,
|
||||
asarHeaderAdmission.value,
|
||||
acceptedAdmission,
|
||||
overrides,
|
||||
);
|
||||
const { electron_summary: summary, ...application } = reconstructed;
|
||||
await options.progress?.report({
|
||||
|
||||
Reference in new issue
Block a user