ue-mcp 1.0.2 → 1.0.4
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/auth.d.ts +40 -0
- package/dist/auth.js +158 -0
- package/dist/auth.js.map +1 -0
- package/dist/flow/schema.d.ts +6 -6
- package/dist/github-app.d.ts +13 -2
- package/dist/github-app.js +81 -3
- package/dist/github-app.js.map +1 -1
- package/dist/init.js +78 -2
- package/dist/init.js.map +1 -1
- package/dist/tool-counts.json +2 -2
- package/dist/tools/asset.js +1 -1
- package/dist/tools/asset.js.map +1 -1
- package/dist/tools/feedback.js +40 -2
- package/dist/tools/feedback.js.map +1 -1
- package/dist/ue-mcp.default.yml +1 -1
- package/package.json +1 -1
- package/plugin/ue_mcp_bridge/Source/UE_MCP_Bridge/Private/Handlers/AssetHandlers.cpp +265 -17
package/dist/auth.d.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export interface UserAuth {
|
|
2
|
+
token: string;
|
|
3
|
+
login: string;
|
|
4
|
+
authorized_at: string;
|
|
5
|
+
}
|
|
6
|
+
export interface PendingDeviceFlow {
|
|
7
|
+
device_code: string;
|
|
8
|
+
user_code: string;
|
|
9
|
+
verification_uri: string;
|
|
10
|
+
expires_at: number;
|
|
11
|
+
interval: number;
|
|
12
|
+
}
|
|
13
|
+
export type AuthState = {
|
|
14
|
+
kind: "auth";
|
|
15
|
+
auth: UserAuth;
|
|
16
|
+
} | {
|
|
17
|
+
kind: "pending";
|
|
18
|
+
pending: PendingDeviceFlow;
|
|
19
|
+
};
|
|
20
|
+
export declare class OAuthClientNotConfiguredError extends Error {
|
|
21
|
+
constructor();
|
|
22
|
+
}
|
|
23
|
+
export declare function readUserAuth(): Promise<UserAuth | null>;
|
|
24
|
+
export declare function writeUserAuth(auth: UserAuth): Promise<void>;
|
|
25
|
+
export declare function clearUserAuth(): Promise<void>;
|
|
26
|
+
export declare function startDeviceFlow(): Promise<PendingDeviceFlow>;
|
|
27
|
+
export type ExchangeResult = {
|
|
28
|
+
kind: "auth";
|
|
29
|
+
auth: UserAuth;
|
|
30
|
+
} | {
|
|
31
|
+
kind: "pending";
|
|
32
|
+
} | {
|
|
33
|
+
kind: "expired";
|
|
34
|
+
} | {
|
|
35
|
+
kind: "denied";
|
|
36
|
+
};
|
|
37
|
+
export declare function tryExchangeDeviceCode(pending: PendingDeviceFlow): Promise<ExchangeResult>;
|
|
38
|
+
/** Resolve user auth, initiating or resuming device flow as needed.
|
|
39
|
+
* Returns either a usable auth or a pending state for the caller to surface. */
|
|
40
|
+
export declare function resolveUserAuth(): Promise<AuthState>;
|
package/dist/auth.js
ADDED
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { promises as fs } from "node:fs";
|
|
2
|
+
import { homedir } from "node:os";
|
|
3
|
+
import { join } from "node:path";
|
|
4
|
+
// OAuth Client ID for the ue-mcp-feedback GitHub App. This is NOT a secret -
|
|
5
|
+
// device flow client IDs are designed to be public. Override at runtime via
|
|
6
|
+
// UE_MCP_OAUTH_CLIENT_ID for testing or for users running a fork.
|
|
7
|
+
const DEFAULT_CLIENT_ID = "Iv23li9lpE9A0FqmXlJH";
|
|
8
|
+
const CLIENT_ID = process.env.UE_MCP_OAUTH_CLIENT_ID || DEFAULT_CLIENT_ID;
|
|
9
|
+
const AUTH_DIR = process.env.UE_MCP_AUTH_DIR || join(homedir(), ".ue-mcp");
|
|
10
|
+
const AUTH_FILE = join(AUTH_DIR, "auth.json");
|
|
11
|
+
const PENDING_FILE = join(AUTH_DIR, "device-pending.json");
|
|
12
|
+
export class OAuthClientNotConfiguredError extends Error {
|
|
13
|
+
constructor() {
|
|
14
|
+
super("UE_MCP_OAUTH_CLIENT_ID is not configured. The default placeholder is in place. " +
|
|
15
|
+
"Set the env var, or update DEFAULT_CLIENT_ID in src/auth.ts.");
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
function assertClientIdConfigured() {
|
|
19
|
+
if (CLIENT_ID === DEFAULT_CLIENT_ID || CLIENT_ID.includes("REPLACE_WITH_REAL")) {
|
|
20
|
+
throw new OAuthClientNotConfiguredError();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export async function readUserAuth() {
|
|
24
|
+
try {
|
|
25
|
+
const raw = await fs.readFile(AUTH_FILE, "utf-8");
|
|
26
|
+
return JSON.parse(raw);
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export async function writeUserAuth(auth) {
|
|
33
|
+
await fs.mkdir(AUTH_DIR, { recursive: true });
|
|
34
|
+
await fs.writeFile(AUTH_FILE, JSON.stringify(auth, null, 2), { mode: 0o600 });
|
|
35
|
+
}
|
|
36
|
+
export async function clearUserAuth() {
|
|
37
|
+
await fs.unlink(AUTH_FILE).catch(() => { });
|
|
38
|
+
}
|
|
39
|
+
async function readPending() {
|
|
40
|
+
try {
|
|
41
|
+
const raw = await fs.readFile(PENDING_FILE, "utf-8");
|
|
42
|
+
const p = JSON.parse(raw);
|
|
43
|
+
if (p.expires_at < Math.floor(Date.now() / 1000)) {
|
|
44
|
+
await fs.unlink(PENDING_FILE).catch(() => { });
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
return p;
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
async function writePending(p) {
|
|
54
|
+
await fs.mkdir(AUTH_DIR, { recursive: true });
|
|
55
|
+
await fs.writeFile(PENDING_FILE, JSON.stringify(p, null, 2), { mode: 0o600 });
|
|
56
|
+
}
|
|
57
|
+
async function clearPending() {
|
|
58
|
+
await fs.unlink(PENDING_FILE).catch(() => { });
|
|
59
|
+
}
|
|
60
|
+
export async function startDeviceFlow() {
|
|
61
|
+
assertClientIdConfigured();
|
|
62
|
+
const res = await fetch("https://github.com/login/device/code", {
|
|
63
|
+
method: "POST",
|
|
64
|
+
headers: {
|
|
65
|
+
Accept: "application/json",
|
|
66
|
+
"Content-Type": "application/json",
|
|
67
|
+
"User-Agent": "ue-mcp",
|
|
68
|
+
},
|
|
69
|
+
body: JSON.stringify({ client_id: CLIENT_ID }),
|
|
70
|
+
});
|
|
71
|
+
if (!res.ok) {
|
|
72
|
+
throw new Error(`Device code request failed: ${res.status} ${await res.text()}`);
|
|
73
|
+
}
|
|
74
|
+
const data = (await res.json());
|
|
75
|
+
const pending = {
|
|
76
|
+
device_code: data.device_code,
|
|
77
|
+
user_code: data.user_code,
|
|
78
|
+
verification_uri: data.verification_uri,
|
|
79
|
+
expires_at: Math.floor(Date.now() / 1000) + data.expires_in,
|
|
80
|
+
interval: Math.max(data.interval, 5),
|
|
81
|
+
};
|
|
82
|
+
await writePending(pending);
|
|
83
|
+
return pending;
|
|
84
|
+
}
|
|
85
|
+
export async function tryExchangeDeviceCode(pending) {
|
|
86
|
+
assertClientIdConfigured();
|
|
87
|
+
const res = await fetch("https://github.com/login/oauth/access_token", {
|
|
88
|
+
method: "POST",
|
|
89
|
+
headers: {
|
|
90
|
+
Accept: "application/json",
|
|
91
|
+
"Content-Type": "application/json",
|
|
92
|
+
"User-Agent": "ue-mcp",
|
|
93
|
+
},
|
|
94
|
+
body: JSON.stringify({
|
|
95
|
+
client_id: CLIENT_ID,
|
|
96
|
+
device_code: pending.device_code,
|
|
97
|
+
grant_type: "urn:ietf:params:oauth:grant-type:device_code",
|
|
98
|
+
}),
|
|
99
|
+
});
|
|
100
|
+
const data = (await res.json());
|
|
101
|
+
if (data.error === "authorization_pending" || data.error === "slow_down") {
|
|
102
|
+
return { kind: "pending" };
|
|
103
|
+
}
|
|
104
|
+
if (data.error === "expired_token") {
|
|
105
|
+
await clearPending();
|
|
106
|
+
return { kind: "expired" };
|
|
107
|
+
}
|
|
108
|
+
if (data.error === "access_denied") {
|
|
109
|
+
await clearPending();
|
|
110
|
+
return { kind: "denied" };
|
|
111
|
+
}
|
|
112
|
+
if (!data.access_token) {
|
|
113
|
+
throw new Error(`Device code exchange failed: ${data.error || "unknown"}`);
|
|
114
|
+
}
|
|
115
|
+
const userRes = await fetch("https://api.github.com/user", {
|
|
116
|
+
headers: {
|
|
117
|
+
Authorization: `token ${data.access_token}`,
|
|
118
|
+
Accept: "application/vnd.github+json",
|
|
119
|
+
"User-Agent": "ue-mcp",
|
|
120
|
+
},
|
|
121
|
+
});
|
|
122
|
+
if (!userRes.ok) {
|
|
123
|
+
throw new Error(`Failed to fetch user info: ${userRes.status}`);
|
|
124
|
+
}
|
|
125
|
+
const user = (await userRes.json());
|
|
126
|
+
const auth = {
|
|
127
|
+
token: data.access_token,
|
|
128
|
+
login: user.login,
|
|
129
|
+
authorized_at: new Date().toISOString(),
|
|
130
|
+
};
|
|
131
|
+
await writeUserAuth(auth);
|
|
132
|
+
await clearPending();
|
|
133
|
+
return { kind: "auth", auth };
|
|
134
|
+
}
|
|
135
|
+
/** Resolve user auth, initiating or resuming device flow as needed.
|
|
136
|
+
* Returns either a usable auth or a pending state for the caller to surface. */
|
|
137
|
+
export async function resolveUserAuth() {
|
|
138
|
+
const existing = await readUserAuth();
|
|
139
|
+
if (existing)
|
|
140
|
+
return { kind: "auth", auth: existing };
|
|
141
|
+
const pending = await readPending();
|
|
142
|
+
if (pending) {
|
|
143
|
+
const result = await tryExchangeDeviceCode(pending);
|
|
144
|
+
if (result.kind === "auth")
|
|
145
|
+
return { kind: "auth", auth: result.auth };
|
|
146
|
+
if (result.kind === "pending")
|
|
147
|
+
return { kind: "pending", pending };
|
|
148
|
+
if (result.kind === "denied") {
|
|
149
|
+
// User explicitly declined - start a fresh flow next call so they get
|
|
150
|
+
// another chance, but surface the denial first.
|
|
151
|
+
throw new Error("User denied authorization. Re-run feedback.submit to try again, or pass useBot=true.");
|
|
152
|
+
}
|
|
153
|
+
// expired: fall through to fresh start
|
|
154
|
+
}
|
|
155
|
+
const fresh = await startDeviceFlow();
|
|
156
|
+
return { kind: "pending", pending: fresh };
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=auth.js.map
|
package/dist/auth.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/flow/schema.d.ts
CHANGED
|
@@ -412,13 +412,13 @@ export declare const FlowConfigSchema: z.ZodObject<{
|
|
|
412
412
|
}[] | undefined;
|
|
413
413
|
rollback_on_failure?: boolean | undefined;
|
|
414
414
|
}>;
|
|
415
|
+
"ue-mcp"?: {
|
|
416
|
+
version: 1;
|
|
417
|
+
} | undefined;
|
|
415
418
|
project?: {
|
|
416
419
|
name?: string | undefined;
|
|
417
420
|
engine?: string | undefined;
|
|
418
421
|
} | undefined;
|
|
419
|
-
"ue-mcp"?: {
|
|
420
|
-
version: 1;
|
|
421
|
-
} | undefined;
|
|
422
422
|
git_snapshot?: {
|
|
423
423
|
enabled: boolean;
|
|
424
424
|
paths: string[];
|
|
@@ -426,13 +426,13 @@ export declare const FlowConfigSchema: z.ZodObject<{
|
|
|
426
426
|
max_age_hours: number;
|
|
427
427
|
} | undefined;
|
|
428
428
|
}, {
|
|
429
|
+
"ue-mcp"?: {
|
|
430
|
+
version: 1;
|
|
431
|
+
} | undefined;
|
|
429
432
|
project?: {
|
|
430
433
|
name?: string | undefined;
|
|
431
434
|
engine?: string | undefined;
|
|
432
435
|
} | undefined;
|
|
433
|
-
"ue-mcp"?: {
|
|
434
|
-
version: 1;
|
|
435
|
-
} | undefined;
|
|
436
436
|
git_snapshot?: {
|
|
437
437
|
enabled?: boolean | undefined;
|
|
438
438
|
paths?: string[] | undefined;
|
package/dist/github-app.d.ts
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
|
-
export
|
|
1
|
+
export type SubmitResult = {
|
|
2
|
+
kind: "submitted";
|
|
2
3
|
url: string;
|
|
3
4
|
number: number;
|
|
4
|
-
|
|
5
|
+
authoredBy: string;
|
|
6
|
+
authoredAs: "user" | "bot";
|
|
7
|
+
} | {
|
|
8
|
+
kind: "auth_required";
|
|
9
|
+
verification_uri: string;
|
|
10
|
+
user_code: string;
|
|
11
|
+
expires_in: number;
|
|
12
|
+
};
|
|
13
|
+
export declare function submitFeedback(title: string, body: string, labels?: string[], options?: {
|
|
14
|
+
useBot?: boolean;
|
|
15
|
+
}): Promise<SubmitResult>;
|
package/dist/github-app.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createSign } from "node:crypto";
|
|
2
|
+
import { resolveUserAuth, clearUserAuth } from "./auth.js";
|
|
2
3
|
const APP_ID = "3133514";
|
|
3
4
|
const REPO_OWNER = "db-lyon";
|
|
4
5
|
const REPO_NAME = "ue-mcp";
|
|
@@ -72,7 +73,7 @@ async function getInstallationToken(jwt) {
|
|
|
72
73
|
}
|
|
73
74
|
return (await tokenRes.json()).token;
|
|
74
75
|
}
|
|
75
|
-
|
|
76
|
+
async function submitAsBot(title, body, labels) {
|
|
76
77
|
const jwt = createJWT(EMBEDDED_PEM);
|
|
77
78
|
const token = await getInstallationToken(jwt);
|
|
78
79
|
const res = await fetch(`https://api.github.com/repos/${REPO_OWNER}/${REPO_NAME}/issues`, {
|
|
@@ -81,14 +82,91 @@ export async function submitFeedback(title, body, labels = ["agent-feedback"]) {
|
|
|
81
82
|
Authorization: `token ${token}`,
|
|
82
83
|
Accept: "application/vnd.github+json",
|
|
83
84
|
"Content-Type": "application/json",
|
|
85
|
+
"User-Agent": "ue-mcp",
|
|
84
86
|
},
|
|
85
87
|
body: JSON.stringify({ title, body, labels }),
|
|
86
88
|
});
|
|
87
89
|
if (!res.ok) {
|
|
88
90
|
const text = await res.text();
|
|
89
|
-
throw new Error(`Failed to create issue: ${res.status} ${text}`);
|
|
91
|
+
throw new Error(`Failed to create issue (bot): ${res.status} ${text}`);
|
|
90
92
|
}
|
|
91
93
|
const issue = (await res.json());
|
|
92
|
-
return {
|
|
94
|
+
return {
|
|
95
|
+
kind: "submitted",
|
|
96
|
+
url: issue.html_url,
|
|
97
|
+
number: issue.number,
|
|
98
|
+
authoredBy: "ue-mcp-feedback[bot]",
|
|
99
|
+
authoredAs: "bot",
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
function pendingResult(pending) {
|
|
103
|
+
return {
|
|
104
|
+
kind: "auth_required",
|
|
105
|
+
verification_uri: pending.verification_uri,
|
|
106
|
+
user_code: pending.user_code,
|
|
107
|
+
expires_in: Math.max(0, pending.expires_at - Math.floor(Date.now() / 1000)),
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
export async function submitFeedback(title, body, labels = ["agent-feedback"], options = {}) {
|
|
111
|
+
if (options.useBot) {
|
|
112
|
+
return submitAsBot(title, body, labels);
|
|
113
|
+
}
|
|
114
|
+
const auth = await resolveUserAuth();
|
|
115
|
+
if (auth.kind === "pending") {
|
|
116
|
+
return pendingResult(auth.pending);
|
|
117
|
+
}
|
|
118
|
+
const res = await fetch(`https://api.github.com/repos/${REPO_OWNER}/${REPO_NAME}/issues`, {
|
|
119
|
+
method: "POST",
|
|
120
|
+
headers: {
|
|
121
|
+
Authorization: `token ${auth.auth.token}`,
|
|
122
|
+
Accept: "application/vnd.github+json",
|
|
123
|
+
"Content-Type": "application/json",
|
|
124
|
+
"User-Agent": "ue-mcp",
|
|
125
|
+
},
|
|
126
|
+
body: JSON.stringify({ title, body, labels }),
|
|
127
|
+
});
|
|
128
|
+
if (res.status === 401) {
|
|
129
|
+
// Token revoked or expired. Wipe and re-initiate device flow on the next
|
|
130
|
+
// call so the user gets a fresh code instead of a silent bot fallback.
|
|
131
|
+
await clearUserAuth();
|
|
132
|
+
const retry = await resolveUserAuth();
|
|
133
|
+
if (retry.kind === "pending")
|
|
134
|
+
return pendingResult(retry.pending);
|
|
135
|
+
// Fresh auth landed somehow - fall through to retry the post.
|
|
136
|
+
const res2 = await fetch(`https://api.github.com/repos/${REPO_OWNER}/${REPO_NAME}/issues`, {
|
|
137
|
+
method: "POST",
|
|
138
|
+
headers: {
|
|
139
|
+
Authorization: `token ${retry.auth.token}`,
|
|
140
|
+
Accept: "application/vnd.github+json",
|
|
141
|
+
"Content-Type": "application/json",
|
|
142
|
+
"User-Agent": "ue-mcp",
|
|
143
|
+
},
|
|
144
|
+
body: JSON.stringify({ title, body, labels }),
|
|
145
|
+
});
|
|
146
|
+
if (!res2.ok) {
|
|
147
|
+
const text = await res2.text();
|
|
148
|
+
throw new Error(`Failed to create issue as user (after re-auth): ${res2.status} ${text}`);
|
|
149
|
+
}
|
|
150
|
+
const issue2 = (await res2.json());
|
|
151
|
+
return {
|
|
152
|
+
kind: "submitted",
|
|
153
|
+
url: issue2.html_url,
|
|
154
|
+
number: issue2.number,
|
|
155
|
+
authoredBy: retry.auth.login,
|
|
156
|
+
authoredAs: "user",
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
if (!res.ok) {
|
|
160
|
+
const text = await res.text();
|
|
161
|
+
throw new Error(`Failed to create issue as user: ${res.status} ${text}`);
|
|
162
|
+
}
|
|
163
|
+
const issue = (await res.json());
|
|
164
|
+
return {
|
|
165
|
+
kind: "submitted",
|
|
166
|
+
url: issue.html_url,
|
|
167
|
+
number: issue.number,
|
|
168
|
+
authoredBy: auth.auth.login,
|
|
169
|
+
authoredAs: "user",
|
|
170
|
+
};
|
|
93
171
|
}
|
|
94
172
|
//# sourceMappingURL=github-app.js.map
|
package/dist/github-app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"github-app.js","sourceRoot":"","sources":["../src/github-app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"github-app.js","sourceRoot":"","sources":["../src/github-app.ts"],"names":[],"mappings":"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"}
|
package/dist/init.js
CHANGED
|
@@ -5,9 +5,10 @@ import * as readline from "node:readline";
|
|
|
5
5
|
import { ProjectContext } from "./project.js";
|
|
6
6
|
import { deploy } from "./deployer.js";
|
|
7
7
|
import { installSkills } from "./skills.js";
|
|
8
|
+
import { readUserAuth, startDeviceFlow, tryExchangeDeviceCode } from "./auth.js";
|
|
8
9
|
import { warn as logWarn } from "./log.js";
|
|
9
|
-
import { BOLD, CYAN, DIM, GREEN, RED, RESET, fail, info, ok, warn } from "./ui/ansi.js";
|
|
10
|
-
import { checkboxSelect } from "./ui/select.js";
|
|
10
|
+
import { BOLD, CYAN, DIM, GREEN, RED, RESET, YELLOW, fail, info, ok, warn } from "./ui/ansi.js";
|
|
11
|
+
import { checkboxSelect, singleSelect } from "./ui/select.js";
|
|
11
12
|
const CATEGORIES = [
|
|
12
13
|
{ name: "project", label: "project", alwaysOn: true },
|
|
13
14
|
{ name: "editor", label: "editor", alwaysOn: true },
|
|
@@ -175,6 +176,79 @@ function askPath() {
|
|
|
175
176
|
});
|
|
176
177
|
}
|
|
177
178
|
/* ------------------------------------------------------------------ */
|
|
179
|
+
/* GitHub feedback authorship (OAuth device flow) */
|
|
180
|
+
/* ------------------------------------------------------------------ */
|
|
181
|
+
async function runFeedbackAuthStep() {
|
|
182
|
+
console.log("");
|
|
183
|
+
console.log(` ${BOLD}${CYAN}Feedback authorship${RESET} ${DIM}(GitHub OAuth, optional)${RESET}`);
|
|
184
|
+
const cached = await readUserAuth();
|
|
185
|
+
if (cached) {
|
|
186
|
+
ok(`Feedback issues will author as @${cached.login} (cached token reused)`);
|
|
187
|
+
return;
|
|
188
|
+
}
|
|
189
|
+
console.log(` ${DIM}Without auth, agent feedback issues author as the ue-mcp-feedback bot,${RESET}`);
|
|
190
|
+
console.log(` ${DIM}hiding who actually reported the gap. One-time browser authorization${RESET}`);
|
|
191
|
+
console.log(` ${DIM}makes every submission author as your real GitHub user.${RESET}`);
|
|
192
|
+
console.log("");
|
|
193
|
+
const choice = await singleSelect("Authorize now?", [
|
|
194
|
+
"Yes - run device flow now (recommended)",
|
|
195
|
+
"Skip - bot will author feedback issues until I run auth later",
|
|
196
|
+
]);
|
|
197
|
+
if (choice !== 0) {
|
|
198
|
+
info("Skipped. Run npx ue-mcp auth to set this up later.");
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
let pending;
|
|
202
|
+
try {
|
|
203
|
+
pending = await startDeviceFlow();
|
|
204
|
+
}
|
|
205
|
+
catch (e) {
|
|
206
|
+
warn(`Device flow start failed: ${e instanceof Error ? e.message : e}`);
|
|
207
|
+
info("Bot will author feedback issues. Re-run npx ue-mcp init or npx ue-mcp auth to retry.");
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
console.log("");
|
|
211
|
+
console.log(` ${BOLD}1.${RESET} Open: ${CYAN}${pending.verification_uri}${RESET}`);
|
|
212
|
+
console.log(` ${BOLD}2.${RESET} Enter code: ${BOLD}${YELLOW}${pending.user_code}${RESET}`);
|
|
213
|
+
console.log(` ${BOLD}3.${RESET} Authorize the ue-mcp-feedback app`);
|
|
214
|
+
console.log("");
|
|
215
|
+
console.log(` ${DIM}Polling every ${pending.interval}s. Code expires in ~15 min. Ctrl-C to skip.${RESET}`);
|
|
216
|
+
const deadline = pending.expires_at * 1000;
|
|
217
|
+
process.stdout.write(" ");
|
|
218
|
+
while (Date.now() < deadline) {
|
|
219
|
+
await new Promise((r) => setTimeout(r, pending.interval * 1000));
|
|
220
|
+
let result;
|
|
221
|
+
try {
|
|
222
|
+
result = await tryExchangeDeviceCode(pending);
|
|
223
|
+
}
|
|
224
|
+
catch (e) {
|
|
225
|
+
console.log("");
|
|
226
|
+
warn(`Auth failed: ${e instanceof Error ? e.message : e}`);
|
|
227
|
+
info("Bot will author feedback issues until you re-run auth.");
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
if (result.kind === "auth") {
|
|
231
|
+
console.log("");
|
|
232
|
+
ok(`Authorized as @${result.auth.login}`);
|
|
233
|
+
info(`Token cached at ~/.ue-mcp/auth.json (mode 600)`);
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
if (result.kind === "expired") {
|
|
237
|
+
console.log("");
|
|
238
|
+
warn("Device code expired. Re-run npx ue-mcp init to retry.");
|
|
239
|
+
return;
|
|
240
|
+
}
|
|
241
|
+
if (result.kind === "denied") {
|
|
242
|
+
console.log("");
|
|
243
|
+
warn("Authorization denied. Bot will author feedback issues.");
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
process.stdout.write(".");
|
|
247
|
+
}
|
|
248
|
+
console.log("");
|
|
249
|
+
warn("Timed out waiting for authorization. Bot will author feedback issues.");
|
|
250
|
+
}
|
|
251
|
+
/* ------------------------------------------------------------------ */
|
|
178
252
|
/* Main init flow */
|
|
179
253
|
/* ------------------------------------------------------------------ */
|
|
180
254
|
async function init() {
|
|
@@ -364,6 +438,8 @@ async function init() {
|
|
|
364
438
|
info(skillsResult.skillsDir);
|
|
365
439
|
}
|
|
366
440
|
}
|
|
441
|
+
// 9c. GitHub OAuth for feedback authorship
|
|
442
|
+
await runFeedbackAuthStep();
|
|
367
443
|
// 10. Done
|
|
368
444
|
console.log("");
|
|
369
445
|
console.log(` ${BOLD}${GREEN}Setup complete!${RESET}`);
|
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
package/dist/tool-counts.json
CHANGED
package/dist/tools/asset.js
CHANGED
|
@@ -74,7 +74,7 @@ export const assetTool = categoryTool("asset", "Asset management: list, search,
|
|
|
74
74
|
read: bp("Read asset via reflection. Params: assetPath", "read_asset", (p) => ({ path: p.assetPath })),
|
|
75
75
|
read_properties: bp("Read asset properties with values. Params: assetPath, propertyName?, includeValues?", "read_asset_properties"),
|
|
76
76
|
duplicate: bp("Duplicate asset. Params: sourcePath, destinationPath", "duplicate_asset"),
|
|
77
|
-
rename: bp("Rename asset. Params: assetPath, newName
|
|
77
|
+
rename: bp("Rename asset. Params: assetPath, newName (or sourcePath, destinationPath), force?. World Partition levels are detected and their __ExternalActors__/__ExternalObjects__ packages migrate atomically alongside the .umap, source-side redirectors get fixed up, and the active editor world is swapped to blank if it matches the source (#409). Refuses if any package is dirty - save first. If a prior rename left externals orphaned at the old path, re-running reconciles them. Rollback descriptor is emitted even on partial failure so the inverse rename can recover. `force=true` lets the call merge into a destination with pre-existing externals (used by rollback). For batches of 3+ scene-referenced non-world assets use bulk_rename instead.", "rename_asset"),
|
|
78
78
|
bulk_rename: bp("Batched rename using IAssetTools::RenameAssets - single transaction with one redirector-fixup pass (matches Content Browser drag). Use this over looped rename for scene-referenced assets. World assets are rejected (status=rejected_world); use rename_asset which handles WP externals atomically (#409). Params: renames[] where each entry is {sourcePath, destinationPath} OR {assetPath, newName}.", "bulk_rename_assets", (p) => ({ renames: p.renames })),
|
|
79
79
|
move: bp("Move asset. Params: sourcePath, destinationPath", "move_asset"),
|
|
80
80
|
delete: bp("Delete asset. On failure returns reason (open_in_editor / has_referencers / unknown) plus referencer list. Pass force=true to auto-close any open asset editors before deleting (#278). Params: assetPath, force?", "delete_asset"),
|
package/dist/tools/asset.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset.js","sourceRoot":"","sources":["../../src/tools/asset.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"asset.js","sourceRoot":"","sources":["../../src/tools/asset.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/feedback.js
CHANGED
|
@@ -144,11 +144,45 @@ export const feedbackTool = categoryTool("feedback", "Submit feedback to improve
|
|
|
144
144
|
sections.push("", "---", "*Submitted via ue-mcp agent feedback*");
|
|
145
145
|
const body = sections.join("\n");
|
|
146
146
|
const labels = inferLabels(title, summary, idealTool);
|
|
147
|
-
const
|
|
147
|
+
const useBot = params.useBot === true;
|
|
148
|
+
const result = await submitFeedback(title, body, labels, { useBot });
|
|
149
|
+
if (result.kind === "auth_required") {
|
|
150
|
+
return directive([
|
|
151
|
+
`[FEEDBACK AUTH REQUIRED]`,
|
|
152
|
+
``,
|
|
153
|
+
`Issues should be authored by the actual reporter, not the ue-mcp-feedback bot.`,
|
|
154
|
+
`Authorize ue-mcp via GitHub device flow (one time only):`,
|
|
155
|
+
``,
|
|
156
|
+
` 1. Open: ${result.verification_uri}`,
|
|
157
|
+
` 2. Enter code: ${result.user_code}`,
|
|
158
|
+
` 3. Authorize the ue-mcp-feedback app`,
|
|
159
|
+
``,
|
|
160
|
+
`Then re-call feedback(submit) with the same arguments. The token persists`,
|
|
161
|
+
`in ~/.ue-mcp/auth.json so this only happens once per machine.`,
|
|
162
|
+
``,
|
|
163
|
+
`Code expires in ~${Math.round(result.expires_in / 60)} min. To submit anonymously`,
|
|
164
|
+
`as the bot instead, re-call with useBot=true.`,
|
|
165
|
+
].join("\n"), {
|
|
166
|
+
submitted: false,
|
|
167
|
+
authRequired: true,
|
|
168
|
+
verification_uri: result.verification_uri,
|
|
169
|
+
user_code: result.user_code,
|
|
170
|
+
expires_in: result.expires_in,
|
|
171
|
+
}, {
|
|
172
|
+
kind: "feedback.auth_required",
|
|
173
|
+
requiredActions: ["surface_oauth_url_to_user", "retry_feedback_submit_after_auth"],
|
|
174
|
+
context: {
|
|
175
|
+
verification_uri: result.verification_uri,
|
|
176
|
+
user_code: result.user_code,
|
|
177
|
+
},
|
|
178
|
+
});
|
|
179
|
+
}
|
|
148
180
|
return {
|
|
149
|
-
message:
|
|
181
|
+
message: `Feedback submitted as ${result.authoredAs === "user" ? `@${result.authoredBy}` : "bot"}`,
|
|
150
182
|
issue_url: result.url,
|
|
151
183
|
issue_number: result.number,
|
|
184
|
+
authored_by: result.authoredBy,
|
|
185
|
+
authored_as: result.authoredAs,
|
|
152
186
|
labels,
|
|
153
187
|
};
|
|
154
188
|
},
|
|
@@ -168,5 +202,9 @@ export const feedbackTool = categoryTool("feedback", "Submit feedback to improve
|
|
|
168
202
|
.string()
|
|
169
203
|
.optional()
|
|
170
204
|
.describe("What tool/action should have handled this natively (e.g. 'blueprint(action=set_variable_default)')"),
|
|
205
|
+
useBot: z
|
|
206
|
+
.boolean()
|
|
207
|
+
.optional()
|
|
208
|
+
.describe("Submit as the ue-mcp-feedback bot instead of authoring as the real GitHub user. Default false - issues author as the user via OAuth device flow on first use."),
|
|
171
209
|
});
|
|
172
210
|
//# sourceMappingURL=feedback.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/tools/feedback.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/tools/feedback.ts"],"names":[],"mappings":"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"}
|
package/dist/ue-mcp.default.yml
CHANGED
|
@@ -148,7 +148,7 @@ tasks:
|
|
|
148
148
|
asset.rename:
|
|
149
149
|
class_path: ue-mcp.bridge
|
|
150
150
|
group: asset
|
|
151
|
-
description: "Rename asset. Params: assetPath, newName
|
|
151
|
+
description: "Rename asset. Params: assetPath, newName (or sourcePath, destinationPath), force?. World Partition levels are detected and their __ExternalActors__/__ExternalObjects__ packages migrate atomically alongside the .umap, source-side redirectors get fixed up, and the active editor world is swapped to blank if it matches the source (#409). Refuses if any package is dirty - save first. If a prior rename left externals orphaned at the old path, re-running reconciles them. Rollback descriptor is emitted even on partial failure so the inverse rename can recover. `force=true` lets the call merge into a destination with pre-existing externals (used by rollback). For batches of 3+ scene-referenced non-world assets use bulk_rename instead."
|
|
152
152
|
options:
|
|
153
153
|
method: rename_asset
|
|
154
154
|
asset.bulk_rename:
|
package/package.json
CHANGED
|
@@ -54,6 +54,9 @@
|
|
|
54
54
|
// Reimport
|
|
55
55
|
#include "EditorReimportHandler.h"
|
|
56
56
|
|
|
57
|
+
// World rename redirector cleanup (UEditorLoadingAndSavingUtils ships in FileHelpers.h, already included)
|
|
58
|
+
#include "UObject/ObjectRedirector.h"
|
|
59
|
+
|
|
57
60
|
// Collision / BodySetup
|
|
58
61
|
#include "PhysicsEngine/BodySetup.h"
|
|
59
62
|
#include "AI/Navigation/NavCollisionBase.h"
|
|
@@ -716,10 +719,26 @@ TSharedPtr<FJsonValue> FAssetHandlers::DuplicateAsset(const TSharedPtr<FJsonObje
|
|
|
716
719
|
// UEditorAssetLibrary::RenameAsset on a World Partition .umap renames only
|
|
717
720
|
// the umap and silently orphans every actor in /Game/__ExternalActors__/<Level>/.
|
|
718
721
|
// Detect Worlds and route through IAssetTools::RenameAssets with the world +
|
|
719
|
-
// all external packages in a single atomic batch.
|
|
720
|
-
//
|
|
721
|
-
//
|
|
722
|
-
|
|
722
|
+
// all external packages in a single atomic batch.
|
|
723
|
+
//
|
|
724
|
+
// Guards (in order):
|
|
725
|
+
// 1. Cross-mount renames refused (external-package GUIDs are mount-relative).
|
|
726
|
+
// 2. Active editor world: if it matches the source and isn't dirty, auto-swap
|
|
727
|
+
// to a blank map (RenameAssets on the loaded world otherwise leaves the
|
|
728
|
+
// editor pointing at a stale UWorld*); if dirty, refuse with a clear ask.
|
|
729
|
+
// 3. Dirty world or external packages: refuse - caller must save first.
|
|
730
|
+
// 4. Destination external folders already populated: refuse unless bForceMerge
|
|
731
|
+
// (rollback path uses force to step over orphans left by the forward call).
|
|
732
|
+
// 5. Pre-load every external package and abort before any change if any fail
|
|
733
|
+
// to load (no partial state at the engine level).
|
|
734
|
+
//
|
|
735
|
+
// On success the source-side redirectors are fixed up + deleted so the project
|
|
736
|
+
// doesn't accumulate 200+ stub redirectors per rename.
|
|
737
|
+
//
|
|
738
|
+
// Rollback is emitted unconditionally on a path that reached the mutation - if
|
|
739
|
+
// AssetTools.RenameAssets returns false mid-batch, the rollback descriptor
|
|
740
|
+
// still ships so the caller (or flow runner) can attempt recovery.
|
|
741
|
+
static TSharedPtr<FJsonValue> RenameWorldWithExternals(const FString& SourceAssetPath, const FString& DestAssetPath, bool bForceMerge)
|
|
723
742
|
{
|
|
724
743
|
FString SrcMount, SrcRel, SrcPkg, SrcName;
|
|
725
744
|
FString DstMount, DstRel, DstPkg, DstName;
|
|
@@ -735,6 +754,25 @@ static TSharedPtr<FJsonValue> RenameWorldWithExternals(const FString& SourceAsse
|
|
|
735
754
|
*SrcMount, *DstMount));
|
|
736
755
|
}
|
|
737
756
|
|
|
757
|
+
// Guard 2: active editor world. RenameAssets against the live UWorld leaves
|
|
758
|
+
// the editor pointing at a stale pointer; the safe pattern is to swap to a
|
|
759
|
+
// blank map first. We only do that automatically when the world isn't dirty
|
|
760
|
+
// so we never silently lose unsaved actor edits.
|
|
761
|
+
if (UWorld* EditorWorld = GetEditorWorld())
|
|
762
|
+
{
|
|
763
|
+
UPackage* EditorWorldPkg = EditorWorld->GetOutermost();
|
|
764
|
+
if (EditorWorldPkg && EditorWorldPkg->GetName() == SrcPkg)
|
|
765
|
+
{
|
|
766
|
+
if (EditorWorldPkg->IsDirty())
|
|
767
|
+
{
|
|
768
|
+
return MCPError(FString::Printf(
|
|
769
|
+
TEXT("Refusing to rename World currently open in editor with unsaved changes: %s. Save the level (asset.save) or discard, then re-run."),
|
|
770
|
+
*SourceAssetPath));
|
|
771
|
+
}
|
|
772
|
+
UEditorLoadingAndSavingUtils::NewBlankMap(/*bSaveExistingMap*/ false);
|
|
773
|
+
}
|
|
774
|
+
}
|
|
775
|
+
|
|
738
776
|
FAssetRegistryModule& ARM = FModuleManager::LoadModuleChecked<FAssetRegistryModule>(TEXT("AssetRegistry"));
|
|
739
777
|
IAssetRegistry& Registry = ARM.Get();
|
|
740
778
|
FAssetToolsModule& ATM = FModuleManager::LoadModuleChecked<FAssetToolsModule>(TEXT("AssetTools"));
|
|
@@ -745,21 +783,26 @@ static TSharedPtr<FJsonValue> RenameWorldWithExternals(const FString& SourceAsse
|
|
|
745
783
|
const FString ExtActorsDst = DstMount + TEXT("__ExternalActors__/") + DstRel;
|
|
746
784
|
const FString ExtObjectsDst = DstMount + TEXT("__ExternalObjects__/") + DstRel;
|
|
747
785
|
|
|
786
|
+
// Skip redirector stubs left by prior renames - we don't want to drag them along.
|
|
748
787
|
auto Gather = [&](const FString& Folder, TArray<FAssetData>& Out)
|
|
749
788
|
{
|
|
750
789
|
FARFilter F;
|
|
751
790
|
F.PackagePaths.Add(FName(*Folder));
|
|
752
791
|
F.bRecursivePaths = true;
|
|
753
792
|
Registry.GetAssets(F, Out);
|
|
793
|
+
Out.RemoveAll([](const FAssetData& D)
|
|
794
|
+
{
|
|
795
|
+
return D.AssetClassPath.GetAssetName() == FName(TEXT("ObjectRedirector"));
|
|
796
|
+
});
|
|
754
797
|
};
|
|
755
798
|
|
|
756
799
|
TArray<FAssetData> DstActorsExisting, DstObjectsExisting;
|
|
757
800
|
Gather(ExtActorsDst, DstActorsExisting);
|
|
758
801
|
Gather(ExtObjectsDst, DstObjectsExisting);
|
|
759
|
-
if (DstActorsExisting.Num() + DstObjectsExisting.Num() > 0)
|
|
802
|
+
if (!bForceMerge && DstActorsExisting.Num() + DstObjectsExisting.Num() > 0)
|
|
760
803
|
{
|
|
761
804
|
return MCPError(FString::Printf(
|
|
762
|
-
TEXT("Refusing to rename World: destination external folders already contain %d asset(s) at %s or %s. Pick a clean destination."),
|
|
805
|
+
TEXT("Refusing to rename World: destination external folders already contain %d asset(s) at %s or %s. Pick a clean destination, or pass force=true to merge (used by rollback)."),
|
|
763
806
|
DstActorsExisting.Num() + DstObjectsExisting.Num(), *ExtActorsDst, *ExtObjectsDst));
|
|
764
807
|
}
|
|
765
808
|
|
|
@@ -773,6 +816,32 @@ static TSharedPtr<FJsonValue> RenameWorldWithExternals(const FString& SourceAsse
|
|
|
773
816
|
return MCPError(FString::Printf(TEXT("Failed to load World asset: %s. No changes made."), *SourceAssetPath));
|
|
774
817
|
}
|
|
775
818
|
|
|
819
|
+
// Guard 3: dirty world or externals. Silent loss vector if we let it through.
|
|
820
|
+
TArray<FString> DirtyPackages;
|
|
821
|
+
auto CheckDirty = [&](const FString& PkgName)
|
|
822
|
+
{
|
|
823
|
+
if (UPackage* P = FindPackage(nullptr, *PkgName))
|
|
824
|
+
{
|
|
825
|
+
if (P->IsDirty()) DirtyPackages.Add(PkgName);
|
|
826
|
+
}
|
|
827
|
+
};
|
|
828
|
+
CheckDirty(SrcPkg);
|
|
829
|
+
for (const FAssetData& D : SrcActors) CheckDirty(D.PackageName.ToString());
|
|
830
|
+
for (const FAssetData& D : SrcObjects) CheckDirty(D.PackageName.ToString());
|
|
831
|
+
if (DirtyPackages.Num() > 0)
|
|
832
|
+
{
|
|
833
|
+
FString Examples;
|
|
834
|
+
const int32 Show = FMath::Min(DirtyPackages.Num(), 5);
|
|
835
|
+
for (int32 i = 0; i < Show; ++i)
|
|
836
|
+
{
|
|
837
|
+
if (i) Examples += TEXT(", ");
|
|
838
|
+
Examples += DirtyPackages[i];
|
|
839
|
+
}
|
|
840
|
+
return MCPError(FString::Printf(
|
|
841
|
+
TEXT("Refusing to rename World: %d package(s) have unsaved changes. Save with asset.save (or editor.save_dirty) first. Examples: %s"),
|
|
842
|
+
DirtyPackages.Num(), *Examples));
|
|
843
|
+
}
|
|
844
|
+
|
|
776
845
|
TArray<FAssetRenameData> Batch;
|
|
777
846
|
Batch.Reserve(1 + SrcActors.Num() + SrcObjects.Num());
|
|
778
847
|
|
|
@@ -825,30 +894,200 @@ static TSharedPtr<FJsonValue> RenameWorldWithExternals(const FString& SourceAsse
|
|
|
825
894
|
FailedLoad.Num(), *Examples));
|
|
826
895
|
}
|
|
827
896
|
|
|
828
|
-
|
|
829
|
-
|
|
897
|
+
// Build response + rollback handle BEFORE the mutation. We've cached every
|
|
898
|
+
// source path that's about to move, so the inverse is deterministic even if
|
|
899
|
+
// the batch half-completes. Rollback passes force=true to step over orphans
|
|
900
|
+
// left at the original destination by a partial forward run.
|
|
830
901
|
auto R = MCPSuccess();
|
|
831
902
|
R->SetStringField(TEXT("sourcePath"), SourceAssetPath);
|
|
832
903
|
R->SetStringField(TEXT("destinationPath"), DestAssetPath);
|
|
833
904
|
R->SetStringField(TEXT("kind"), TEXT("world"));
|
|
834
|
-
R->SetBoolField(TEXT("success"), bOk);
|
|
835
905
|
R->SetNumberField(TEXT("externalActors"), ActorAdded);
|
|
836
906
|
R->SetNumberField(TEXT("externalObjects"), ObjectAdded);
|
|
837
907
|
R->SetNumberField(TEXT("totalRenamed"), Batch.Num());
|
|
838
908
|
|
|
909
|
+
TSharedPtr<FJsonObject> RollbackPayload = MakeShared<FJsonObject>();
|
|
910
|
+
RollbackPayload->SetStringField(TEXT("sourcePath"), DestAssetPath);
|
|
911
|
+
RollbackPayload->SetStringField(TEXT("destinationPath"), SourceAssetPath);
|
|
912
|
+
RollbackPayload->SetBoolField(TEXT("force"), true);
|
|
913
|
+
MCPSetRollback(R, TEXT("rename_asset"), RollbackPayload);
|
|
914
|
+
|
|
915
|
+
const bool bOk = AssetTools.RenameAssets(Batch);
|
|
916
|
+
R->SetBoolField(TEXT("success"), bOk);
|
|
917
|
+
|
|
839
918
|
if (!bOk)
|
|
840
919
|
{
|
|
841
|
-
|
|
842
|
-
|
|
920
|
+
// Build the error object by hand so the rollback descriptor survives -
|
|
921
|
+
// MCPError() would drop it. The caller (flow runner) can invoke the
|
|
922
|
+
// inverse rename to attempt recovery from a partial batch.
|
|
923
|
+
TSharedPtr<FJsonObject> Err = MakeShared<FJsonObject>();
|
|
924
|
+
Err->SetBoolField(TEXT("success"), false);
|
|
925
|
+
Err->SetBoolField(TEXT("partial"), true);
|
|
926
|
+
Err->SetStringField(TEXT("error"), FString::Printf(
|
|
927
|
+
TEXT("IAssetTools::RenameAssets failed on World+externals batch (%d items: 1 world, %d actors, %d objects). Rollback descriptor is attached - invoke the inverse rename to recover."),
|
|
843
928
|
Batch.Num(), ActorAdded, ObjectAdded));
|
|
929
|
+
MCPSetRollback(Err, TEXT("rename_asset"), RollbackPayload);
|
|
930
|
+
return MakeShared<FJsonValueObject>(Err);
|
|
931
|
+
}
|
|
932
|
+
|
|
933
|
+
// Source-side redirector cleanup: AssetTools.RenameAssets leaves a redirector
|
|
934
|
+
// stub at every old path. With WP that's potentially hundreds of stubs - fix
|
|
935
|
+
// up referencers and delete them so the project doesn't accumulate cruft.
|
|
936
|
+
TArray<FAssetData> SourceRedirectors;
|
|
937
|
+
auto GatherRedirectorsAt = [&](const FString& Folder)
|
|
938
|
+
{
|
|
939
|
+
FARFilter F;
|
|
940
|
+
F.PackagePaths.Add(FName(*Folder));
|
|
941
|
+
F.bRecursivePaths = true;
|
|
942
|
+
F.ClassPaths.Add(FTopLevelAssetPath(TEXT("/Script/CoreUObject"), TEXT("ObjectRedirector")));
|
|
943
|
+
Registry.GetAssets(F, SourceRedirectors);
|
|
944
|
+
};
|
|
945
|
+
GatherRedirectorsAt(FPaths::GetPath(SrcPkg));
|
|
946
|
+
GatherRedirectorsAt(ExtActorsSrc);
|
|
947
|
+
GatherRedirectorsAt(ExtObjectsSrc);
|
|
948
|
+
|
|
949
|
+
TArray<UObjectRedirector*> RedirectorObjects;
|
|
950
|
+
RedirectorObjects.Reserve(SourceRedirectors.Num());
|
|
951
|
+
for (const FAssetData& D : SourceRedirectors)
|
|
952
|
+
{
|
|
953
|
+
if (UObjectRedirector* Red = Cast<UObjectRedirector>(D.GetAsset()))
|
|
954
|
+
{
|
|
955
|
+
RedirectorObjects.Add(Red);
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
int32 RedirectorsCleaned = RedirectorObjects.Num();
|
|
959
|
+
if (RedirectorsCleaned > 0)
|
|
960
|
+
{
|
|
961
|
+
AssetTools.FixupReferencers(RedirectorObjects, /*bCheckoutDialogPrompt*/ false);
|
|
844
962
|
}
|
|
963
|
+
R->SetNumberField(TEXT("redirectorsCleaned"), RedirectorsCleaned);
|
|
845
964
|
|
|
846
965
|
MCPSetUpdated(R);
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
966
|
+
return MCPResult(R);
|
|
967
|
+
}
|
|
968
|
+
|
|
969
|
+
// ─── #409: orphan recovery ───────────────────────────────────────────
|
|
970
|
+
// Fast-path called when the source .umap is gone but the destination .umap
|
|
971
|
+
// exists. If externals are still at the source path (a previous rename
|
|
972
|
+
// orphaned them), migrate them into place. If they're already at the
|
|
973
|
+
// destination, return Existed.
|
|
974
|
+
static TSharedPtr<FJsonValue> ReconcileOrphanExternals(const FString& SourceAssetPath, const FString& DestAssetPath)
|
|
975
|
+
{
|
|
976
|
+
FString SrcMount, SrcRel, SrcPkg, SrcName;
|
|
977
|
+
FString DstMount, DstRel, DstPkg, DstName;
|
|
978
|
+
if (!SplitMountAndRel(SourceAssetPath, SrcMount, SrcRel, SrcPkg, SrcName) ||
|
|
979
|
+
!SplitMountAndRel(DestAssetPath, DstMount, DstRel, DstPkg, DstName) ||
|
|
980
|
+
SrcMount != DstMount)
|
|
981
|
+
{
|
|
982
|
+
auto Noop = MCPSuccess();
|
|
983
|
+
MCPSetExisted(Noop);
|
|
984
|
+
Noop->SetStringField(TEXT("sourcePath"), SourceAssetPath);
|
|
985
|
+
Noop->SetStringField(TEXT("destinationPath"), DestAssetPath);
|
|
986
|
+
return MCPResult(Noop);
|
|
987
|
+
}
|
|
988
|
+
|
|
989
|
+
FAssetRegistryModule& ARM = FModuleManager::LoadModuleChecked<FAssetRegistryModule>(TEXT("AssetRegistry"));
|
|
990
|
+
IAssetRegistry& Registry = ARM.Get();
|
|
851
991
|
|
|
992
|
+
const FString ExtActorsSrc = SrcMount + TEXT("__ExternalActors__/") + SrcRel;
|
|
993
|
+
const FString ExtObjectsSrc = SrcMount + TEXT("__ExternalObjects__/") + SrcRel;
|
|
994
|
+
const FString ExtActorsDst = DstMount + TEXT("__ExternalActors__/") + DstRel;
|
|
995
|
+
const FString ExtObjectsDst = DstMount + TEXT("__ExternalObjects__/") + DstRel;
|
|
996
|
+
|
|
997
|
+
auto Gather = [&](const FString& Folder, TArray<FAssetData>& Out)
|
|
998
|
+
{
|
|
999
|
+
FARFilter F;
|
|
1000
|
+
F.PackagePaths.Add(FName(*Folder));
|
|
1001
|
+
F.bRecursivePaths = true;
|
|
1002
|
+
Registry.GetAssets(F, Out);
|
|
1003
|
+
Out.RemoveAll([](const FAssetData& D)
|
|
1004
|
+
{
|
|
1005
|
+
return D.AssetClassPath.GetAssetName() == FName(TEXT("ObjectRedirector"));
|
|
1006
|
+
});
|
|
1007
|
+
};
|
|
1008
|
+
|
|
1009
|
+
TArray<FAssetData> Orphans;
|
|
1010
|
+
Gather(ExtActorsSrc, Orphans);
|
|
1011
|
+
const int32 OrphanActors = Orphans.Num();
|
|
1012
|
+
TArray<FAssetData> OrphanObjects;
|
|
1013
|
+
Gather(ExtObjectsSrc, OrphanObjects);
|
|
1014
|
+
Orphans.Append(OrphanObjects);
|
|
1015
|
+
|
|
1016
|
+
if (Orphans.Num() == 0)
|
|
1017
|
+
{
|
|
1018
|
+
// True idempotent replay - everything already at destination.
|
|
1019
|
+
auto Noop = MCPSuccess();
|
|
1020
|
+
MCPSetExisted(Noop);
|
|
1021
|
+
Noop->SetStringField(TEXT("sourcePath"), SourceAssetPath);
|
|
1022
|
+
Noop->SetStringField(TEXT("destinationPath"), DestAssetPath);
|
|
1023
|
+
return MCPResult(Noop);
|
|
1024
|
+
}
|
|
1025
|
+
|
|
1026
|
+
FAssetToolsModule& ATM = FModuleManager::LoadModuleChecked<FAssetToolsModule>(TEXT("AssetTools"));
|
|
1027
|
+
IAssetTools& AssetTools = ATM.Get();
|
|
1028
|
+
|
|
1029
|
+
TArray<FAssetRenameData> Batch;
|
|
1030
|
+
Batch.Reserve(Orphans.Num());
|
|
1031
|
+
TArray<FString> FailedLoad;
|
|
1032
|
+
|
|
1033
|
+
auto Remap = [&](const FString& PkgName, FString& OutPath, FString& OutName) -> bool
|
|
1034
|
+
{
|
|
1035
|
+
auto Try = [&](const FString& Src, const FString& Dst) -> bool
|
|
1036
|
+
{
|
|
1037
|
+
if (!PkgName.StartsWith(Src + TEXT("/"))) return false;
|
|
1038
|
+
const FString Suffix = PkgName.RightChop(Src.Len() + 1);
|
|
1039
|
+
const FString Sub = FPaths::GetPath(Suffix);
|
|
1040
|
+
OutPath = Sub.IsEmpty() ? Dst : (Dst + TEXT("/") + Sub);
|
|
1041
|
+
OutName = FPaths::GetBaseFilename(Suffix);
|
|
1042
|
+
return true;
|
|
1043
|
+
};
|
|
1044
|
+
return Try(ExtActorsSrc, ExtActorsDst) || Try(ExtObjectsSrc, ExtObjectsDst);
|
|
1045
|
+
};
|
|
1046
|
+
|
|
1047
|
+
for (const FAssetData& Data : Orphans)
|
|
1048
|
+
{
|
|
1049
|
+
const FString PkgName = Data.PackageName.ToString();
|
|
1050
|
+
FString NewPkgPath, NewName;
|
|
1051
|
+
if (!Remap(PkgName, NewPkgPath, NewName))
|
|
1052
|
+
{
|
|
1053
|
+
FailedLoad.Add(PkgName + TEXT(" (path mismatch)"));
|
|
1054
|
+
continue;
|
|
1055
|
+
}
|
|
1056
|
+
UObject* Obj = Data.GetAsset();
|
|
1057
|
+
if (!Obj)
|
|
1058
|
+
{
|
|
1059
|
+
FailedLoad.Add(PkgName);
|
|
1060
|
+
continue;
|
|
1061
|
+
}
|
|
1062
|
+
Batch.Emplace(TWeakObjectPtr<UObject>(Obj), NewPkgPath, NewName);
|
|
1063
|
+
}
|
|
1064
|
+
|
|
1065
|
+
if (FailedLoad.Num() > 0)
|
|
1066
|
+
{
|
|
1067
|
+
return MCPError(FString::Printf(
|
|
1068
|
+
TEXT("Found %d orphan external(s) at %s* but failed to load %d. Aborting reconcile."),
|
|
1069
|
+
Orphans.Num(), *(SrcMount + TEXT("__ExternalActors__/") + SrcRel), FailedLoad.Num()));
|
|
1070
|
+
}
|
|
1071
|
+
|
|
1072
|
+
const bool bOk = AssetTools.RenameAssets(Batch);
|
|
1073
|
+
|
|
1074
|
+
auto R = MCPSuccess();
|
|
1075
|
+
R->SetStringField(TEXT("sourcePath"), SourceAssetPath);
|
|
1076
|
+
R->SetStringField(TEXT("destinationPath"), DestAssetPath);
|
|
1077
|
+
R->SetStringField(TEXT("kind"), TEXT("orphan_reconcile"));
|
|
1078
|
+
R->SetBoolField(TEXT("success"), bOk);
|
|
1079
|
+
R->SetNumberField(TEXT("externalActors"), OrphanActors);
|
|
1080
|
+
R->SetNumberField(TEXT("externalObjects"), Orphans.Num() - OrphanActors);
|
|
1081
|
+
R->SetNumberField(TEXT("totalRenamed"), Batch.Num());
|
|
1082
|
+
|
|
1083
|
+
if (!bOk)
|
|
1084
|
+
{
|
|
1085
|
+
return MCPError(FString::Printf(
|
|
1086
|
+
TEXT("Orphan reconcile failed: RenameAssets returned false on %d external(s). State may be partial."),
|
|
1087
|
+
Batch.Num()));
|
|
1088
|
+
}
|
|
1089
|
+
|
|
1090
|
+
MCPSetUpdated(R);
|
|
852
1091
|
return MCPResult(R);
|
|
853
1092
|
}
|
|
854
1093
|
|
|
@@ -892,10 +1131,17 @@ TSharedPtr<FJsonValue> FAssetHandlers::RenameAsset(const TSharedPtr<FJsonObject>
|
|
|
892
1131
|
}
|
|
893
1132
|
|
|
894
1133
|
// Idempotency: if source is absent but destination exists, prior run succeeded.
|
|
1134
|
+
// For Worlds, also reconcile any externals stranded at the source path - the
|
|
1135
|
+
// .umap moving without its externals is exactly the #409 failure mode, and
|
|
1136
|
+
// re-running rename_asset should fix it instead of silently no-opping.
|
|
895
1137
|
if (!UEditorAssetLibrary::DoesAssetExist(SourcePath))
|
|
896
1138
|
{
|
|
897
1139
|
if (UEditorAssetLibrary::DoesAssetExist(DestPath))
|
|
898
1140
|
{
|
|
1141
|
+
if (IsWorldAsset(DestPath))
|
|
1142
|
+
{
|
|
1143
|
+
return ReconcileOrphanExternals(SourcePath, DestPath);
|
|
1144
|
+
}
|
|
899
1145
|
auto Noop = MCPSuccess();
|
|
900
1146
|
MCPSetExisted(Noop);
|
|
901
1147
|
Noop->SetStringField(TEXT("sourcePath"), SourcePath);
|
|
@@ -907,10 +1153,12 @@ TSharedPtr<FJsonValue> FAssetHandlers::RenameAsset(const TSharedPtr<FJsonObject>
|
|
|
907
1153
|
|
|
908
1154
|
// #409: Worlds carry external actor/object packages in /Game/__ExternalActors__/<LevelPath>/.
|
|
909
1155
|
// The plain UEditorAssetLibrary::RenameAsset path silently orphans those - route through
|
|
910
|
-
// a world-aware batch rename instead.
|
|
1156
|
+
// a world-aware batch rename instead. `force` lets a rollback call step over
|
|
1157
|
+
// orphans at the destination left by a partial forward rename.
|
|
911
1158
|
if (IsWorldAsset(SourcePath))
|
|
912
1159
|
{
|
|
913
|
-
|
|
1160
|
+
const bool bForce = OptionalBool(Params, TEXT("force"), false);
|
|
1161
|
+
return RenameWorldWithExternals(SourcePath, DestPath, bForce);
|
|
914
1162
|
}
|
|
915
1163
|
|
|
916
1164
|
bool bOk = UEditorAssetLibrary::RenameAsset(SourcePath, DestPath);
|