@liangjie559567/ultrapower 5.4.8 → 5.5.0
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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/bridge/codex-server.cjs +1 -0
- package/bridge/gemini-server.cjs +4 -2
- package/bridge/mcp-server.cjs +75 -4
- package/bridge/team-bridge.cjs +400 -55
- package/dist/features/rate-limit-wait/daemon.d.ts.map +1 -1
- package/dist/features/rate-limit-wait/daemon.js +39 -6
- package/dist/features/rate-limit-wait/daemon.js.map +1 -1
- package/dist/hooks/__tests__/bridge-security.test.js +94 -1
- package/dist/hooks/__tests__/bridge-security.test.js.map +1 -1
- package/dist/hooks/bridge-normalize.d.ts.map +1 -1
- package/dist/hooks/bridge-normalize.js +5 -2
- package/dist/hooks/bridge-normalize.js.map +1 -1
- package/dist/hooks/subagent-tracker/__tests__/syncSleep.test.d.ts +10 -0
- package/dist/hooks/subagent-tracker/__tests__/syncSleep.test.d.ts.map +1 -0
- package/dist/hooks/subagent-tracker/__tests__/syncSleep.test.js +112 -0
- package/dist/hooks/subagent-tracker/__tests__/syncSleep.test.js.map +1 -0
- package/dist/hooks/subagent-tracker/index.d.ts.map +1 -1
- package/dist/hooks/subagent-tracker/index.js +37 -5
- package/dist/hooks/subagent-tracker/index.js.map +1 -1
- package/dist/lib/__tests__/atomic-write.test.d.ts +2 -0
- package/dist/lib/__tests__/atomic-write.test.d.ts.map +1 -0
- package/dist/lib/__tests__/atomic-write.test.js +197 -0
- package/dist/lib/__tests__/atomic-write.test.js.map +1 -0
- package/dist/mcp/__tests__/gemini-yolo-env.test.d.ts +2 -0
- package/dist/mcp/__tests__/gemini-yolo-env.test.d.ts.map +1 -0
- package/dist/mcp/__tests__/gemini-yolo-env.test.js +274 -0
- package/dist/mcp/__tests__/gemini-yolo-env.test.js.map +1 -0
- package/dist/mcp/gemini-core.d.ts +1 -0
- package/dist/mcp/gemini-core.d.ts.map +1 -1
- package/dist/mcp/gemini-core.js +11 -2
- package/dist/mcp/gemini-core.js.map +1 -1
- package/dist/notifications/__tests__/sleepMs.test.d.ts +10 -0
- package/dist/notifications/__tests__/sleepMs.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/sleepMs.test.js +117 -0
- package/dist/notifications/__tests__/sleepMs.test.js.map +1 -0
- package/dist/notifications/session-registry.d.ts.map +1 -1
- package/dist/notifications/session-registry.js +35 -2
- package/dist/notifications/session-registry.js.map +1 -1
- package/dist/team/mcp-team-bridge.d.ts.map +1 -1
- package/dist/team/mcp-team-bridge.js +2 -1
- package/dist/team/mcp-team-bridge.js.map +1 -1
- package/dist/tools/__tests__/state-tools.test.js +76 -0
- package/dist/tools/__tests__/state-tools.test.js.map +1 -1
- package/dist/tools/lsp/__tests__/client-timer-buffer.test.d.ts +11 -0
- package/dist/tools/lsp/__tests__/client-timer-buffer.test.d.ts.map +1 -0
- package/dist/tools/lsp/__tests__/client-timer-buffer.test.js +222 -0
- package/dist/tools/lsp/__tests__/client-timer-buffer.test.js.map +1 -0
- package/dist/tools/lsp/__tests__/command-exists.test.d.ts +2 -0
- package/dist/tools/lsp/__tests__/command-exists.test.d.ts.map +1 -0
- package/dist/tools/lsp/__tests__/command-exists.test.js +104 -0
- package/dist/tools/lsp/__tests__/command-exists.test.js.map +1 -0
- package/dist/tools/lsp/client.d.ts.map +1 -1
- package/dist/tools/lsp/client.js +15 -0
- package/dist/tools/lsp/client.js.map +1 -1
- package/dist/tools/lsp/servers.d.ts +7 -1
- package/dist/tools/lsp/servers.d.ts.map +1 -1
- package/dist/tools/lsp/servers.js +14 -3
- package/dist/tools/lsp/servers.js.map +1 -1
- package/dist/tools/state-tools.d.ts +9 -8
- package/dist/tools/state-tools.d.ts.map +1 -1
- package/dist/tools/state-tools.js +44 -1
- package/dist/tools/state-tools.js.map +1 -1
- package/docs/reviews/draft-prd-ultrapower-pain-fix/review_tech.md +219 -0
- package/docs/reviews/draft_prd_pain_points/review_domain.md +215 -0
- package/docs/reviews/ultrapower-full-bugfix-plan/review_product.md +135 -0
- package/docs/reviews/ultrapower-pain-points/review_critic.md +181 -0
- package/docs/reviews/ultrapower-pain-points/review_ux.md +167 -0
- package/package.json +1 -1
|
@@ -6,14 +6,15 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { z } from 'zod';
|
|
8
8
|
import { ToolDefinition } from './types.js';
|
|
9
|
-
declare const STATE_TOOL_MODES: [
|
|
9
|
+
declare const STATE_TOOL_MODES: readonly ["autopilot", "ultrapilot", "swarm", "pipeline", "team", "ralph", "ultrawork", "ultraqa", "ralplan"];
|
|
10
|
+
type StateToolMode = typeof STATE_TOOL_MODES[number];
|
|
10
11
|
export declare const stateReadTool: ToolDefinition<{
|
|
11
|
-
mode: z.ZodEnum<
|
|
12
|
+
mode: z.ZodEnum<[StateToolMode, ...StateToolMode[]]>;
|
|
12
13
|
workingDirectory: z.ZodOptional<z.ZodString>;
|
|
13
14
|
session_id: z.ZodOptional<z.ZodString>;
|
|
14
15
|
}>;
|
|
15
16
|
export declare const stateWriteTool: ToolDefinition<{
|
|
16
|
-
mode: z.ZodEnum<
|
|
17
|
+
mode: z.ZodEnum<[StateToolMode, ...StateToolMode[]]>;
|
|
17
18
|
active: z.ZodOptional<z.ZodBoolean>;
|
|
18
19
|
iteration: z.ZodOptional<z.ZodNumber>;
|
|
19
20
|
max_iterations: z.ZodOptional<z.ZodNumber>;
|
|
@@ -28,7 +29,7 @@ export declare const stateWriteTool: ToolDefinition<{
|
|
|
28
29
|
session_id: z.ZodOptional<z.ZodString>;
|
|
29
30
|
}>;
|
|
30
31
|
export declare const stateClearTool: ToolDefinition<{
|
|
31
|
-
mode: z.ZodEnum<
|
|
32
|
+
mode: z.ZodEnum<[StateToolMode, ...StateToolMode[]]>;
|
|
32
33
|
workingDirectory: z.ZodOptional<z.ZodString>;
|
|
33
34
|
session_id: z.ZodOptional<z.ZodString>;
|
|
34
35
|
}>;
|
|
@@ -37,7 +38,7 @@ export declare const stateListActiveTool: ToolDefinition<{
|
|
|
37
38
|
session_id: z.ZodOptional<z.ZodString>;
|
|
38
39
|
}>;
|
|
39
40
|
export declare const stateGetStatusTool: ToolDefinition<{
|
|
40
|
-
mode: z.ZodOptional<z.ZodEnum<
|
|
41
|
+
mode: z.ZodOptional<z.ZodEnum<[StateToolMode, ...StateToolMode[]]>>;
|
|
41
42
|
workingDirectory: z.ZodOptional<z.ZodString>;
|
|
42
43
|
session_id: z.ZodOptional<z.ZodString>;
|
|
43
44
|
}>;
|
|
@@ -45,11 +46,11 @@ export declare const stateGetStatusTool: ToolDefinition<{
|
|
|
45
46
|
* All state tools for registration
|
|
46
47
|
*/
|
|
47
48
|
export declare const stateTools: (ToolDefinition<{
|
|
48
|
-
mode: z.ZodEnum<
|
|
49
|
+
mode: z.ZodEnum<[StateToolMode, ...StateToolMode[]]>;
|
|
49
50
|
workingDirectory: z.ZodOptional<z.ZodString>;
|
|
50
51
|
session_id: z.ZodOptional<z.ZodString>;
|
|
51
52
|
}> | ToolDefinition<{
|
|
52
|
-
mode: z.ZodEnum<
|
|
53
|
+
mode: z.ZodEnum<[StateToolMode, ...StateToolMode[]]>;
|
|
53
54
|
active: z.ZodOptional<z.ZodBoolean>;
|
|
54
55
|
iteration: z.ZodOptional<z.ZodNumber>;
|
|
55
56
|
max_iterations: z.ZodOptional<z.ZodNumber>;
|
|
@@ -66,7 +67,7 @@ export declare const stateTools: (ToolDefinition<{
|
|
|
66
67
|
workingDirectory: z.ZodOptional<z.ZodString>;
|
|
67
68
|
session_id: z.ZodOptional<z.ZodString>;
|
|
68
69
|
}> | ToolDefinition<{
|
|
69
|
-
mode: z.ZodOptional<z.ZodEnum<
|
|
70
|
+
mode: z.ZodOptional<z.ZodEnum<[StateToolMode, ...StateToolMode[]]>>;
|
|
70
71
|
workingDirectory: z.ZodOptional<z.ZodString>;
|
|
71
72
|
session_id: z.ZodOptional<z.ZodString>;
|
|
72
73
|
}>)[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-tools.d.ts","sourceRoot":"","sources":["../../src/tools/state-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAsBxB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"state-tools.d.ts","sourceRoot":"","sources":["../../src/tools/state-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,13 +9,17 @@ import { existsSync, readFileSync, unlinkSync } from 'fs';
|
|
|
9
9
|
import { resolveStatePath, ensureOmcDir, validateWorkingDirectory, resolveSessionStatePath, ensureSessionStateDir, listSessionIds, validateSessionId, } from '../lib/worktree-paths.js';
|
|
10
10
|
import { atomicWriteJsonSync } from '../lib/atomic-write.js';
|
|
11
11
|
import { isModeActive, getActiveModes, getAllModeStatuses, clearModeState, getStateFilePath, MODE_CONFIGS, getActiveSessionsForMode } from '../hooks/mode-registry/index.js';
|
|
12
|
+
import { assertValidMode } from '../lib/validateMode.js';
|
|
12
13
|
// ExecutionMode from mode-registry (8 modes - NO ralplan)
|
|
13
14
|
const EXECUTION_MODES = [
|
|
14
15
|
'autopilot', 'ultrapilot', 'swarm', 'pipeline', 'team',
|
|
15
16
|
'ralph', 'ultrawork', 'ultraqa'
|
|
16
17
|
];
|
|
17
18
|
// Extended type for state tools - includes ralplan which has state but isn't in mode-registry
|
|
18
|
-
const STATE_TOOL_MODES = [
|
|
19
|
+
const STATE_TOOL_MODES = [
|
|
20
|
+
'autopilot', 'ultrapilot', 'swarm', 'pipeline', 'team',
|
|
21
|
+
'ralph', 'ultrawork', 'ultraqa', 'ralplan'
|
|
22
|
+
];
|
|
19
23
|
/**
|
|
20
24
|
* Get the state file path for any mode (including swarm and ralplan).
|
|
21
25
|
*
|
|
@@ -45,6 +49,19 @@ export const stateReadTool = {
|
|
|
45
49
|
handler: async (args) => {
|
|
46
50
|
const { mode, workingDirectory, session_id } = args;
|
|
47
51
|
try {
|
|
52
|
+
// P0 安全校验:外部接口层路径遍历防护
|
|
53
|
+
// ralplan 由 Zod enum 白名单保护,不在 VALID_MODES 中但属于合法扩展值
|
|
54
|
+
if (mode !== 'ralplan') {
|
|
55
|
+
try {
|
|
56
|
+
assertValidMode(mode);
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
return {
|
|
60
|
+
content: [{ type: 'text', text: `[ultrapower] 错误:无效的状态模式:${mode}` }],
|
|
61
|
+
isError: true
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
}
|
|
48
65
|
const root = validateWorkingDirectory(workingDirectory);
|
|
49
66
|
const sessionId = session_id;
|
|
50
67
|
// Special handling for swarm (SQLite database - no session support)
|
|
@@ -180,6 +197,19 @@ export const stateWriteTool = {
|
|
|
180
197
|
handler: async (args) => {
|
|
181
198
|
const { mode, active, iteration, max_iterations, current_phase, task_description, plan_path, started_at, completed_at, error, state, workingDirectory, session_id } = args;
|
|
182
199
|
try {
|
|
200
|
+
// P0 安全校验:外部接口层路径遍历防护
|
|
201
|
+
// ralplan 由 Zod enum 白名单保护,不在 VALID_MODES 中但属于合法扩展值
|
|
202
|
+
if (mode !== 'ralplan') {
|
|
203
|
+
try {
|
|
204
|
+
assertValidMode(mode);
|
|
205
|
+
}
|
|
206
|
+
catch {
|
|
207
|
+
return {
|
|
208
|
+
content: [{ type: 'text', text: `[ultrapower] 错误:无效的状态模式:${mode}` }],
|
|
209
|
+
isError: true
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
}
|
|
183
213
|
const root = validateWorkingDirectory(workingDirectory);
|
|
184
214
|
const sessionId = session_id;
|
|
185
215
|
// Swarm uses SQLite - cannot be written via this tool
|
|
@@ -279,6 +309,19 @@ export const stateClearTool = {
|
|
|
279
309
|
handler: async (args) => {
|
|
280
310
|
const { mode, workingDirectory, session_id } = args;
|
|
281
311
|
try {
|
|
312
|
+
// P0 安全校验:外部接口层路径遍历防护
|
|
313
|
+
// ralplan 由 Zod enum 白名单保护,不在 VALID_MODES 中但属于合法扩展值
|
|
314
|
+
if (mode !== 'ralplan') {
|
|
315
|
+
try {
|
|
316
|
+
assertValidMode(mode);
|
|
317
|
+
}
|
|
318
|
+
catch {
|
|
319
|
+
return {
|
|
320
|
+
content: [{ type: 'text', text: `[ultrapower] 错误:无效的状态模式:${mode}` }],
|
|
321
|
+
isError: true
|
|
322
|
+
};
|
|
323
|
+
}
|
|
324
|
+
}
|
|
282
325
|
const root = validateWorkingDirectory(workingDirectory);
|
|
283
326
|
const sessionId = session_id;
|
|
284
327
|
// If session_id provided, clear only session-specific state
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-tools.js","sourceRoot":"","sources":["../../src/tools/state-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC1D,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,cAAc,EACd,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EACL,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,wBAAwB,EAEzB,MAAM,iCAAiC,CAAC;AAGzC,0DAA0D;AAC1D,MAAM,eAAe,GAA0B;IAC7C,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM;IACtD,OAAO,EAAE,WAAW,EAAE,SAAS;CAChC,CAAC;AAEF,8FAA8F;AAC9F,MAAM,gBAAgB,GAA0B,CAAC,GAAG,eAAe,EAAE,SAAS,CAAC,CAAC;AAGhF;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,IAAmB,EAAE,IAAY;IACrD,IAAI,YAAY,CAAC,IAAqB,CAAC,EAAE,CAAC;QACxC,OAAO,gBAAgB,CAAC,IAAI,EAAE,IAAqB,CAAC,CAAC;IACvD,CAAC;IACD,qDAAqD;IACrD,OAAO,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,+EAA+E;AAC/E,qCAAqC;AACrC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,aAAa,GAIrB;IACH,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,8IAA8I;IAC3J,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QACrE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QACvF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sNAAsN,CAAC;KACnQ;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,UAAgC,CAAC;YAEnD,oEAAoE;YACpE,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrB,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC3C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC3B,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,gGAAgG,SAAS,EAAE;6BAClH,CAAC;qBACH,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,+BAA+B,SAAS,gFAAgF;yBAC/H,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,wDAAwD;YACxD,IAAI,SAAS,EAAE,CAAC;gBACd,iBAAiB,CAAC,SAAS,CAAC,CAAC;gBAC7B,MAAM,SAAS,GAAG,YAAY,CAAC,IAAqB,CAAC;oBACnD,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAqB,EAAE,SAAS,CAAC;oBAC1D,CAAC,CAAC,uBAAuB,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;gBAEnD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC3B,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,4BAA4B,IAAI,gBAAgB,SAAS,oBAAoB,SAAS,EAAE;6BAC/F,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAED,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAElC,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,gBAAgB,IAAI,cAAc,SAAS,cAAc,SAAS,mBAAmB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU;yBACpI,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,mDAAmD;YACnD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3C,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC7B,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAqB,CAAC;oBAC1D,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAqB,EAAE,GAAG,CAAC;oBACpD,CAAC,CAAC,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBAE7C,IAAI,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACjC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,YAAY,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjD,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,4BAA4B,IAAI,2BAA2B,SAAS,sIAAsI;yBACjN,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,IAAI,MAAM,GAAG,gBAAgB,IAAI,+GAA+G,CAAC;YAEjJ,8BAA8B;YAC9B,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAClC,MAAM,IAAI,mCAAmC,SAAS,mBAAmB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,cAAc,CAAC;gBACxH,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,IAAI,mCAAmC,SAAS,kCAAkC,CAAC;gBAC3F,CAAC;YACH,CAAC;YAED,uBAAuB;YACvB,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,IAAI,wBAAwB,cAAc,CAAC,MAAM,OAAO,CAAC;gBAC/D,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;oBACjC,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAqB,CAAC;wBAC1D,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAqB,EAAE,GAAG,CAAC;wBACpD,CAAC,CAAC,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;oBAE7C,IAAI,CAAC;wBACH,MAAM,OAAO,GAAG,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;wBACxD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBAClC,MAAM,IAAI,cAAc,GAAG,aAAa,gBAAgB,mBAAmB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,cAAc,CAAC;oBAC1H,CAAC;oBAAC,MAAM,CAAC;wBACP,MAAM,IAAI,cAAc,GAAG,aAAa,gBAAgB,kCAAkC,CAAC;oBAC7F,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,MAAM;qBACb,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,2BAA2B,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBACnG,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF,+EAA+E;AAC/E,uCAAuC;AACvC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,cAAc,GActB;IACH,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,gUAAgU;IAC7U,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;QACtE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QAC/E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QACrE,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QAC5E,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QACxE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;QAC1F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAClE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QACjF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;QACrF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QACzE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;QAChI,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QACvF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sNAAsN,CAAC;KACnQ;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EACJ,IAAI,EACJ,MAAM,EACN,SAAS,EACT,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,SAAS,EACT,UAAU,EACV,YAAY,EACZ,KAAK,EACL,KAAK,EACL,gBAAgB,EAChB,UAAU,EACX,GAAG,IAAI,CAAC;QAET,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,UAAgC,CAAC;YAEnD,sDAAsD;YACtD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrB,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,kGAAkG;yBACzG,CAAC;oBACF,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,2CAA2C;YAC3C,IAAI,SAAiB,CAAC;YACtB,IAAI,SAAS,EAAE,CAAC;gBACd,iBAAiB,CAAC,SAAS,CAAC,CAAC;gBAC7B,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACvC,SAAS,GAAG,YAAY,CAAC,IAAqB,CAAC;oBAC7C,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAqB,EAAE,SAAS,CAAC;oBAC1D,CAAC,CAAC,uBAAuB,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC5B,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACvC,CAAC;YAED,kDAAkD;YAClD,MAAM,UAAU,GAA4B,EAAE,CAAC;YAE/C,yCAAyC;YACzC,IAAI,MAAM,KAAK,SAAS;gBAAE,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC;YACrD,IAAI,SAAS,KAAK,SAAS;gBAAE,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;YAC9D,IAAI,cAAc,KAAK,SAAS;gBAAE,UAAU,CAAC,cAAc,GAAG,cAAc,CAAC;YAC7E,IAAI,aAAa,KAAK,SAAS;gBAAE,UAAU,CAAC,aAAa,GAAG,aAAa,CAAC;YAC1E,IAAI,gBAAgB,KAAK,SAAS;gBAAE,UAAU,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;YACnF,IAAI,SAAS,KAAK,SAAS;gBAAE,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;YAC9D,IAAI,UAAU,KAAK,SAAS;gBAAE,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC;YACjE,IAAI,YAAY,KAAK,SAAS;gBAAE,UAAU,CAAC,YAAY,GAAG,YAAY,CAAC;YACvE,IAAI,KAAK,KAAK,SAAS;gBAAE,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;YAElD,8DAA8D;YAC9D,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjD,IAAI,CAAC,CAAC,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC;wBACzB,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;oBAC1B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,eAAe;YACf,MAAM,aAAa,GAAG;gBACpB,GAAG,UAAU;gBACb,KAAK,EAAE;oBACL,IAAI;oBACJ,SAAS,EAAE,SAAS,IAAI,IAAI;oBAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,SAAS,EAAE,kBAAkB;iBAC9B;aACF,CAAC;YAEF,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAE9C,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,SAAS,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC;YAC9E,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iKAAiK,CAAC;YAC1M,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,gCAAgC,IAAI,GAAG,WAAW,WAAW,SAAS,mBAAmB,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,cAAc,EAAE;qBACjK,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,2BAA2B,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBACnG,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF,+EAA+E;AAC/E,uCAAuC;AACvC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,cAAc,GAItB;IACH,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,iGAAiG;IAC9G,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;QACtE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QACvF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sNAAsN,CAAC;KACnQ;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,UAAgC,CAAC;YAEnD,4DAA4D;YAC5D,IAAI,SAAS,EAAE,CAAC;gBACd,iBAAiB,CAAC,SAAS,CAAC,CAAC;gBAE7B,IAAI,YAAY,CAAC,IAAqB,CAAC,EAAE,CAAC;oBACxC,MAAM,OAAO,GAAG,cAAc,CAAC,IAAqB,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;oBAEvE,IAAI,OAAO,EAAE,CAAC;wBACZ,OAAO;4BACL,OAAO,EAAE,CAAC;oCACR,IAAI,EAAE,MAAe;oCACrB,IAAI,EAAE,wCAAwC,IAAI,gBAAgB,SAAS,EAAE;iCAC9E,CAAC;yBACH,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,OAAO;4BACL,OAAO,EAAE,CAAC;oCACR,IAAI,EAAE,MAAe;oCACrB,IAAI,EAAE,sDAAsD,IAAI,gBAAgB,SAAS,EAAE;iCAC5F,CAAC;yBACH,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,qDAAqD;gBACrD,MAAM,SAAS,GAAG,uBAAuB,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;gBACjE,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC1B,UAAU,CAAC,SAAS,CAAC,CAAC;oBACtB,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,wCAAwC,IAAI,gBAAgB,SAAS,cAAc,SAAS,EAAE;6BACrG,CAAC;qBACH,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,qCAAqC,IAAI,gBAAgB,SAAS,EAAE;6BAC3E,CAAC;qBACH,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,kEAAkE;YAClE,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,MAAM,MAAM,GAAa,EAAE,CAAC;YAE5B,oBAAoB;YACpB,IAAI,YAAY,CAAC,IAAqB,CAAC,EAAE,CAAC;gBACxC,yEAAyE;gBACzE,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAqB,CAAC,CAAC;gBACtE,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;oBAChC,IAAI,cAAc,CAAC,IAAqB,EAAE,IAAI,CAAC,EAAE,CAAC;wBAChD,YAAY,EAAE,CAAC;oBACjB,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC7B,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC3C,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC;wBACH,UAAU,CAAC,SAAS,CAAC,CAAC;wBACtB,YAAY,EAAE,CAAC;oBACjB,CAAC;oBAAC,MAAM,CAAC;wBACP,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC7B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,uCAAuC;YACvC,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACxC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC7B,IAAI,YAAY,CAAC,IAAqB,CAAC,EAAE,CAAC;oBACxC,yEAAyE;oBACzE,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAqB,EAAE,GAAG,CAAC,CAAC;oBAC5E,IAAI,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;wBACjC,IAAI,cAAc,CAAC,IAAqB,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;4BACrD,YAAY,EAAE,CAAC;wBACjB,CAAC;6BAAM,CAAC;4BACN,MAAM,CAAC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;wBACjC,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,SAAS,GAAG,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;oBAC3D,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC1B,IAAI,CAAC;4BACH,UAAU,CAAC,SAAS,CAAC,CAAC;4BACtB,YAAY,EAAE,CAAC;wBACjB,CAAC;wBAAC,MAAM,CAAC;4BACP,MAAM,CAAC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;wBACjC,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,YAAY,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9C,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,qCAAqC,IAAI,EAAE;yBAClD,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,IAAI,OAAO,GAAG,2BAA2B,IAAI,0BAA0B,YAAY,EAAE,CAAC;YACtF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO,IAAI,eAAe,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,CAAC;YACD,OAAO,IAAI,4IAA4I,CAAC;YAExJ,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,OAAO;qBACd,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,4BAA4B,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBACpG,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF,+EAA+E;AAC/E,4CAA4C;AAC5C,+EAA+E;AAE/E,MAAM,CAAC,MAAM,mBAAmB,GAG3B;IACH,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE,+EAA+E;IAC5F,MAAM,EAAE;QACN,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QACvF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sNAAsN,CAAC;KACnQ;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAE9C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,UAAgC,CAAC;YAEnD,sEAAsE;YACtE,IAAI,SAAS,EAAE,CAAC;gBACd,iBAAiB,CAAC,SAAS,CAAC,CAAC;gBAE7B,kDAAkD;gBAClD,MAAM,WAAW,GAAa,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;gBAEnE,sCAAsC;gBACtC,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;oBACxE,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;wBAC5B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;wBACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBAClC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;4BACjB,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAC9B,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,sBAAsB;gBACxB,CAAC;gBAED,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC7B,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,6BAA6B,SAAS,qDAAqD;6BAClG,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAED,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAErE,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,6BAA6B,SAAS,KAAK,WAAW,CAAC,MAAM,QAAQ,QAAQ,EAAE;yBACtF,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,2DAA2D;YAC3D,MAAM,cAAc,GAAG,IAAI,GAAG,EAAoB,CAAC;YAEnD,qBAAqB;YACrB,MAAM,iBAAiB,GAAa,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9D,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAClD,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;oBACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAClC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;wBACjB,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACpC,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,sBAAsB;gBACxB,CAAC;YACH,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;gBACrC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC/B,CAAC;gBACD,cAAc,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3C,CAAC;YAED,qBAAqB;YACrB,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACxC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAC7B,MAAM,kBAAkB,GAAa,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;gBAEpE,sCAAsC;gBACtC,IAAI,CAAC;oBACH,MAAM,kBAAkB,GAAG,uBAAuB,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;oBACzE,IAAI,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;wBACnC,MAAM,OAAO,GAAG,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;wBAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBAClC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;4BACjB,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBACrC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,sBAAsB;gBACxB,CAAC;gBAED,KAAK,MAAM,IAAI,IAAI,kBAAkB,EAAE,CAAC;oBACtC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC9B,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC/B,CAAC;oBACD,cAAc,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,IAAI,cAAc,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,mDAAmD;yBAC1D,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,MAAM,KAAK,GAAa,CAAC,oBAAoB,cAAc,CAAC,IAAI,KAAK,CAAC,CAAC;YACvE,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBACpE,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvD,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;qBACvB,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,+BAA+B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBAC9F,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF,+EAA+E;AAC/E,oDAAoD;AACpD,+EAA+E;AAE/E,MAAM,CAAC,MAAM,kBAAkB,GAI1B;IACH,IAAI,EAAE,kBAAkB;IACxB,WAAW,EAAE,4GAA4G;IACzH,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QACjG,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QACvF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sNAAsN,CAAC;KACnQ;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,UAAgC,CAAC;YAEnD,IAAI,IAAI,EAAE,CAAC;gBACT,qBAAqB;gBACrB,MAAM,KAAK,GAAa,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC;gBAEjD,IAAI,SAAS,EAAE,CAAC;oBACd,0BAA0B;oBAC1B,iBAAiB,CAAC,SAAS,CAAC,CAAC;oBAC7B,MAAM,SAAS,GAAG,YAAY,CAAC,IAAqB,CAAC;wBACnD,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAqB,EAAE,SAAS,CAAC;wBAC1D,CAAC,CAAC,uBAAuB,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;oBAEnD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAqB,CAAC;wBAChD,CAAC,CAAC,YAAY,CAAC,IAAqB,EAAE,IAAI,EAAE,SAAS,CAAC;wBACtD,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE;4BAC7B,IAAI,CAAC;gCACH,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gCACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gCAClC,OAAO,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC;4BAC/B,CAAC;4BAAC,MAAM,CAAC;gCAAC,OAAO,KAAK,CAAC;4BAAC,CAAC;wBAC3B,CAAC,CAAC,EAAE,CAAC;oBAET,IAAI,YAAY,GAAG,eAAe,CAAC;oBACnC,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC1B,IAAI,CAAC;4BACH,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;4BACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;4BAClC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;4BAC5D,IAAI,YAAY,CAAC,MAAM,IAAI,GAAG;gCAAE,YAAY,IAAI,kBAAkB,CAAC;wBACrE,CAAC;wBAAC,MAAM,CAAC;4BACP,YAAY,GAAG,0BAA0B,CAAC;wBAC5C,CAAC;oBACH,CAAC;oBAED,KAAK,CAAC,IAAI,CAAC,gBAAgB,SAAS,EAAE,CAAC,CAAC;oBACxC,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBACrD,KAAK,CAAC,IAAI,CAAC,qBAAqB,SAAS,EAAE,CAAC,CAAC;oBAC7C,KAAK,CAAC,IAAI,CAAC,iBAAiB,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBACpE,KAAK,CAAC,IAAI,CAAC,oCAAoC,YAAY,UAAU,CAAC,CAAC;oBAEvE,OAAO;wBACL,OAAO,EAAE,CAAC;gCACR,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;6BACvB,CAAC;qBACH,CAAC;gBACJ,CAAC;gBAED,4CAA4C;gBAC5C,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC5C,MAAM,YAAY,GAAG,YAAY,CAAC,IAAqB,CAAC;oBACtD,CAAC,CAAC,YAAY,CAAC,IAAqB,EAAE,IAAI,CAAC;oBAC3C,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE;wBAC9B,IAAI,CAAC;4BACH,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;4BAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;4BAClC,OAAO,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC;wBAC/B,CAAC;wBAAC,MAAM,CAAC;4BAAC,OAAO,KAAK,CAAC;wBAAC,CAAC;oBAC3B,CAAC,CAAC,EAAE,CAAC;gBAET,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAC9B,KAAK,CAAC,IAAI,CAAC,iBAAiB,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC3D,KAAK,CAAC,IAAI,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC;gBAC9C,KAAK,CAAC,IAAI,CAAC,iBAAiB,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;gBAEvE,qCAAqC;gBACrC,MAAM,cAAc,GAAG,YAAY,CAAC,IAAqB,CAAC;oBACxD,CAAC,CAAC,wBAAwB,CAAC,IAAqB,EAAE,IAAI,CAAC;oBACvD,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;wBAChC,IAAI,CAAC;4BACH,MAAM,WAAW,GAAG,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;4BAC7D,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gCAC5B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gCACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gCAClC,OAAO,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC;4BAC/B,CAAC;4BACD,OAAO,KAAK,CAAC;wBACf,CAAC;wBAAC,MAAM,CAAC;4BACP,OAAO,KAAK,CAAC;wBACf,CAAC;oBACH,CAAC,CAAC,CAAC;gBAEP,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,KAAK,CAAC,IAAI,CAAC,wBAAwB,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC7D,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;wBACjC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;gBACvE,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;yBACvB,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,mBAAmB;YACnB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACrD,MAAM,KAAK,GAAG,SAAS;gBACrB,CAAC,CAAC,CAAC,kCAAkC,SAAS,KAAK,CAAC;gBACpD,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;YAE/B,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC;gBACvD,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,MAAM,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;gBACnF,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,aAAa,IAAI,CAAC,CAAC;gBAEnD,iDAAiD;gBACjD,IAAI,CAAC,SAAS,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5C,MAAM,cAAc,GAAG,wBAAwB,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACnE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC9B,KAAK,CAAC,IAAI,CAAC,uBAAuB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACjE,CAAC;gBACH,CAAC;YACH,CAAC;YAED,2CAA2C;YAC3C,MAAM,WAAW,GAAG,SAAS;gBAC3B,CAAC,CAAC,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC;gBACrD,CAAC,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAClC,IAAI,aAAa,GAAG,KAAK,CAAC;YAC1B,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;oBACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAClC,aAAa,GAAG,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC;gBACxC,CAAC;gBAAC,MAAM,CAAC;oBACP,sBAAsB;gBACxB,CAAC;YACH,CAAC;YACD,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC;YAC9D,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,iBAAiB,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;YACnF,KAAK,CAAC,IAAI,CAAC,cAAc,WAAW,IAAI,CAAC,CAAC;YAE1C,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;qBACvB,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;qBACxF,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,aAAa;IACb,cAAc;IACd,cAAc;IACd,mBAAmB;IACnB,kBAAkB;CACnB,CAAC"}
|
|
1
|
+
{"version":3,"file":"state-tools.js","sourceRoot":"","sources":["../../src/tools/state-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
# Tech Feasibility Review: ultrapower 全面痛点修复计划
|
|
2
|
+
|
|
3
|
+
> 评审基于真实代码读取,所有结论均有文件行号佐证。
|
|
4
|
+
> 评审日期:2026-02-26
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## 整体评分:6 / 10
|
|
9
|
+
|
|
10
|
+
**核心判断**:计划整体方向正确,P0 安全问题识别准确,但存在三处系统性低估:
|
|
11
|
+
1. 分批粒度严重不足("2个任务覆盖8个修复"的估计在实证面前站不住脚)
|
|
12
|
+
2. P0-6/P0-7 的破坏性变更风险被忽视
|
|
13
|
+
3. P1-9(delegation-enforcer 集成)被极度低估
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## 1. Architecture Impact(架构影响)
|
|
18
|
+
|
|
19
|
+
| 维度 | 状态 | 备注 |
|
|
20
|
+
|------|------|------|
|
|
21
|
+
| Schema Changes | No | 无 DB Schema,状态文件格式不变 |
|
|
22
|
+
| API Changes | Partial | P0-7 改变子进程通信协议,P1-9 改变 hook 路由 |
|
|
23
|
+
| Breaking Changes | Yes | P0-6/P0-7 对 Windows ESM 和子进程通信有破坏性风险 |
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 2. Risk Assessment(风险评估)
|
|
28
|
+
|
|
29
|
+
- Complexity Score: **7 / 10**
|
|
30
|
+
- POC Required: **Yes**(P0-6、P0-7、P1-9 三项各需独立 POC)
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## 3. 肯定点
|
|
35
|
+
|
|
36
|
+
**P0-1(assertValidMode 缺失)**
|
|
37
|
+
实证:`src/lib/validateMode.ts` 已有完善的 `assertValidMode()` 实现(行 63-75),`src/features/state-manager/index.ts` 的 `getStatePath()`(行 82-86)直接拼接 `name` 参数而未校验。修复方向正确,改动局部,工作量真实,无破坏性。
|
|
38
|
+
|
|
39
|
+
**P0-2(execSync 字符串拼接)**
|
|
40
|
+
实证:`src/features/auto-update.ts` 行 611 存在 `execSync('which omc 2>/dev/null || where omc 2>NUL', ...)` 的 Shell 字符串拼接,属于真实命令注入面。改用 `execFileSync('which', ['omc'])` 方案正确,改动范围可控。
|
|
41
|
+
|
|
42
|
+
**P0-4(gemini --yolo 硬编码)**
|
|
43
|
+
实证:`src/mcp/gemini-core.ts` 行 89 确认 `args = ['-p=.', '--yolo']` 硬编码,`src/team/mcp-team-bridge.ts` 行 347 亦有同样问题。改为环境变量 `OMC_GEMINI_YOLO` 方案合理,不影响调用协议。
|
|
44
|
+
|
|
45
|
+
**P2-1(superpowers: 命名空间)**
|
|
46
|
+
实证:全代码库对 `superpowers:` 的 grep 结果为 0 条,说明该命名空间残留已不存在或极少。批量替换风险远低于 PRD 描述,可能已由之前版本清理完毕。
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 4. 差异点/问题
|
|
51
|
+
|
|
52
|
+
### D-TL-01: P0-1 修复范围被低估——存在两个独立的 getStatePath 实现
|
|
53
|
+
|
|
54
|
+
- 严重度: HIGH
|
|
55
|
+
- 描述: PRD 描述"在 getStatePath() 入口添加 assertValidMode()",但实际代码中存在**两个完全独立**的 `getStatePath` 函数:
|
|
56
|
+
- `src/features/state-manager/index.ts`(行 82-86):接受 `name: string` + `location: StateLocation`,通过 `StateLocation` 枚举约束,`name` 参数无白名单校验。
|
|
57
|
+
- `src/tools/state-tools.ts`(行 50):接受 `mode: StateToolMode`,通过自定义类型约束,需独立评估。
|
|
58
|
+
两处都需要修复,但修复方式不同——前者需要 `assertValidMode`,后者需要验证其 `StateToolMode` 类型是否已覆盖所有路径。PRD 仅提及一处,实际工作量加倍。
|
|
59
|
+
- 建议: 修复前须对 `getStatePath` 的所有调用点做全量 grep 扫描,确认两处均已处理。
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
### D-TL-02: P0-3(release-steps.mjs)问题描述与实际代码不符
|
|
64
|
+
|
|
65
|
+
- 严重度: MEDIUM
|
|
66
|
+
- 描述: PRD 称"release-steps.mjs 存在 `git push origin main`",但读取实际文件(行 1-60)后,该文件**不包含** `git push origin main`。它包含的是 `npm publish`、`gh release create`、`run('tsc --noEmit')` 等操作,均通过封装函数 `run()` 调用 execSync,且有 dryRun 保护。若原始问题已不存在,此修复是无效工作;若问题存在于未读取的后半段,PRD 未精确定位。
|
|
67
|
+
- 建议: 重新精确定位问题行号再排入修复计划。若已不存在,从 P0 清单移除,避免浪费 Batch 1 预算。
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
### D-TL-03: P0-6(Windows ESM)修复方案存在破坏性变更风险
|
|
72
|
+
|
|
73
|
+
- 严重度: HIGH
|
|
74
|
+
- 描述: PRD 提出将模块路径改为 `pathToFileURL(modulePath).href`。查看 `src/hooks/bridge.ts` 末尾(行 1252):`if (import.meta.url === pathToFileURL(process.argv[1]).href)` —— 项目**已经使用** `pathToFileURL`,说明部分路径已修复,但并非全量。真正的风险在于:动态 `import(modulePath)` 在 Windows 上若 `modulePath` 是绝对 Win32 路径(如 `C:\Users\...`),Node.js ESM loader 会拒绝,必须转为 file URL。但改动后,所有**依赖原始路径字符串做字符串比对**的逻辑(如 `existsSync`、`readFileSync`)必须保留原始路径,只有 `import()` 动态调用才用 URL 形式。混用容易引入 URL/path 类型混乱 bug。
|
|
75
|
+
- 建议: 需要一个专项 POC,在真实 Windows 环境下验证改动不破坏懒加载模块链(bridge.ts 中大量 `await import('./ralph/index.js')` 等)。不能凭推理假设安全。
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
### D-TL-04: P0-7(JSON.stringify 注入)修复方案对 daemon 通信机制改变被低估
|
|
80
|
+
|
|
81
|
+
- 严重度: HIGH
|
|
82
|
+
- 描述: PRD 提出"通过 stdin/环境变量传递 config 而非 JSON.stringify 字符串拼接"。`src/mcp/codex-core.ts`(行 292-293)已经使用 stdin 传递 prompt(`child.stdin.write(prompt); child.stdin.end()`),说明 prompt 通道已安全。但若 config 对象从 JSON.stringify 改为环境变量,会引入:
|
|
83
|
+
1. 环境变量大小限制(Windows 单变量上限约 32767 字节,Linux 通常 128KB ARG_MAX 总量)——若 config 较大,会静默截断。
|
|
84
|
+
2. 子进程环境变量继承链污染——敏感 config 字段暴露在 `/proc/{pid}/environ`(Linux)或任务管理器(Windows)中,安全性反而降低。
|
|
85
|
+
3. 若改为 stdin,则与现有 prompt stdin 管道冲突,需要协议设计(如 JSON framing)。
|
|
86
|
+
PRD 未分析任何一条,就定性为"修复方案",风险评估缺失。
|
|
87
|
+
- 建议: 明确区分哪个调用点的哪种数据存在注入风险,分别选择最小侵入方案。不得笼统套用"改为 stdin"方案。
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
### D-TL-05: Batch 1 "2个任务覆盖8个修复"严重低估工作量
|
|
92
|
+
|
|
93
|
+
- 严重度: HIGH
|
|
94
|
+
- 描述: PRD 的分批声称"Batch 1:8个修复(P0-1~7 + P1-6/7),估计2个任务"。按照实际代码复杂度分解:
|
|
95
|
+
- P0-1:涉及 2 个独立 getStatePath 实现 + 全量调用点审查(见 D-TL-01)
|
|
96
|
+
- P0-2:execSync 实例分散在 auto-update.ts、teleport.ts、providers/index.ts 等多个文件
|
|
97
|
+
- P0-3:定位问题存疑(见 D-TL-02)
|
|
98
|
+
- P0-4:gemini-core.ts + mcp-team-bridge.ts 两处硬编码 + 环境变量文档
|
|
99
|
+
- P0-5:需要找到角色列表加载逻辑并重构错误处理
|
|
100
|
+
- P0-6:Windows ESM 全量扫描 + POC 验证(见 D-TL-03)
|
|
101
|
+
- P0-7:协议设计决策 + 实现(见 D-TL-04)
|
|
102
|
+
- P1-6/7:计时器泄漏修复,需要找到所有 setTimeout 调用点
|
|
103
|
+
保守估计:Batch 1 实际工作量为 **6-8 个独立任务**,而非 2 个。低估超过 3 倍会直接导致执行阶段范围蔓延和计划失控。
|
|
104
|
+
- 建议: 按实际修复项 1:1 拆分任务,不允许将 POC 工作与实现工作合并计入同一任务。
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
### D-TL-06: P1-9(delegation-enforcer 集成到 bridge.ts processHook)复杂度被极度低估
|
|
109
|
+
|
|
110
|
+
- 严重度: HIGH
|
|
111
|
+
- 描述: PRD 描述为"bridge.ts processHook 集成 delegation-enforcer",表述像一行调用。但阅读实际代码后:
|
|
112
|
+
1. `src/hooks/bridge.ts` 的 `processPreToolUse()`(行 765-895)已经调用 `processOrchestratorPreTool()`(行 769-783),后者来自 `./omc-orchestrator/index.ts`,已经是 delegation 检查的入口。
|
|
113
|
+
2. `src/features/delegation-enforcer.ts` 的 `enforceModel()` 是独立的模型注入逻辑,与 orchestrator 的 delegation 检查是**两个不同维度**的功能。
|
|
114
|
+
3. 若目的是在 `processHook` 中集成 `delegation-enforcer`,需要明确:在哪个 hook type 注入、修改哪个 toolInput 字段、是否影响现有 `processOrchestratorPreTool` 的 `continue: false` 路径、如何处理 `modifiedInput` 返回给 Claude Code 的协议。
|
|
115
|
+
4. `src/__tests__/delegation-enforcer-integration.test.ts` 已存在集成测试,说明之前有过集成尝试,需要理解其当前状态。
|
|
116
|
+
真实工作量:需要 1 个完整的设计文档 + 至少 3 个任务(设计、实现、测试)。
|
|
117
|
+
- 建议: 在 Batch 2 中将 P1-9 单独拆分为子 PRD,明确接口定义和集成协议,不允许以"一行调用"级别的估计进入执行。
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
### D-TL-07: P2 测试新增"各≥10 cases"目标与项目测试现状不匹配
|
|
122
|
+
|
|
123
|
+
- 严重度: MEDIUM
|
|
124
|
+
- 描述: vitest.config.ts 显示测试超时 30s、使用 forks pool,项目已有 210 个测试文件(来自 find 统计)。PRD 要求新增 3 个测试文件各≥10 cases(atomic-write、version、hooks),但:
|
|
125
|
+
1. `src/__tests__/atomic-write` 和 `src/__tests__/validateMode.test.ts` 可能已存在,需要先确认现状。
|
|
126
|
+
2. `hooks` 测试文件已有 `src/hooks/__tests__/bridge-routing.test.ts`,新增文件需要明确与已有测试的边界划分。
|
|
127
|
+
3. 10 cases 的数量目标很低,但也意味着测试覆盖意图不够清晰——缺少具体的测试场景描述(正常路径、边界情况、错误路径各几个),执行者将难以判断"完成"。
|
|
128
|
+
- 建议: 对每个测试文件提供具体场景列表(不需要代码,需要场景名称),而非仅声明数量目标。
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
### D-TL-08: P2 命名空间替换"superpowers: → ultrapower:"风险被高估,但验证方案缺失
|
|
133
|
+
|
|
134
|
+
- 严重度: LOW
|
|
135
|
+
- 描述: 实际 grep 结果显示全代码库(src + scripts,排除 node_modules/dist)中 `superpowers:` 出现 **0 次**,说明该替换可能已完成或从未存在。PRD 将其列为 P2 修复项消耗评审资源,但若替换已完成,此项为无效工作。
|
|
136
|
+
另一方面,若问题存在于 dist/、templates/ 或文档文件(.md、.json)中,PRD 未说明替换范围。
|
|
137
|
+
- 建议: 在计划开始前做一次全量扫描(包含 dist、docs、templates),若结果为 0 则从计划移除,若有遗留则精确定位文件列表后再评估工作量。
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
### D-TL-09: 验收标准"Windows 真实环境验证"缺乏 CI 自动化路径
|
|
142
|
+
|
|
143
|
+
- 严重度: MEDIUM
|
|
144
|
+
- 描述: PRD 将"Windows 真实验证"列为验收标准之一,但:
|
|
145
|
+
1. 当前 vitest.config.ts 未配置任何平台矩阵,测试默认在当前平台运行。
|
|
146
|
+
2. GitHub Actions 上添加 `windows-latest` runner 需要修改 CI 配置,且 Windows 下 Node.js ESM + path 处理与 Linux 行为差异较大,需要独立的 test case。
|
|
147
|
+
3. P0-6 的 Windows ESM fix 若无 Windows CI 覆盖,则验收标准在实践中无法自动化验证,退化为人工验证——这不可重复、不可持续。
|
|
148
|
+
- 建议: 将"Windows CI 矩阵配置"作为独立任务加入 Batch 3,在 P0-6 修复合并前完成,使验收标准可在 CI 中自动化执行。
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
### D-TL-10: 整体修复计划缺少依赖关系图,执行顺序存在隐性风险
|
|
153
|
+
|
|
154
|
+
- 严重度: MEDIUM
|
|
155
|
+
- 描述: 各修复项之间存在未声明的依赖关系:
|
|
156
|
+
- P0-1(assertValidMode 调用)依赖 `validateMode.ts` 本身正确——若 VALID_MODES 白名单有遗漏,修复引入新 bug。当前白名单为 8 个模式,但 `src/tools/state-tools.ts` 中的 `StateToolMode` 可能包含额外模式(如 ralplan),需要对齐。
|
|
157
|
+
- P0-6(Windows ESM)与 P0-7(stdin 传递)若同时修改子进程通信路径,合并冲突概率极高,必须串行而非并行。
|
|
158
|
+
- P1-9(delegation-enforcer)依赖 bridge.ts 的 `processPreToolUse` 路径,而 P0-2 的 execSync 修复也涉及同一文件区域,若并行执行会产生冲突。
|
|
159
|
+
- P2 测试文件依赖 P0/P1 修复完成后的稳定接口,不应在修复期间同步开发。
|
|
160
|
+
- 建议: 在执行前绘制简单的依赖 DAG(有向无环图),将存在冲突的修复项明确标记为串行。
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
## 5. Implementation Plan(大致实现计划)
|
|
165
|
+
|
|
166
|
+
**建议重构后的分批方案:**
|
|
167
|
+
|
|
168
|
+
**Batch 1(P0 安全,串行):10-12 个任务**
|
|
169
|
+
- 1a. 全量扫描 getStatePath 调用点,确认两处实现(state-manager + state-tools)均需修复
|
|
170
|
+
- 1b. 修复 state-manager/index.ts 中 getStatePath + readState 路径
|
|
171
|
+
- 1c. 修复 state-tools.ts 中独立 getStatePath(若需要)
|
|
172
|
+
- 1d. execSync 字符串拼接全量替换(auto-update.ts + 其他文件)
|
|
173
|
+
- 1e. P0-3 重新定位问题,若存在则修复
|
|
174
|
+
- 1f. gemini-core.ts + mcp-team-bridge.ts --yolo 环境变量化
|
|
175
|
+
- 1g. P0-5 角色列表静默失败修复
|
|
176
|
+
- 1h. **POC**:Windows ESM import URL 修复验证
|
|
177
|
+
- 1i. P0-6 全量实施(依赖 1h POC 通过)
|
|
178
|
+
- 1j. **POC**:P0-7 子进程 config 传递方案(stdin framing vs 环境变量上限评估)
|
|
179
|
+
- 1k. P0-7 实施(依赖 1j POC 通过)
|
|
180
|
+
- 1l. P1-6/7 计时器泄漏修复
|
|
181
|
+
|
|
182
|
+
**Batch 2(P1 稳定性,部分并行):8 个任务**
|
|
183
|
+
- 2a-e. P1-1~5(platform 分支、path.relative、path.resolve、tmpdir、executionCounters)
|
|
184
|
+
- 2f. P1-8(返回 false/抛出未实现错误)
|
|
185
|
+
- 2g. P1-10(等待时间上限)
|
|
186
|
+
- 2h. P1-11(先 kill 再写状态)
|
|
187
|
+
|
|
188
|
+
**Batch 3(P1-9 delegation-enforcer,需独立子 PRD):3 个任务**
|
|
189
|
+
- 3a. 设计文档:明确集成接口、hook type 范围、modifiedInput 协议
|
|
190
|
+
- 3b. 实现
|
|
191
|
+
- 3c. 集成测试补充
|
|
192
|
+
|
|
193
|
+
**Batch 4(P2 + Windows CI):5 个任务**
|
|
194
|
+
- 4a. superpowers: 全量扫描确认(若 0 结果则关闭)
|
|
195
|
+
- 4b. 测试文件新增(有具体场景列表)
|
|
196
|
+
- 4c. Windows CI 矩阵配置(GitHub Actions)
|
|
197
|
+
- 4d. 文档版本号同步
|
|
198
|
+
- 4e. 回归验证(4698+ 测试零回归)
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## 6. Conclusion(结论)
|
|
203
|
+
|
|
204
|
+
- **评审决定:POC Required(需原型验证后方可执行)**
|
|
205
|
+
- **理由:P0-6、P0-7、P1-9 三项存在未验证的技术假设,若直接进入 Batch 1 全量实施,有较高概率在 Windows 平台或子进程通信层引入回归。**
|
|
206
|
+
|
|
207
|
+
**必须在 Batch 1 正式开始前完成的 POC:**
|
|
208
|
+
1. Windows ESM import URL 修复(P0-6)——在真实 Windows 环境验证动态 import 路径
|
|
209
|
+
2. 子进程 config 传递方案选型(P0-7)——验证 stdin framing 与现有 prompt stdin 不冲突
|
|
210
|
+
|
|
211
|
+
**估计工作量:**
|
|
212
|
+
- 原 PRD 估计:约 8 个任务
|
|
213
|
+
- 修订后估计:**约 28-34 个任务**(含 POC、Windows CI、P1-9 子 PRD)
|
|
214
|
+
- 日历时间:依团队规模,预计 **3-5 周**(非 2 批次即可完成)
|
|
215
|
+
|
|
216
|
+
**不可协商的前提条件:**
|
|
217
|
+
- P0-6 和 P0-7 必须有 Windows 真实环境 POC 通过后才能合并
|
|
218
|
+
- P1-9 必须有设计文档经评审后才能进入实现
|
|
219
|
+
- 所有 Batch 之间必须通过完整测试套件(4698+ cases zero regression)才能进入下一 Batch
|