ue-mcp 1.3.10-beta.7 → 1.3.10-beta.8

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.
@@ -61,7 +61,7 @@ export const LOCAL_ACTIONS = {
61
61
  // Process lifecycle. Starting an editor is the one thing that must work
62
62
  // without one, and building requires the editor to be stopped.
63
63
  "editor.start_editor": "Launches the editor process, then waits for its bridge. It exists for the case where nothing is running.",
64
- "editor.stop_editor": "Asks the editor that published this project's port lockfile to quit. With no lockfile it refuses and names the file it checked.",
64
+ "editor.stop_editor": "Asks the editor that published this project's port lockfile to quit. With no lockfile it refuses and names the file it checked. With no editor of this project left running, it ends a crash reporter a crashed one left holding the project's binaries.",
65
65
  "editor.restart_editor": "Stops whatever holds this project open and starts it again.",
66
66
  "editor.get_engine_state": "Probes the process table, the editor's log and the plugin's status file from outside. The bridge is consulted only when it is already connected.",
67
67
  "editor.build_project": "Runs UnrealBuildTool out of process, which requires the editor to be STOPPED because it cannot link while an editor holds the module DLLs.",
@@ -1 +1 @@
1
- {"version":3,"file":"offline.js","sourceRoot":"","sources":["../../src/dispatch/offline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"offline.js","sourceRoot":"","sources":["../../src/dispatch/offline.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import { type CrashReporterProcess } from "./engine-observer.js";
2
+ export interface CrashReporterMatch {
3
+ pid: number;
4
+ image: string;
5
+ /** Why it was judged to belong to this project. */
6
+ reason: string;
7
+ }
8
+ export interface CrashReporterFailure extends CrashReporterMatch {
9
+ error: string;
10
+ }
11
+ export interface CrashReporterCleanup {
12
+ ended: CrashReporterMatch[];
13
+ failed: CrashReporterFailure[];
14
+ /** Set when the process or file-holder probe could not run, so nothing was judged. */
15
+ probeError?: string;
16
+ }
17
+ /** Everything the cleanup touches outside this module, injectable for tests. */
18
+ export interface CrashReporterDeps {
19
+ platform: NodeJS.Platform;
20
+ listCrashReporters: () => Promise<CrashReporterProcess[]>;
21
+ /** Pids of every running UnrealEditor process, any project. */
22
+ listLiveEditorPids: () => Promise<Set<number>>;
23
+ listModuleBinaries: (projectDir: string) => string[];
24
+ findHolders: (files: string[]) => Promise<Map<number, string>>;
25
+ /** End the process and resolve once it has exited; reject if it did not. */
26
+ terminate: (pid: number) => Promise<void>;
27
+ }
28
+ /** The editor pid a crash reporter was launched to watch, from `-MONITOR=<pid>`. */
29
+ export declare function monitoredPid(commandLine: string): number | null;
30
+ /** Does this command line name a path inside `projectDir`? */
31
+ export declare function commandLineNamesDir(commandLine: string, projectDir: string): boolean;
32
+ /**
33
+ * Split crash reporters into the ones that belong to this project and the rest.
34
+ * Pure, so the rule can be tested without a process table.
35
+ *
36
+ * A reporter watching an editor that is still running is left alone whatever
37
+ * it names: it is serving that editor, not left over from a crash. Otherwise it
38
+ * belongs to this project when its command line names a path inside the
39
+ * project directory, or when it holds one of the project's binaries open.
40
+ * `holders` may be null when that probe was not needed.
41
+ */
42
+ export declare function selectProjectCrashReporters(reporters: CrashReporterProcess[], projectDir: string, liveEditorPids: Set<number>, holders: Map<number, string> | null): CrashReporterMatch[];
43
+ /** Every module binary under the project's and its plugins' Binaries folders. */
44
+ export declare function listProjectModuleBinaries(projectDir: string): string[];
45
+ /**
46
+ * Find and end every crash reporter that belongs to this project.
47
+ *
48
+ * Never throws: a stop must not turn into an error because this could not look.
49
+ * A probe that failed is reported under `probeError` rather than as "none".
50
+ */
51
+ export declare function endProjectCrashReporters(projectDir: string | null | undefined, overrides?: Partial<CrashReporterDeps>): Promise<CrashReporterCleanup>;
52
+ /** One sentence for a stop's message, or "" when there is nothing to say. */
53
+ export declare function describeCrashReporterCleanup(cleanup: CrashReporterCleanup): string;
54
+ /** Whether a cleanup has anything worth putting in a result. */
55
+ export declare function crashReporterCleanupIsEmpty(cleanup: CrashReporterCleanup): boolean;
@@ -0,0 +1,190 @@
1
+ /**
2
+ * Crash reporters a crashed editor of this project left behind.
3
+ *
4
+ * When an editor crashes on Windows, CrashReportClientEditor.exe stays up and
5
+ * keeps the project's module binaries open, so the next UnrealBuildTool link
6
+ * fails with LNK1104 although no editor is running. stop_editor ends the ones
7
+ * that belong to this project, and only those: a crash reporter still serving
8
+ * a live editor, or one tied to another project, is never touched.
9
+ */
10
+ import * as fs from "node:fs";
11
+ import * as path from "node:path";
12
+ import { isPidAlive } from "../bridge/editor-target.js";
13
+ import { findFileHolders, listCrashReporterProcesses, listEditorProcesses, } from "./engine-observer.js";
14
+ /** The editor pid a crash reporter was launched to watch, from `-MONITOR=<pid>`. */
15
+ export function monitoredPid(commandLine) {
16
+ const m = /-MONITOR=(\d+)/i.exec(commandLine);
17
+ return m ? Number(m[1]) : null;
18
+ }
19
+ function normalise(p) {
20
+ return p.replace(/\\/g, "/").replace(/\/+/g, "/").replace(/\/$/, "").toLowerCase();
21
+ }
22
+ /** Does this command line name a path inside `projectDir`? */
23
+ export function commandLineNamesDir(commandLine, projectDir) {
24
+ const cmd = normalise(commandLine);
25
+ // Not path.resolve: the paths are Windows ones, and tests run on any host.
26
+ const dir = normalise(projectDir);
27
+ if (dir.length === 0)
28
+ return false;
29
+ for (let at = cmd.indexOf(dir); at >= 0; at = cmd.indexOf(dir, at + 1)) {
30
+ const next = cmd[at + dir.length];
31
+ if (next === undefined || next === "/" || /[\s"']/.test(next))
32
+ return true;
33
+ }
34
+ return false;
35
+ }
36
+ /**
37
+ * Split crash reporters into the ones that belong to this project and the rest.
38
+ * Pure, so the rule can be tested without a process table.
39
+ *
40
+ * A reporter watching an editor that is still running is left alone whatever
41
+ * it names: it is serving that editor, not left over from a crash. Otherwise it
42
+ * belongs to this project when its command line names a path inside the
43
+ * project directory, or when it holds one of the project's binaries open.
44
+ * `holders` may be null when that probe was not needed.
45
+ */
46
+ export function selectProjectCrashReporters(reporters, projectDir, liveEditorPids, holders) {
47
+ const matches = [];
48
+ for (const r of reporters) {
49
+ const watched = monitoredPid(r.commandLine);
50
+ if (watched !== null && liveEditorPids.has(watched))
51
+ continue;
52
+ if (commandLineNamesDir(r.commandLine, projectDir)) {
53
+ matches.push({ pid: r.pid, image: r.image, reason: `its command line names a path under ${projectDir}` });
54
+ continue;
55
+ }
56
+ const held = holders?.get(r.pid);
57
+ if (held)
58
+ matches.push({ pid: r.pid, image: r.image, reason: `it holds ${held} open` });
59
+ }
60
+ return matches;
61
+ }
62
+ const SKIP_DIRS = new Set(["intermediate", "content", "source", "saved", "resources", "config", ".git", "node_modules"]);
63
+ const BINARY_EXT = /\.(dll|pdb)$/i;
64
+ /** Every module binary under the project's and its plugins' Binaries folders. */
65
+ export function listProjectModuleBinaries(projectDir) {
66
+ const found = [];
67
+ const collect = (dir, depth) => {
68
+ if (depth > 4)
69
+ return;
70
+ let entries;
71
+ try {
72
+ entries = fs.readdirSync(dir, { withFileTypes: true });
73
+ }
74
+ catch {
75
+ return;
76
+ }
77
+ for (const e of entries) {
78
+ const full = path.join(dir, e.name);
79
+ if (e.isDirectory())
80
+ collect(full, depth + 1);
81
+ else if (BINARY_EXT.test(e.name))
82
+ found.push(full);
83
+ }
84
+ };
85
+ const walk = (dir, depth) => {
86
+ if (depth > 6)
87
+ return;
88
+ let entries;
89
+ try {
90
+ entries = fs.readdirSync(dir, { withFileTypes: true });
91
+ }
92
+ catch {
93
+ return;
94
+ }
95
+ for (const e of entries) {
96
+ if (!e.isDirectory())
97
+ continue;
98
+ const lower = e.name.toLowerCase();
99
+ const full = path.join(dir, e.name);
100
+ if (lower === "binaries")
101
+ collect(full, 0);
102
+ else if (!SKIP_DIRS.has(lower))
103
+ walk(full, depth + 1);
104
+ }
105
+ };
106
+ collect(path.join(projectDir, "Binaries"), 0);
107
+ walk(path.join(projectDir, "Plugins"), 0);
108
+ return found;
109
+ }
110
+ /** End a process and wait for it to leave the process table. */
111
+ async function terminateAndWait(pid) {
112
+ // lint-prose-allow: no-kill only a crash reporter of this project whose editor is gone, never an editor
113
+ process.kill(pid);
114
+ for (let i = 0; i < 30; i++) {
115
+ if (!isPidAlive(pid))
116
+ return;
117
+ await new Promise((resolve) => setTimeout(resolve, 100));
118
+ }
119
+ throw new Error(`pid ${pid} was still running 3s after it was ended`);
120
+ }
121
+ const defaultDeps = {
122
+ platform: process.platform,
123
+ listCrashReporters: listCrashReporterProcesses,
124
+ listLiveEditorPids: async () => new Set((await listEditorProcesses()).map((p) => p.pid)),
125
+ listModuleBinaries: listProjectModuleBinaries,
126
+ findHolders: findFileHolders,
127
+ terminate: terminateAndWait,
128
+ };
129
+ /**
130
+ * Find and end every crash reporter that belongs to this project.
131
+ *
132
+ * Never throws: a stop must not turn into an error because this could not look.
133
+ * A probe that failed is reported under `probeError` rather than as "none".
134
+ */
135
+ export async function endProjectCrashReporters(projectDir, overrides = {}) {
136
+ const deps = { ...defaultDeps, ...overrides };
137
+ const result = { ended: [], failed: [] };
138
+ if (deps.platform !== "win32" || !projectDir)
139
+ return result;
140
+ let matches;
141
+ try {
142
+ const reporters = await deps.listCrashReporters();
143
+ if (reporters.length === 0)
144
+ return result;
145
+ const live = await deps.listLiveEditorPids();
146
+ const byCommandLine = selectProjectCrashReporters(reporters, projectDir, live, null);
147
+ // The file-holder probe is the expensive one, so it runs only for
148
+ // reporters the command line did not already settle.
149
+ const undecided = reporters.filter((r) => {
150
+ const watched = monitoredPid(r.commandLine);
151
+ return !byCommandLine.some((m) => m.pid === r.pid) && !(watched !== null && live.has(watched));
152
+ });
153
+ const holders = undecided.length > 0 ? await deps.findHolders(deps.listModuleBinaries(projectDir)) : null;
154
+ matches = selectProjectCrashReporters(reporters, projectDir, live, holders);
155
+ }
156
+ catch (err) {
157
+ return { ...result, probeError: err instanceof Error ? err.message : String(err) };
158
+ }
159
+ for (const m of matches) {
160
+ try {
161
+ await deps.terminate(m.pid);
162
+ result.ended.push(m);
163
+ }
164
+ catch (err) {
165
+ result.failed.push({ ...m, error: err instanceof Error ? err.message : String(err) });
166
+ }
167
+ }
168
+ return result;
169
+ }
170
+ /** One sentence for a stop's message, or "" when there is nothing to say. */
171
+ export function describeCrashReporterCleanup(cleanup) {
172
+ const parts = [];
173
+ if (cleanup.ended.length > 0) {
174
+ parts.push(`Ended ${cleanup.ended.length} crash reporter${cleanup.ended.length === 1 ? "" : "s"} a crashed editor of this ` +
175
+ `project left running, which would have kept its binaries locked against the next build: ${cleanup.ended.map((m) => `${m.image} pid ${m.pid} (${m.reason})`).join("; ")}.`);
176
+ }
177
+ if (cleanup.failed.length > 0) {
178
+ parts.push(`Could not end ${cleanup.failed.map((m) => `${m.image} pid ${m.pid} (${m.reason}): ${m.error}`).join("; ")}. ` +
179
+ "Close its window before building, or the link fails with LNK1104.");
180
+ }
181
+ if (cleanup.probeError) {
182
+ parts.push(`Could not check for a leftover crash reporter: ${cleanup.probeError}.`);
183
+ }
184
+ return parts.join(" ");
185
+ }
186
+ /** Whether a cleanup has anything worth putting in a result. */
187
+ export function crashReporterCleanupIsEmpty(cleanup) {
188
+ return cleanup.ended.length === 0 && cleanup.failed.length === 0 && !cleanup.probeError;
189
+ }
190
+ //# sourceMappingURL=crash-reporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crash-reporter.js","sourceRoot":"","sources":["../../src/editor/crash-reporter.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ export interface BuildResult {
2
2
  success: boolean;
3
3
  message: string;
4
4
  exitCode: number | null;
5
+ /** Outputs the link could not write because another process held them open. */
6
+ lockedOutputs?: LockedOutput[];
5
7
  }
6
8
  /**
7
9
  * How many compiles this machine can run at once without running out of room.
@@ -27,6 +29,23 @@ export declare function safeParallelActions(totalMemBytes?: number, cores?: numb
27
29
  export declare function ranOutOfMemory(output: string): boolean;
28
30
  /** What to tell somebody whose build ran out of room, in the terms they hit it in. */
29
31
  export declare function describeMemoryFailure(parallel: number, totalMemBytes?: number): string;
32
+ /** A file the build could not write because another process had it open. */
33
+ export interface LockedOutput {
34
+ file: string;
35
+ /** The process holding it, as the build tool named it, or null when it did not. */
36
+ holder: string | null;
37
+ }
38
+ /**
39
+ * Every output the link could not write because something held it open.
40
+ *
41
+ * UnrealBuildAccelerator names the holder on its own line ("ERROR opening file
42
+ * X for write ... being used by another process. - <holder exe>"); the linker
43
+ * only says LNK1104 and the file. Both are read, one entry per file, preferring
44
+ * the line that names a holder.
45
+ */
46
+ export declare function findLockedOutputs(output: string): LockedOutput[];
47
+ /** What to tell somebody whose link failed on a locked file, naming the holder. */
48
+ export declare function describeLockedOutputs(code: number | null, locked: LockedOutput[]): string;
30
49
  export interface BuildOptions {
31
50
  /**
32
51
  * Receives the compiler output. Omitted, the output is dropped: stdout is the
@@ -94,6 +94,62 @@ export function describeMemoryFailure(parallel, totalMemBytes = os.totalmem()) {
94
94
  + "precompiled header. Lower it further with UE_MCP_MAX_PARALLEL_ACTIONS, or give Windows a "
95
95
  + "larger paging file, and run the build again.");
96
96
  }
97
+ /**
98
+ * Every output the link could not write because something held it open.
99
+ *
100
+ * UnrealBuildAccelerator names the holder on its own line ("ERROR opening file
101
+ * X for write ... being used by another process. - <holder exe>"); the linker
102
+ * only says LNK1104 and the file. Both are read, one entry per file, preferring
103
+ * the line that names a holder.
104
+ */
105
+ export function findLockedOutputs(output) {
106
+ const byFile = new Map();
107
+ const add = (file, holder) => {
108
+ const key = file.replace(/\\/g, "/").toLowerCase();
109
+ const known = byFile.get(key);
110
+ if (!known)
111
+ byFile.set(key, { file, holder });
112
+ else if (!known.holder && holder)
113
+ known.holder = holder;
114
+ };
115
+ for (const line of output.split(/\r?\n/)) {
116
+ const uba = /opening file\s+['"]?(.+?)['"]?\s+for write\b.*being used by another process\.?\s*-\s*(.+?)\)?\s*$/i.exec(line);
117
+ if (uba) {
118
+ add(uba[1].trim(), uba[2].trim().replace(/[).]+$/, "") || null);
119
+ continue;
120
+ }
121
+ const lnk = /LNK1104:\s*cannot open file\s+'([^']+)'/i.exec(line);
122
+ if (lnk)
123
+ add(lnk[1].trim(), null);
124
+ }
125
+ return [...byFile.values()];
126
+ }
127
+ /** What to tell somebody whose link failed on a locked file, naming the holder. */
128
+ export function describeLockedOutputs(code, locked) {
129
+ const detail = locked
130
+ .map((l) => `${l.file} is held open by ${l.holder ?? "another process the build did not name"}`)
131
+ .join("; ");
132
+ // Split on both separators: the path is a Windows one whatever this runs on.
133
+ const holders = locked.map((l) => (l.holder ?? "").split(/[\\/]/).pop().toLowerCase());
134
+ let remedy;
135
+ if (holders.some((h) => h.startsWith("crashreportclient"))) {
136
+ remedy =
137
+ "That is the crash reporter a crashed editor left behind. Run editor(action='stop_editor'), which ends a " +
138
+ "crash reporter belonging to this project, then build again.";
139
+ }
140
+ else if (holders.some((h) => h.startsWith("unrealeditor"))) {
141
+ remedy = "An editor still has the module loaded. Stop it with editor(action='stop_editor'), then build again.";
142
+ }
143
+ else if (holders.every((h) => h === "")) {
144
+ remedy =
145
+ "Run editor(action='stop_editor'), which stops this project's editor and ends a crash reporter a crashed " +
146
+ "editor left holding its binaries, then build again. If it still fails, close whatever process has that file open.";
147
+ }
148
+ else {
149
+ remedy = "Close that process, then build again.";
150
+ }
151
+ return `Build failed with exit code ${code}: the link could not write its output. ${detail}. ${remedy}`;
152
+ }
97
153
  /**
98
154
  * Compile a project's C++ out of process, with UnrealBuildTool.
99
155
  *
@@ -173,15 +229,21 @@ export async function buildProject(projectPath, opts = {}) {
173
229
  // making the next get_status report a binary that no longer exists.
174
230
  // Only this project's: a build in one editor says nothing about another.
175
231
  invalidatePluginFreshness(resolvedPath);
176
- resolve(code === 0
177
- ? { success: true, exitCode: 0, message: `Build succeeded (${target} ${platform} ${configuration})` }
178
- : {
179
- success: false,
180
- exitCode: code,
181
- message: ranOutOfMemory(transcript)
182
- ? describeMemoryFailure(parallel)
232
+ if (code === 0) {
233
+ resolve({ success: true, exitCode: 0, message: `Build succeeded (${target} ${platform} ${configuration})` });
234
+ return;
235
+ }
236
+ const locked = ranOutOfMemory(transcript) ? [] : findLockedOutputs(transcript);
237
+ resolve({
238
+ success: false,
239
+ exitCode: code,
240
+ message: ranOutOfMemory(transcript)
241
+ ? describeMemoryFailure(parallel)
242
+ : locked.length > 0
243
+ ? describeLockedOutputs(code, locked)
183
244
  : `Build failed with exit code ${code}`,
184
- });
245
+ ...(locked.length > 0 ? { lockedOutputs: locked } : {}),
246
+ });
185
247
  });
186
248
  proc.on("error", (err) => {
187
249
  resolve({ success: false, exitCode: null, message: `Build error: ${err.message}` });
@@ -1 +1 @@
1
- {"version":3,"file":"editor-build.js","sourceRoot":"","sources":["../../src/editor/editor-build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-build.js","sourceRoot":"","sources":["../../src/editor/editor-build.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { type ProjectContext } from "../config/project.js";
2
2
  import { type EngineState } from "./engine-observer.js";
3
3
  import type { ProgressDisplay, ProgressFn } from "../core/types.js";
4
+ import { type CrashReporterCleanup, type CrashReporterDeps } from "./crash-reporter.js";
4
5
  /**
5
6
  * Is anything answering on this port? Exported so a session can be reported as
6
7
  * reachable or not without opening a bridge connection to find out (#817).
@@ -211,6 +212,10 @@ export interface StopEditorResult {
211
212
  pid: number;
212
213
  port: number;
213
214
  }>;
215
+ /** Crash reporters of this project a crashed editor left holding its
216
+ * binaries, and what was done about them. Present only when there is
217
+ * something to report. */
218
+ crashReporters?: CrashReporterCleanup;
214
219
  }
215
220
  /**
216
221
  * What a restart returns: the start half's result, unchanged.
@@ -288,6 +293,8 @@ export declare function stopEditor(projectDir?: string, opts?: {
288
293
  * milliseconds instead of half a minute. Production passes nothing.
289
294
  */
290
295
  confirmPollMs?: number;
296
+ /** Seams for the crash reporter cleanup, for tests. Production passes nothing. */
297
+ crashReporters?: Partial<CrashReporterDeps>;
291
298
  }): Promise<StopEditorResult>;
292
299
  export declare function restartEditor(project: ProjectContext, bridge?: {
293
300
  connect: (timeoutMs?: number) => Promise<void>;
@@ -9,6 +9,7 @@ import { findLiveInstanceRecord, isPidAlive, lockfileIsFromThisLaunch, readBridg
9
9
  import { oneLine } from "./dialog-guard.js";
10
10
  import { findUProject } from "../config/uproject-path.js";
11
11
  import { readEnv } from "../core/env.js";
12
+ import { crashReporterCleanupIsEmpty, describeCrashReporterCleanup, endProjectCrashReporters, } from "./crash-reporter.js";
12
13
  const NO_EDITOR_BINARY_MSG = "Unreal Editor executable not found. Set UE_EDITOR_PATH to the editor binary (on macOS that is inside UnrealEditor.app/Contents/MacOS/), or install the engine to a default location.";
13
14
  /**
14
15
  * The editor binary this project launches, or null.
@@ -697,6 +698,17 @@ export async function resolveOwnedEditor(projectDir, projectPath, connected) {
697
698
  "for this project republishes it.",
698
699
  };
699
700
  }
701
+ /**
702
+ * End any crash reporter a crashed editor of this project left behind, and fold
703
+ * what happened into the stop's result. Runs only once no editor of this
704
+ * project is left to serve: after a stop, or when there was nothing to stop.
705
+ */
706
+ async function withCrashReporterCleanup(result, projectDir, deps) {
707
+ const cleanup = await endProjectCrashReporters(projectDir, deps);
708
+ if (crashReporterCleanupIsEmpty(cleanup))
709
+ return result;
710
+ return { ...result, message: `${result.message} ${describeCrashReporterCleanup(cleanup)}`, crashReporters: cleanup };
711
+ }
700
712
  /**
701
713
  * What this tool will and will not do to a process that is not closing.
702
714
  *
@@ -826,12 +838,17 @@ export async function stopEditor(projectDir, opts = {}) {
826
838
  // without anybody parsing the sentence, and so a flow step that expects it
827
839
  // can absorb it with `ignore_failure: true` instead of this call pretending
828
840
  // it quit something.
829
- return {
841
+ const refusal = {
830
842
  success: false,
831
843
  ...(ownership.alreadyStopped ? { alreadyStopped: true } : {}),
832
844
  message: ownership.message,
833
845
  ...(ownership.state ? { state: ownership.state } : {}),
834
846
  };
847
+ // Nothing of this project is running, which is exactly when a crash
848
+ // reporter left over from a crash is still holding its binaries.
849
+ return ownership.alreadyStopped
850
+ ? withCrashReporterCleanup(refusal, projectDir, opts.crashReporters)
851
+ : refusal;
835
852
  }
836
853
  const port = ownership.port;
837
854
  const host = bridgeHost(projectDir);
@@ -840,7 +857,7 @@ export async function stopEditor(projectDir, opts = {}) {
840
857
  // Same reason, one branch later: a published port with no listener and no
841
858
  // editor process holding the project means the editor this call would have
842
859
  // stopped is already gone, so nothing was quit and the marker says why.
843
- return { success: false, alreadyStopped: true, message: "Editor is not running" };
860
+ return withCrashReporterCleanup({ success: false, alreadyStopped: true, message: "Editor is not running" }, projectDir, opts.crashReporters);
844
861
  }
845
862
  if (!bridgeUp) {
846
863
  // "Unreachable" is where the user is left guessing, so say what the engine
@@ -954,7 +971,7 @@ export async function stopEditor(projectDir, opts = {}) {
954
971
  const remainingNote = remaining.length === 0
955
972
  ? ""
956
973
  : ` ${remaining.length} other editor${remaining.length === 1 ? "" : "s"} of this project ${remaining.length === 1 ? "is" : "are"} still running (${remaining.map((r) => `pid ${r.pid} on port ${r.port}`).join(", ")}). This call closed one editor, the one ${ownership.source === "connected-session" ? "the bridge session was connected to" : "this project's lockfile named"}. Stop ${remaining.length === 1 ? "it" : "them"} by targeting ${remaining.length === 1 ? "its" : "their"} own editor session.`;
957
- return {
974
+ return withCrashReporterCleanup({
958
975
  success: true,
959
976
  message: "Editor quit itself via the bridge." +
960
977
  (ownership.healed ? ` ${ownership.healed}` : "") +
@@ -963,7 +980,7 @@ export async function stopEditor(projectDir, opts = {}) {
963
980
  // Reported whenever a dialog was in the way, including when answering
964
981
  // it is what let the stop through, so the caller can always see which
965
982
  // mode applied and why.
966
- };
983
+ }, projectDir, opts.crashReporters);
967
984
  }
968
985
  }
969
986
  // Still up after the full wait. readEngineState reads the published status
@@ -1 +1 @@
1
- {"version":3,"file":"editor-control.js","sourceRoot":"","sources":["../../src/editor/editor-control.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-control.js","sourceRoot":"","sources":["../../src/editor/editor-control.ts"],"names":[],"mappings":"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"}
@@ -94,6 +94,27 @@ export declare function findInteractiveEditors(projectPath?: string | null): Pro
94
94
  export declare function findProjectEditors(projectPath?: string | null): Promise<EditorProcess[]>;
95
95
  /** The running editor with this PID, or null when it is gone. */
96
96
  export declare function findEditorByPid(pid: number): Promise<EditorProcess | null>;
97
+ /** A running CrashReportClient or CrashReportClientEditor process. */
98
+ export interface CrashReporterProcess {
99
+ pid: number;
100
+ /** Image name, e.g. CrashReportClientEditor.exe. */
101
+ image: string;
102
+ commandLine: string;
103
+ }
104
+ /**
105
+ * Every crash reporter process on this machine. Windows only: elsewhere the
106
+ * engine's crash reporter does not hold the project's binaries, so the answer
107
+ * is an empty list. Throws when the probe itself could not run, which is not
108
+ * the same as finding none.
109
+ */
110
+ export declare function listCrashReporterProcesses(): Promise<CrashReporterProcess[]>;
111
+ /**
112
+ * Which processes hold each of `files` open, as pid to the first file found
113
+ * held by it. Windows only; empty elsewhere. Throws when the probe could not
114
+ * run. The list travels through a temp file because a command line cannot
115
+ * carry a project's worth of paths.
116
+ */
117
+ export declare function findFileHolders(files: string[]): Promise<Map<number, string>>;
97
118
  export interface LogState {
98
119
  logPath: string | null;
99
120
  /** Seconds since the log file was last written. High = the process is stuck. */
@@ -19,6 +19,7 @@
19
19
  * writer thread that keeps running while the game thread is blocked
20
20
  */
21
21
  import * as fs from "node:fs";
22
+ import * as os from "node:os";
22
23
  import * as path from "node:path";
23
24
  import { execFile } from "node:child_process";
24
25
  import { promisify } from "node:util";
@@ -248,6 +249,107 @@ export async function findEditorByPid(pid) {
248
249
  const all = await listEditorProcesses();
249
250
  return all.find((p) => p.pid === pid) ?? null;
250
251
  }
252
+ const WINDOWS_CRASH_REPORTER_SCRIPT = `
253
+ $ErrorActionPreference = 'Stop'
254
+ $procs = Get-CimInstance Win32_Process -Filter "Name LIKE 'CrashReportClient%'"
255
+ $out = foreach ($p in $procs) {
256
+ [pscustomobject]@{ pid = $p.ProcessId; name = $p.Name; cmd = $p.CommandLine }
257
+ }
258
+ @($out) | ConvertTo-Json -Compress -Depth 3
259
+ `;
260
+ /**
261
+ * Every crash reporter process on this machine. Windows only: elsewhere the
262
+ * engine's crash reporter does not hold the project's binaries, so the answer
263
+ * is an empty list. Throws when the probe itself could not run, which is not
264
+ * the same as finding none.
265
+ */
266
+ export async function listCrashReporterProcesses() {
267
+ if (!IS_WINDOWS)
268
+ return [];
269
+ const raw = await powershell(WINDOWS_CRASH_REPORTER_SCRIPT, 20000);
270
+ return parseJsonLoose(raw)
271
+ .filter((r) => typeof r?.pid === "number")
272
+ .map((r) => ({ pid: r.pid, image: r.name ?? "", commandLine: r.cmd ?? "" }));
273
+ }
274
+ // Restart Manager is the API Windows itself uses to answer "who has this file
275
+ // open", and it needs no elevation for the caller's own processes.
276
+ const RESTART_MANAGER_TYPE = `
277
+ using System;
278
+ using System.Collections.Generic;
279
+ using System.Runtime.InteropServices;
280
+ using System.Text;
281
+ public static class UeMcpFileHolders {
282
+ [StructLayout(LayoutKind.Sequential)]
283
+ struct RM_UNIQUE_PROCESS { public int dwProcessId; public System.Runtime.InteropServices.ComTypes.FILETIME ProcessStartTime; }
284
+ [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
285
+ struct RM_PROCESS_INFO {
286
+ public RM_UNIQUE_PROCESS Process;
287
+ [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)] public string strAppName;
288
+ [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)] public string strServiceShortName;
289
+ public int ApplicationType; public uint AppStatus; public uint TSSessionId;
290
+ [MarshalAs(UnmanagedType.Bool)] public bool bRestartable;
291
+ }
292
+ [DllImport("rstrtmgr.dll", CharSet = CharSet.Unicode)] static extern int RmStartSession(out uint h, int flags, StringBuilder key);
293
+ [DllImport("rstrtmgr.dll")] static extern int RmEndSession(uint h);
294
+ [DllImport("rstrtmgr.dll", CharSet = CharSet.Unicode)] static extern int RmRegisterResources(uint h, uint nFiles, string[] files, uint nApps, RM_UNIQUE_PROCESS[] apps, uint nSvcs, string[] svcs);
295
+ [DllImport("rstrtmgr.dll")] static extern int RmGetList(uint h, out uint needed, ref uint count, [In, Out] RM_PROCESS_INFO[] info, ref uint reasons);
296
+ public static int[] Holders(string file) {
297
+ uint h;
298
+ int rc = RmStartSession(out h, 0, new StringBuilder(64));
299
+ if (rc != 0) throw new Exception("RmStartSession failed: " + rc);
300
+ try {
301
+ rc = RmRegisterResources(h, 1, new string[] { file }, 0, null, 0, null);
302
+ if (rc != 0) throw new Exception("RmRegisterResources failed: " + rc);
303
+ uint needed = 0, count = 0, reasons = 0;
304
+ rc = RmGetList(h, out needed, ref count, null, ref reasons);
305
+ if (rc == 0) return new int[0];
306
+ if (rc != 234) throw new Exception("RmGetList failed: " + rc);
307
+ RM_PROCESS_INFO[] info = new RM_PROCESS_INFO[needed];
308
+ count = needed;
309
+ rc = RmGetList(h, out needed, ref count, info, ref reasons);
310
+ if (rc != 0) throw new Exception("RmGetList failed: " + rc);
311
+ List<int> pids = new List<int>();
312
+ for (int i = 0; i < count; i++) pids.Add(info[i].Process.dwProcessId);
313
+ return pids.ToArray();
314
+ } finally { RmEndSession(h); }
315
+ }
316
+ }
317
+ `;
318
+ /**
319
+ * Which processes hold each of `files` open, as pid to the first file found
320
+ * held by it. Windows only; empty elsewhere. Throws when the probe could not
321
+ * run. The list travels through a temp file because a command line cannot
322
+ * carry a project's worth of paths.
323
+ */
324
+ export async function findFileHolders(files) {
325
+ const holders = new Map();
326
+ if (!IS_WINDOWS || files.length === 0)
327
+ return holders;
328
+ const listFile = path.join(os.tmpdir(), `ue-mcp-holders-${process.pid}-${Date.now()}.json`);
329
+ fs.writeFileSync(listFile, JSON.stringify(files), "utf-8");
330
+ try {
331
+ const script = `
332
+ $ErrorActionPreference = 'Stop'
333
+ Add-Type -TypeDefinition @'
334
+ ${RESTART_MANAGER_TYPE}
335
+ '@
336
+ $files = Get-Content -Raw -LiteralPath '${listFile.replace(/'/g, "''")}' | ConvertFrom-Json
337
+ $out = foreach ($f in $files) {
338
+ foreach ($holder in [UeMcpFileHolders]::Holders($f)) { [pscustomobject]@{ pid = $holder; file = $f } }
339
+ }
340
+ @($out) | ConvertTo-Json -Compress -Depth 3
341
+ `;
342
+ const raw = await powershell(script, 60000);
343
+ for (const row of parseJsonLoose(raw)) {
344
+ if (typeof row?.pid === "number" && !holders.has(row.pid))
345
+ holders.set(row.pid, row.file);
346
+ }
347
+ return holders;
348
+ }
349
+ finally {
350
+ fs.rmSync(listFile, { force: true });
351
+ }
352
+ }
251
353
  /**
252
354
  * Ordered newest-line-wins. Deliberately small: the goal is a useful label plus
253
355
  * the raw evidence line, not a complete taxonomy of engine startup.
@@ -1 +1 @@
1
- {"version":3,"file":"engine-observer.js","sourceRoot":"","sources":["../../src/editor/engine-observer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine-observer.js","sourceRoot":"","sources":["../../src/editor/engine-observer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAC1C,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;AAEhD,yEAAyE;AACzE,KAAK,UAAU,UAAU,CAAC,MAAc,EAAE,SAAiB;IACzD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAClE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CACpC,gBAAgB,EAChB,CAAC,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAC7D,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CACtE,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAI,GAAW;IACpC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACxB,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAc,CAAC,CAAC,CAAC,CAAC,MAAW,CAAC,CAAC;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAuBD,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;AAEjG;;;;;GAKG;AACH,MAAM,YAAY,GAAG,uCAAuC,CAAC;AAE7D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,WAAW,CAAC;IAExB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;IACb,KAAK,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACpF,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YACtB,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,GAAG,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;IACf,YAAY,CAAC,SAAS,GAAG,CAAC,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9E,uEAAuE;QACvE,uDAAuD;QACvD,KAAK,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC9C,CAAC;IACD,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE3B,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7E,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAElC,4EAA4E;IAC5E,2EAA2E;IAC3E,yEAAyE;IACzE,wCAAwC;IACxC,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;QACrC,OAAO,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjF,CAAC;IACD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW,EAAE,WAAmB,EAAE,UAAmB,EAAE,WAA0B;IACjG,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IACxC,OAAO;QACL,GAAG;QACH,WAAW;QACX,WAAW,EAAE,kBAAkB,CAAC,WAAW,CAAC;QAC5C,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACnG,UAAU;QACV,WAAW,EAAE,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;KACxE,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,+EAA+E;AAC/E,6EAA6E;AAC7E,0DAA0D;AAC1D,MAAM,sBAAsB,GAAG;;;;;;;;;;;;;CAa9B,CAAC;AAEF,4EAA4E;AAC5E,4EAA4E;AAC5E,qEAAqE;AACrE,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B,IAAI,YAAY,GAAmE,IAAI,CAAC;AAaxF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,OAAO,CAAC,MAAM,oBAAoB,EAAE,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,KAAK,UAAU,oBAAoB;IACjC,IAAI,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,EAAE,GAAG,gBAAgB,EAAE,CAAC;QACpE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC;IACxE,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,oBAAoB,EAAE,CAAC;IAC3C,YAAY,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IAChF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,oBAAoB;IACjC,IAAI,CAAC;QACH,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;YAC5D,MAAM,IAAI,GAAG,cAAc,CAAmE,GAAG,CAAC,CAAC;YACnG,OAAO;gBACL,SAAS,EAAE,IAAI;qBACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,QAAQ,CAAC;qBACzC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;gBACpF,MAAM,EAAE,KAAK;aACd,CAAC;QACJ,CAAC;QAED,uEAAuE;QACvE,uEAAuE;QACvE,8DAA8D;QAC9D,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC,CAAC;QACpH,OAAO;YACL,SAAS,EAAE,MAAM;iBACd,KAAK,CAAC,IAAI,CAAC;iBACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;iBAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACrE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACZ,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAChC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;gBACzC,OAAO,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1D,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAC;QAC1D,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACzC,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,eAAe,CAAC,CAAS,EAAE,CAAS;IAClD,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IACtF,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAmB,EAAE,WAAmB;IACxE,OAAO,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,eAAe,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AACrF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAA0B,EAC1B,WAA2B,EAC3B,OAAsC,EAAE;IAExC,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5F,IAAI,CAAC,WAAW;QAAE,OAAO,WAAW,CAAC;IACrC,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;IAC7E,2EAA2E;IAC3E,wEAAwE;IACxE,6EAA6E;IAC7E,6EAA6E;IAC7E,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,OAAO,CAAC;IACvC,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,WAA2B;IACtE,OAAO,uBAAuB,CAAC,MAAM,mBAAmB,EAAE,EAAE,WAAW,CAAC,CAAC;AAC3E,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,WAA2B;IAClE,OAAO,uBAAuB,CAAC,MAAM,mBAAmB,EAAE,EAAE,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;AACtG,CAAC;AAED,iEAAiE;AACjE,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW;IAC/C,MAAM,GAAG,GAAG,MAAM,mBAAmB,EAAE,CAAC;IACxC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC;AAChD,CAAC;AAcD,MAAM,6BAA6B,GAAG;;;;;;;CAOrC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B;IAC9C,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;IACnE,OAAO,cAAc,CAAoD,GAAG,CAAC;SAC1E,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,QAAQ,CAAC;SACzC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,8EAA8E;AAC9E,mEAAmE;AACnE,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyC5B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAAe;IACnD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,kBAAkB,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC5F,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG;;;EAGjB,oBAAoB;;0CAEoB,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;;;;;CAKrE,CAAC;QACE,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,cAAc,CAAgC,GAAG,CAAC,EAAE,CAAC;YACrE,IAAI,OAAO,GAAG,EAAE,GAAG,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5F,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAoBD;;;GAGG;AACH,MAAM,OAAO,GAAa;IACxB,EAAE,EAAE,EAAE,oDAAoD,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAC5G,EAAE,EAAE,EAAE,yEAAyE,EAAE,KAAK,EAAE,iDAAiD,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IACzK,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,EAAE;IAChE,EAAE,EAAE,EAAE,0BAA0B,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE;IAChE,EAAE,EAAE,EAAE,oCAAoC,EAAE,KAAK,EAAE,iBAAiB,EAAE;IACtE,EAAE,EAAE,EAAE,8BAA8B,EAAE,KAAK,EAAE,YAAY,EAAE;IAC3D,EAAE,EAAE,EAAE,qBAAqB,EAAE,KAAK,EAAE,aAAa,EAAE;IACnD,EAAE,EAAE,EAAE,sDAAsD,EAAE,KAAK,EAAE,mBAAmB,EAAE;IAC1F,EAAE,EAAE,EAAE,oEAAoE,EAAE,KAAK,EAAE,yBAAyB,EAAE;IAC9G,EAAE,EAAE,EAAE,sBAAsB,EAAE,KAAK,EAAE,4BAA4B,EAAE;IACnE,EAAE,EAAE,EAAE,iCAAiC,EAAE,KAAK,EAAE,qBAAqB,EAAE;IACvE,EAAE,EAAE,EAAE,8CAA8C,EAAE,KAAK,EAAE,6BAA6B,EAAE;IAC5F,EAAE,EAAE,EAAE,+CAA+C,EAAE,KAAK,EAAE,kBAAkB,EAAE;CACnF,CAAC;AAcF,SAAS,cAAc,CAAC,WAAmB;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IACnE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC;AACxD,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,IAAY,EAAE,KAAa;IAChD,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;IACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC;IAC5B,IAAI,MAAM,IAAI,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC;QACH,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACzC,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC;AAC7D,CAAC;AAED;;;;GAIG;AACH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CAAC,WAAsC;IAC1E,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,IAAI,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IACzC,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QACzC,IAAI,MAAM,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC;YACH,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QACrC,CAAC;gBAAS,CAAC;YACT,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACnB,CAAC;QACD,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACzE,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACzD,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,4EAA4E;IAC5E,uEAAuE;IACvE,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACtC,OAAO,OAAO,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpF,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,WAAsC,EAAE,SAAS,GAAG,EAAE;IACjF,MAAM,KAAK,GAAa;QACtB,OAAO,EAAE,IAAI;QACb,iBAAiB,EAAE,IAAI;QACvB,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;KACb,CAAC;IACF,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAE/B,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,IAAc,CAAC;IACnB,IAAI,CAAC;QACH,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,IAAwC,CAAC;IAC7C,IAAI,CAAC;QACH,IAAI,GAAG,aAAa,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,kBAAkB,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/D,OAAO,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC1E,IAAI,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,KAAK,EAAE,CAAC;IAEpD,IAAI,KAAK,GAAG,SAAS,CAAC;IACtB,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,8EAA8E;IAC9E,0EAA0E;IAC1E,sCAAsC;IACtC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QACrB,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,KAAK,EAAE,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAClD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7B,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;oBACrB,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC;oBACpC,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IACvF,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IAExE,OAAO;QACL,OAAO;QACP,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;QAClE,KAAK;QACL,QAAQ;QACR,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QAC3D,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC;QAC7B,MAAM;QACN,QAAQ;KACT,CAAC;AACJ,CAAC;AAeD;;;;;;;GAOG;AACH,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuD7B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAc;IACpD,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAChD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3G,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,OAAO,cAAc,CAAe,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IAC3F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,4BAA4B,EAAE,GAAG,CAAC,CAAC;QAChE,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,OAAuB;IACvD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1B,IAAI,CAAC,CAAC,SAAS,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,CAAC,0BAA0B;QACrE,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QACtE,OAAO,gFAAgF,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzG,CAAC,CAAC,CAAC;AACL,CAAC;AAqBD;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAA6C;IACjF,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,OAAO,KAAK,CAAC,gBAAgB,KAAK,KAAK,CAAC;AAC1C,CAAC;AAsBD;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,IAAY;IACpC,6EAA6E;IAC7E,4EAA4E;IAC5E,0EAA0E;IAC1E,mDAAmD;IACnD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAmB,CAAC;YAC5E,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;QACpF,CAAC;QAAC,MAAM,CAAC;YACP,4BAA4B;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,mBAAmB,CAAC,GAAW;IACtC,IAAI,CAAC;QACH,OAAO,EAAE;aACN,WAAW,CAAC,GAAG,CAAC;aAChB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACnD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAClC,IAAI,OAAO,GAAG,CAAC,CAAC;YAChB,IAAI,CAAC;gBACH,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;YACtC,CAAC;YAAC,MAAM,CAAC;gBACP,kEAAkE;YACpE,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC3B,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;aACrC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAAsC;IACvE,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAEtD,wEAAwE;IACxE,yEAAyE;IACzE,gDAAgD;IAChD,KAAK,MAAM,IAAI,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;IAChC,CAAC;IACD,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC;AACzD,CAAC;AA6BD,SAAS,SAAS,CAAC,KAA+C;IAChE,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC;IAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACxC,OAAO;YACL,OAAO,EAAE,KAAK,CAAC,kBAAkB;gBAC/B,CAAC,CAAC,qGAAqG,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG;gBACzH,CAAC,CAAC,kDAAkD,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG;YACxE,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,yEAAyE;IACzE,yEAAyE;IACzE,4EAA4E;IAC5E,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC;QACpC,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,kCAAkC,CAAC;YAClF,OAAO;gBACL,OAAO,EAAE,uCAAuC,IAAI,KAAK,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAC/H,OAAO;aACR,CAAC;QACJ,CAAC;QACD,OAAO;YACL,OAAO,EACL,2CAA2C,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,2BAA2B;gBAC9G,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,2CAA2C;YACvG,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpD,OAAO,EAAE,OAAO,EAAE,0CAA0C,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACxH,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC;IAC5B,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,KAAK,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,OAAO,EAAE,OAAO,EAAE,+BAA+B,IAAI,CAAC,KAAK,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC1J,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,wEAAwE;YACxE,qEAAqE;YACrE,6DAA6D;YAC7D,OAAO;gBACL,OAAO,EAAE,4CAA4C,IAAI,CAAC,KAAK,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAC1I,OAAO,EAAE,KAAK;aACf,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAC5D,OAAO,EAAE,OAAO,EAAE,mBAAmB,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACxF,CAAC;QACD,IAAI,IAAI,CAAC,iBAAiB,KAAK,KAAK,EAAE,CAAC;YACrC,yEAAyE;YACzE,+DAA+D;YAC/D,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;YACvG,OAAO,EAAE,OAAO,EAAE,6BAA6B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,OAAO,2CAA2C,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACtJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;YAC9C,OAAO,EAAE,OAAO,EAAE,kCAAkC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAyB,CAAC,aAAa,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAChK,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,OAAO,EAAE,OAAO,EAAE,sEAAsE,KAAK,CAAC,GAAG,CAAC,KAAK,sBAAsB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACtM,CAAC;IAED,IAAI,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACvB,OAAO,EAAE,OAAO,EAAE,yBAAyB,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACpH,CAAC;IAED,OAAO;QACL,OAAO,EAAE,iBAAiB,KAAK,CAAC,GAAG,CAAC,KAAK,uBAAuB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,CAAC,QAAQ;QACpH,OAAO,EAAE,KAAK;KACf,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,WAAsC,EACtC,OAAmC,EAAE;IAErC,MAAM,KAAK,GAAG,MAAM,oBAAoB,EAAE,CAAC;IAC3C,0EAA0E;IAC1E,4EAA4E;IAC5E,wCAAwC;IACxC,MAAM,SAAS,GAAG,uBAAuB,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAEjD,IAAI,OAAO,GAAmB,EAAE,CAAC;IACjC,IAAI,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,OAAO,GAAG,iBAAiB,CAAC,MAAM,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,IAAI,GAA6C;QACrD,OAAO,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC;QAC7B,SAAS;QACT,GAAG,EAAE,QAAQ;QACb,QAAQ;QACR,OAAO;QACP,kBAAkB,EAAE,KAAK,CAAC,MAAM;QAChC,eAAe,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM;QAChE,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM;KAClD,CAAC;IACF,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;AACzC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAkB,EAAE,QAAwB;IAC7E,MAAM,IAAI,GAA6C;QACrD,GAAG,KAAK;QACR,uEAAuE;QACvE,0EAA0E;QAC1E,gEAAgE;QAChE,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,CAAC,EAAE;QACxC,cAAc,EAAE,QAAQ;QACxB,OAAO,EAAE,IAAI;QACb,eAAe,EAAE,iBAAiB;KACnC,CAAC;IACF,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;AACzC,CAAC"}
@@ -34,6 +34,6 @@
34
34
  },
35
35
  "nativeToolsets": 52,
36
36
  "nativeToolActions": 830,
37
- "generatedAt": "2026-09-29T21:35:31.028Z",
38
- "version": "1.3.10-beta.7"
37
+ "generatedAt": "2026-09-29T22:12:52.514Z",
38
+ "version": "1.3.10-beta.8"
39
39
  }
@@ -104,7 +104,7 @@ export const editorTool = categoryTool("editor", "Editor commands, Python execut
104
104
  stop_editor: {
105
105
  kind: "handler",
106
106
  effect: "mutate",
107
- description: "Close Unreal Editor gracefully (asks the editor to quit itself via the bridge; never an OS kill). Acts only on the editor for the loaded project, resolved from the port lockfile that editor published at <project>/Saved/UE_MCP_Bridge/port.json. With no lockfile there is no port to aim at and the call refuses, naming the file it checked, rather than probing a default port that another project's editor could answer on (#819). With no editor of this project running there is nothing to quit, and the call fails saying so, with alreadyStopped=true marking that reason apart from a running editor that cannot be reached or refuses on unsaved work. A flow that stops the editor before building sets ignore_failure: true on the stop step. With more than one editor of this project open it closes the one the lockfile names and reports the rest under remainingInstances, so plain success never has to be read as 'no editor of this project is running' (#1072). Unsaved work: the quit is sent and the EDITOR decides. It refuses inside the engine and names every dirty package without scheduling a close, so nothing is lost and no quit is left pending; save them with editor(save_dirty), or close the editor yourself and answer its save prompt by hand. There is deliberately no flag that discards. This action has no dialog behaviour of its own: a modal blocks it exactly as it blocks every other action, refused by the same gate with the same fields. Read the dialog with editor(list_dialogs) and answer it with editor(respond_to_dialog). Params: none",
107
+ description: "Close Unreal Editor gracefully (asks the editor to quit itself via the bridge; never an OS kill of an editor). Acts only on the editor for the loaded project, resolved from the port lockfile that editor published at <project>/Saved/UE_MCP_Bridge/port.json. With no lockfile there is no port to aim at and the call refuses, naming the file it checked, rather than probing a default port that another project's editor could answer on (#819). With no editor of this project running there is nothing to quit, and the call fails saying so, with alreadyStopped=true marking that reason apart from a running editor that cannot be reached or refuses on unsaved work. A flow that stops the editor before building sets ignore_failure: true on the stop step. With more than one editor of this project open it closes the one the lockfile names and reports the rest under remainingInstances, so plain success never has to be read as 'no editor of this project is running' (#1072). Unsaved work: the quit is sent and the EDITOR decides. It refuses inside the engine and names every dirty package without scheduling a close, so nothing is lost and no quit is left pending; save them with editor(save_dirty), or close the editor yourself and answer its save prompt by hand. There is deliberately no flag that discards. This action has no dialog behaviour of its own: a modal blocks it exactly as it blocks every other action, refused by the same gate with the same fields. Read the dialog with editor(list_dialogs) and answer it with editor(respond_to_dialog). On Windows, once no editor of this project is left running (after the stop, or when there was nothing to stop), it ends any CrashReportClient process a crashed editor of this project left behind, because it keeps the project's module DLLs open and the next build_project fails with LNK1104; each one is reported under crashReporters with its pid and the reason it was judged this project's (a path under the project on its command line, or a project binary it holds open). A reporter still watching a live editor, or one of another project, is never touched. Params: none",
108
108
  handler: async (ctx) => {
109
109
  return stopEditor(ctx.project.projectDir ?? undefined, { connected: connectedEditorOf(ctx.bridge) });
110
110
  },
@@ -1 +1 @@
1
- {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/tools/editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/tools/editor.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export const buildProjectAction = {
10
10
  effect: "mutate",
11
11
  // #958: dispatched in process, because UnrealBuildTool cannot link while an
12
12
  // editor holds the module DLLs, so the build that matters runs with it down.
13
- description: "Build the project's C++ out of process with UnrealBuildTool. Works with the editor STOPPED, which a full rebuild requires (UBT cannot link while an editor holds the module DLLs). Blocks until the build finishes and returns the compiler output. Params: configuration? (default Development), platform? (default the host platform), clean? (#958)",
13
+ description: "Build the project's C++ out of process with UnrealBuildTool. Works with the editor STOPPED, which a full rebuild requires (UBT cannot link while an editor holds the module DLLs). Blocks until the build finishes and returns the compiler output. A link that fails because another process holds an output open names the file and the holder under lockedOutputs, with the remedy in the message. Params: configuration? (default Development), platform? (default the host platform), clean? (#958)",
14
14
  handler: async (ctx, p) => {
15
15
  ctx.project.ensureLoaded();
16
16
  const lines = [];
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/tools/project/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAGvD;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAsB;IACnD,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,QAAQ;IAChB,4EAA4E;IAC5E,6EAA6E;IAC7E,WAAW,EACT,wVAAwV;IAC1V,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;QACxB,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,WAAY,EAAE;YAC1D,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YACpC,aAAa,EAAE,CAAC,CAAC,aAAmC;YACpD,QAAQ,EAAE,CAAC,CAAC,QAA8B;YAC1C,KAAK,EAAE,CAAC,CAAC,KAA4B;SACtC,CAAC,CAAC;QACH,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IAC/C,CAAC;CACF,CAAC;AAEF,qGAAqG;AACrG,MAAM,CAAC,MAAM,cAAc,GAA+B;IACxD,aAAa,EAAE;QACb,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,MAAM;QACd,WAAW,EACT,+FAA+F;cAC7F,+FAA+F;cAC/F,gGAAgG;cAChG,+FAA+F;cAC/F,yFAAyF;cACzF,2FAA2F;cAC3F,gGAAgG;cAChG,wFAAwF;cACxF,wFAAwF;cACxF,+DAA+D;QACnE,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,CAA0B,EAAE,EAAE;YAC9D,MAAM,SAAS,GAAI,CAAC,CAAC,WAAkC,EAAE,IAAI,EAAE,CAAC;YAChE,IAAI,CAAC,SAAS;gBAAE,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,SAAS,IAAI,GAAG,CAAC,OAAO,CAAC,WAAY,CAAC;YACvD,OAAO,cAAc,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC,CAAC;QAC/E,CAAC;KACF;IACD,KAAK,EAAE,kBAAkB;IACzB,sBAAsB,EAAE,MAAM,CAAC,QAAQ,EAAE,0DAA0D,EAAE,wBAAwB,CAAC;IAE9H,sBAAsB,EAAE,MAAM,CAAC,MAAM,EACnC,yXAAyX,EACzX,wBAAwB,CACzB;IACD,aAAa,EAAE,MAAM,CAAC,QAAQ,EAC5B,wgBAAwgB,EACxgB,eAAe,CAChB;IACD,cAAc,EAAE,MAAM,CAAC,QAAQ,EAC7B,2aAA2a,EAC3a,gBAAgB,CACjB;IACD,mBAAmB,EAAE;QACnB,GAAG,MAAM,CAAC,QAAQ,EAAE,uQAAuQ,EAAE,qBAAqB,CAAC;QACnT,SAAS,EAAE,OAAO;KACnB;IACD,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAC/B,uJAAuJ,EACvJ,oBAAoB,CACrB;CACF,CAAC"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/tools/project/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAGvD;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAsB;IACnD,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,QAAQ;IAChB,4EAA4E;IAC5E,6EAA6E;IAC7E,WAAW,EACT,0eAA0e;IAC5e,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;QACxB,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,WAAY,EAAE;YAC1D,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YACpC,aAAa,EAAE,CAAC,CAAC,aAAmC;YACpD,QAAQ,EAAE,CAAC,CAAC,QAA8B;YAC1C,KAAK,EAAE,CAAC,CAAC,KAA4B;SACtC,CAAC,CAAC;QACH,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IAC/C,CAAC;CACF,CAAC;AAEF,qGAAqG;AACrG,MAAM,CAAC,MAAM,cAAc,GAA+B;IACxD,aAAa,EAAE;QACb,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,MAAM;QACd,WAAW,EACT,+FAA+F;cAC7F,+FAA+F;cAC/F,gGAAgG;cAChG,+FAA+F;cAC/F,yFAAyF;cACzF,2FAA2F;cAC3F,gGAAgG;cAChG,wFAAwF;cACxF,wFAAwF;cACxF,+DAA+D;QACnE,OAAO,EAAE,KAAK,EAAE,GAAgB,EAAE,CAA0B,EAAE,EAAE;YAC9D,MAAM,SAAS,GAAI,CAAC,CAAC,WAAkC,EAAE,IAAI,EAAE,CAAC;YAChE,IAAI,CAAC,SAAS;gBAAE,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,SAAS,IAAI,GAAG,CAAC,OAAO,CAAC,WAAY,CAAC;YACvD,OAAO,cAAc,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC,CAAC;QAC/E,CAAC;KACF;IACD,KAAK,EAAE,kBAAkB;IACzB,sBAAsB,EAAE,MAAM,CAAC,QAAQ,EAAE,0DAA0D,EAAE,wBAAwB,CAAC;IAE9H,sBAAsB,EAAE,MAAM,CAAC,MAAM,EACnC,yXAAyX,EACzX,wBAAwB,CACzB;IACD,aAAa,EAAE,MAAM,CAAC,QAAQ,EAC5B,wgBAAwgB,EACxgB,eAAe,CAChB;IACD,cAAc,EAAE,MAAM,CAAC,QAAQ,EAC7B,2aAA2a,EAC3a,gBAAgB,CACjB;IACD,mBAAmB,EAAE;QACnB,GAAG,MAAM,CAAC,QAAQ,EAAE,uQAAuQ,EAAE,qBAAqB,CAAC;QACnT,SAAS,EAAE,OAAO;KACnB;IACD,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAC/B,uJAAuJ,EACvJ,oBAAoB,CACrB;CACF,CAAC"}
@@ -218,8 +218,10 @@ tasks:
218
218
  Build the project's C++ out of process with UnrealBuildTool. Works with
219
219
  the editor STOPPED, which a full rebuild requires (UBT cannot link while
220
220
  an editor holds the module DLLs). Blocks until the build finishes and
221
- returns the compiler output. Params: configuration? (default Development),
222
- platform? (default the host platform), clean? (#958)
221
+ returns the compiler output. A link that fails because another process
222
+ holds an output open names the file and the holder under lockedOutputs,
223
+ with the remedy in the message. Params: configuration? (default
224
+ Development), platform? (default the host platform), clean? (#958)
223
225
  project.generate_project_files:
224
226
  class_path: project.generate_project_files
225
227
  group: project
@@ -12641,8 +12643,8 @@ tasks:
12641
12643
  group: editor
12642
12644
  description: >-
12643
12645
  Close Unreal Editor gracefully (asks the editor to quit itself via the
12644
- bridge; never an OS kill). Acts only on the editor for the loaded project,
12645
- resolved from the port lockfile that editor published at
12646
+ bridge; never an OS kill of an editor). Acts only on the editor for the
12647
+ loaded project, resolved from the port lockfile that editor published at
12646
12648
  <project>/Saved/UE_MCP_Bridge/port.json. With no lockfile there is no port
12647
12649
  to aim at and the call refuses, naming the file it checked, rather than
12648
12650
  probing a default port that another project's editor could answer on
@@ -12661,7 +12663,15 @@ tasks:
12661
12663
  discards. This action has no dialog behaviour of its own: a modal blocks
12662
12664
  it exactly as it blocks every other action, refused by the same gate with
12663
12665
  the same fields. Read the dialog with editor(list_dialogs) and answer it
12664
- with editor(respond_to_dialog). Params: none
12666
+ with editor(respond_to_dialog). On Windows, once no editor of this project
12667
+ is left running (after the stop, or when there was nothing to stop), it
12668
+ ends any CrashReportClient process a crashed editor of this project left
12669
+ behind, because it keeps the project's module DLLs open and the next
12670
+ build_project fails with LNK1104; each one is reported under
12671
+ crashReporters with its pid and the reason it was judged this project's (a
12672
+ path under the project on its command line, or a project binary it holds
12673
+ open). A reporter still watching a live editor, or one of another project,
12674
+ is never touched. Params: none
12665
12675
  editor.restart_editor:
12666
12676
  class_path: editor.restart_editor
12667
12677
  group: editor
@@ -12683,8 +12693,10 @@ tasks:
12683
12693
  Build the project's C++ out of process with UnrealBuildTool. Works with
12684
12694
  the editor STOPPED, which a full rebuild requires (UBT cannot link while
12685
12695
  an editor holds the module DLLs). Blocks until the build finishes and
12686
- returns the compiler output. Params: configuration? (default Development),
12687
- platform? (default the host platform), clean? (#958)
12696
+ returns the compiler output. A link that fails because another process
12697
+ holds an output open names the file and the holder under lockedOutputs,
12698
+ with the remedy in the message. Params: configuration? (default
12699
+ Development), platform? (default the host platform), clean? (#958)
12688
12700
  editor.execute_command:
12689
12701
  class_path: editor.execute_command
12690
12702
  group: editor
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ue-mcp",
3
- "version": "1.3.10-beta.7",
3
+ "version": "1.3.10-beta.8",
4
4
  "description": "Unreal Engine MCP server - 26 tools, 1966+ actions for AI-driven editor control",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "FileVersion": 3,
3
3
  "Version": 1,
4
- "VersionName": "1.3.10-beta.7",
4
+ "VersionName": "1.3.10-beta.8",
5
5
  "FriendlyName": "UE MCP Bridge",
6
6
  "Description": "C++ WebSocket bridge for UE-MCP, providing 1905+ editor actions over the MCP protocol",
7
7
  "Category": "Developer Tools",