@sudosandwich/limps 2.1.0 → 2.3.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/README.md +103 -3
- package/dist/agent-parser.d.ts +10 -1
- package/dist/agent-parser.d.ts.map +1 -1
- package/dist/agent-parser.js.map +1 -1
- package/dist/cli/config-cmd.d.ts +75 -0
- package/dist/cli/config-cmd.d.ts.map +1 -1
- package/dist/cli/config-cmd.js +329 -1
- package/dist/cli/config-cmd.js.map +1 -1
- package/dist/cli/init-project.d.ts.map +1 -1
- package/dist/cli/init-project.js +8 -0
- package/dist/cli/init-project.js.map +1 -1
- package/dist/cli/mcp-client-adapter.d.ts +78 -0
- package/dist/cli/mcp-client-adapter.d.ts.map +1 -0
- package/dist/cli/mcp-client-adapter.js +209 -0
- package/dist/cli/mcp-client-adapter.js.map +1 -0
- package/dist/cli/next-task.d.ts +36 -9
- package/dist/cli/next-task.d.ts.map +1 -1
- package/dist/cli/next-task.js +95 -26
- package/dist/cli/next-task.js.map +1 -1
- package/dist/cli/status.d.ts.map +1 -1
- package/dist/cli/status.js +3 -1
- package/dist/cli/status.js.map +1 -1
- package/dist/cli.js +33 -17
- package/dist/cli.js.map +1 -1
- package/dist/commands/config/add-claude.d.ts +19 -0
- package/dist/commands/config/add-claude.d.ts.map +1 -0
- package/dist/commands/config/add-claude.js +149 -0
- package/dist/commands/config/add-claude.js.map +1 -0
- package/dist/commands/config/index.d.ts.map +1 -1
- package/dist/commands/config/index.js +1 -1
- package/dist/commands/config/index.js.map +1 -1
- package/dist/commands/config/update.d.ts +14 -0
- package/dist/commands/config/update.d.ts.map +1 -0
- package/dist/commands/config/update.js +24 -0
- package/dist/commands/config/update.js.map +1 -0
- package/dist/commands/serve.d.ts +6 -0
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +14 -19
- package/dist/commands/serve.js.map +1 -1
- package/dist/components/Confirm.d.ts +13 -0
- package/dist/components/Confirm.d.ts.map +1 -0
- package/dist/components/Confirm.js +44 -0
- package/dist/components/Confirm.js.map +1 -0
- package/dist/config.d.ts +52 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +50 -0
- package/dist/config.js.map +1 -1
- package/dist/server-main.d.ts.map +1 -1
- package/dist/server-main.js +17 -2
- package/dist/server-main.js.map +1 -1
- package/dist/tools/process-doc.d.ts +7 -0
- package/dist/tools/process-doc.d.ts.map +1 -1
- package/dist/tools/process-doc.js +45 -26
- package/dist/tools/process-doc.js.map +1 -1
- package/dist/tools/process-docs.d.ts +12 -0
- package/dist/tools/process-docs.d.ts.map +1 -1
- package/dist/tools/process-docs.js +44 -25
- package/dist/tools/process-docs.js.map +1 -1
- package/dist/utils/agent-heal.d.ts +4 -0
- package/dist/utils/agent-heal.d.ts.map +1 -0
- package/dist/utils/agent-heal.js +25 -0
- package/dist/utils/agent-heal.js.map +1 -0
- package/dist/utils/llm-policy.d.ts +16 -0
- package/dist/utils/llm-policy.d.ts.map +1 -0
- package/dist/utils/llm-policy.js +25 -0
- package/dist/utils/llm-policy.js.map +1 -0
- package/dist/watcher.d.ts +9 -1
- package/dist/watcher.d.ts.map +1 -1
- package/dist/watcher.js +30 -1
- package/dist/watcher.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/serve.d.ts
CHANGED
|
@@ -6,6 +6,12 @@ export declare const options: z.ZodObject<{
|
|
|
6
6
|
interface Props {
|
|
7
7
|
options: z.infer<typeof options>;
|
|
8
8
|
}
|
|
9
|
+
/**
|
|
10
|
+
* MCP Server command.
|
|
11
|
+
* IMPORTANT: This command must NOT render anything to stdout.
|
|
12
|
+
* MCP servers use stdio transport and stdout must only contain JSON-RPC messages.
|
|
13
|
+
* All status/error messages go to stderr via console.error().
|
|
14
|
+
*/
|
|
9
15
|
export default function ServeCommand({ options }: Props): React.ReactNode;
|
|
10
16
|
export {};
|
|
11
17
|
//# sourceMappingURL=serve.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,WAAW,yBAAyB,CAAC;AAElD,eAAO,MAAM,OAAO;;iBAElB,CAAC;AAEH,UAAU,KAAK;IACb,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CAClC;AAED;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,OAAO,EAAE,EAAE,KAAK,GAAG,KAAK,CAAC,SAAS,CAaxE"}
|
package/dist/commands/serve.js
CHANGED
|
@@ -1,31 +1,26 @@
|
|
|
1
|
-
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Text } from 'ink';
|
|
3
1
|
import { z } from 'zod';
|
|
4
|
-
import { useEffect
|
|
2
|
+
import { useEffect } from 'react';
|
|
5
3
|
import { startMcpServer } from '../server-main.js';
|
|
6
4
|
export const description = 'Start the MCP server';
|
|
7
5
|
export const options = z.object({
|
|
8
6
|
config: z.string().optional().describe('Path to config file'),
|
|
9
7
|
});
|
|
8
|
+
/**
|
|
9
|
+
* MCP Server command.
|
|
10
|
+
* IMPORTANT: This command must NOT render anything to stdout.
|
|
11
|
+
* MCP servers use stdio transport and stdout must only contain JSON-RPC messages.
|
|
12
|
+
* All status/error messages go to stderr via console.error().
|
|
13
|
+
*/
|
|
10
14
|
export default function ServeCommand({ options }) {
|
|
11
|
-
const [status, setStatus] = useState('starting');
|
|
12
|
-
const [error, setError] = useState(null);
|
|
13
15
|
useEffect(() => {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
.
|
|
19
|
-
setStatus('error');
|
|
20
|
-
setError(err.message);
|
|
16
|
+
// All output goes to stderr, not stdout
|
|
17
|
+
console.error('MCP Planning Server running on stdio');
|
|
18
|
+
startMcpServer(options.config).catch((err) => {
|
|
19
|
+
console.error(`Server error: ${err.message}`);
|
|
20
|
+
process.exit(1);
|
|
21
21
|
});
|
|
22
22
|
}, [options.config]);
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
if (status === 'starting') {
|
|
27
|
-
return _jsx(Text, { children: "Starting MCP server..." });
|
|
28
|
-
}
|
|
29
|
-
return _jsx(Text, { color: "green", children: "MCP server running" });
|
|
23
|
+
// Return null - no stdout output allowed for MCP servers
|
|
24
|
+
return null;
|
|
30
25
|
}
|
|
31
26
|
//# sourceMappingURL=serve.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,CAAC,MAAM,WAAW,GAAG,sBAAsB,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;CAC9D,CAAC,CAAC;AAMH;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,OAAO,EAAS;IACrD,SAAS,CAAC,GAAG,EAAE;QACb,wCAAwC;QACxC,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAEtD,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;YAClD,OAAO,CAAC,KAAK,CAAC,iBAAiB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAErB,yDAAyD;IACzD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interactive confirmation component using Ink.
|
|
3
|
+
* Displays a prompt and waits for user input (y/n).
|
|
4
|
+
*/
|
|
5
|
+
interface ConfirmProps {
|
|
6
|
+
message: string;
|
|
7
|
+
onConfirm: () => void;
|
|
8
|
+
onCancel: () => void;
|
|
9
|
+
defaultYes?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare function Confirm({ message, onConfirm, onCancel, defaultYes, }: ConfirmProps): React.ReactNode;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=Confirm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Confirm.d.ts","sourceRoot":"","sources":["../../src/components/Confirm.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,UAAU,YAAY;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,OAAO,CAAC,EACtB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,UAAkB,GACnB,EAAE,YAAY,GAAG,KAAK,CAAC,SAAS,CA2DhC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* Interactive confirmation component using Ink.
|
|
4
|
+
* Displays a prompt and waits for user input (y/n).
|
|
5
|
+
*/
|
|
6
|
+
import { Box, Text } from 'ink';
|
|
7
|
+
import { useInput } from 'ink';
|
|
8
|
+
import { useState } from 'react';
|
|
9
|
+
export function Confirm({ message, onConfirm, onCancel, defaultYes = false, }) {
|
|
10
|
+
const [confirmed, setConfirmed] = useState(null);
|
|
11
|
+
useInput((input, key) => {
|
|
12
|
+
// Don't process input if already confirmed/cancelled
|
|
13
|
+
if (confirmed !== null) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
if (key.return) {
|
|
17
|
+
// Enter key - use default
|
|
18
|
+
const result = defaultYes;
|
|
19
|
+
setConfirmed(result);
|
|
20
|
+
if (result) {
|
|
21
|
+
onConfirm();
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
onCancel();
|
|
25
|
+
}
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
// Handle y/Y for yes
|
|
29
|
+
if (input.toLowerCase() === 'y') {
|
|
30
|
+
setConfirmed(true);
|
|
31
|
+
onConfirm();
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
// Handle n/N or Escape for no
|
|
35
|
+
if (input.toLowerCase() === 'n' || key.escape) {
|
|
36
|
+
setConfirmed(false);
|
|
37
|
+
onCancel();
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
const defaultText = defaultYes ? 'Y/n' : 'y/N';
|
|
42
|
+
return (_jsxs(Box, { flexDirection: "column", marginY: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsxs(Text, { color: "yellow", bold: true, children: ["\u26A0\uFE0F ", message] }) }), _jsx(Box, { children: _jsxs(Text, { children: ["Continue? (", _jsx(Text, { color: "cyan", children: defaultText }), ")"] }) }), confirmed !== null && (_jsx(Box, { marginTop: 1, children: _jsx(Text, { color: confirmed ? 'green' : 'red', children: confirmed ? '✓ Confirmed' : '✗ Cancelled' }) }))] }));
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=Confirm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Confirm.js","sourceRoot":"","sources":["../../src/components/Confirm.tsx"],"names":[],"mappings":";AAAA;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AASjC,MAAM,UAAU,OAAO,CAAC,EACtB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,UAAU,GAAG,KAAK,GACL;IACb,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAiB,IAAI,CAAC,CAAC;IAEjE,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,qDAAqD;QACrD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,0BAA0B;YAC1B,MAAM,MAAM,GAAG,UAAU,CAAC;YAC1B,YAAY,CAAC,MAAM,CAAC,CAAC;YACrB,IAAI,MAAM,EAAE,CAAC;gBACX,SAAS,EAAE,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,QAAQ,EAAE,CAAC;YACb,CAAC;YACD,OAAO;QACT,CAAC;QAED,qBAAqB;QACrB,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;YAChC,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,SAAS,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,8BAA8B;QAC9B,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC9C,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,QAAQ,EAAE,CAAC;YACX,OAAO;QACT,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAE/C,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,aACpC,KAAC,GAAG,IAAC,YAAY,EAAE,CAAC,YAClB,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,IAAI,oCACnB,OAAO,IACN,GACH,EACN,KAAC,GAAG,cACF,MAAC,IAAI,8BACQ,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,WAAW,GAAQ,SAC7C,GACH,EACL,SAAS,KAAK,IAAI,IAAI,CACrB,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,YACrC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,GACrC,GACH,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
|
package/dist/config.d.ts
CHANGED
|
@@ -1,3 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scoring weights for task prioritization.
|
|
3
|
+
*/
|
|
4
|
+
export interface ScoringWeights {
|
|
5
|
+
dependency: number;
|
|
6
|
+
priority: number;
|
|
7
|
+
workload: number;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Scoring biases for task prioritization.
|
|
11
|
+
* Biases add/subtract from the weighted score (-50 to +50 range recommended).
|
|
12
|
+
*/
|
|
13
|
+
export interface ScoringBiases {
|
|
14
|
+
plans?: Record<string, number>;
|
|
15
|
+
personas?: {
|
|
16
|
+
coder?: number;
|
|
17
|
+
reviewer?: number;
|
|
18
|
+
pm?: number;
|
|
19
|
+
customer?: number;
|
|
20
|
+
};
|
|
21
|
+
statuses?: {
|
|
22
|
+
GAP?: number;
|
|
23
|
+
WIP?: number;
|
|
24
|
+
BLOCKED?: number;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
1
27
|
/**
|
|
2
28
|
* Server configuration interface.
|
|
3
29
|
*/
|
|
@@ -6,7 +32,33 @@ export interface ServerConfig {
|
|
|
6
32
|
docsPaths?: string[];
|
|
7
33
|
fileExtensions?: string[];
|
|
8
34
|
dataPath: string;
|
|
35
|
+
scoring: {
|
|
36
|
+
weights: ScoringWeights;
|
|
37
|
+
biases: ScoringBiases;
|
|
38
|
+
};
|
|
9
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Default scoring weights for task prioritization (initial config values).
|
|
42
|
+
*/
|
|
43
|
+
export declare const DEFAULT_SCORING_WEIGHTS: ScoringWeights;
|
|
44
|
+
/**
|
|
45
|
+
* Get scoring weights from config.
|
|
46
|
+
*
|
|
47
|
+
* @param config - Server configuration
|
|
48
|
+
* @returns Scoring weights
|
|
49
|
+
*/
|
|
50
|
+
export declare function getScoringWeights(config: ServerConfig): ScoringWeights;
|
|
51
|
+
/**
|
|
52
|
+
* Default scoring biases (initial config values).
|
|
53
|
+
*/
|
|
54
|
+
export declare const DEFAULT_SCORING_BIASES: ScoringBiases;
|
|
55
|
+
/**
|
|
56
|
+
* Get scoring biases from config.
|
|
57
|
+
*
|
|
58
|
+
* @param config - Server configuration
|
|
59
|
+
* @returns Scoring biases
|
|
60
|
+
*/
|
|
61
|
+
export declare function getScoringBiases(config: ServerConfig): ScoringBiases;
|
|
10
62
|
/**
|
|
11
63
|
* Default debounce delay for file watching (ms).
|
|
12
64
|
* Hardcoded - not user-configurable.
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE;QACT,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE;QACP,OAAO,EAAE,cAAc,CAAC;QACxB,MAAM,EAAE,aAAa,CAAC;KACvB,CAAC;CACH;AAOD;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,cAIrC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc,CAEtE;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAAkB,CAAC;AAExD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,aAAa,CAEpE;AAED;;;GAGG;AACH,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAgB1C;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKhD;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,CA6C3D;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,YAAY,CA2CtE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,CAS9D;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,EAAE,CAEhE"}
|
package/dist/config.js
CHANGED
|
@@ -5,6 +5,36 @@ import { homedir } from 'os';
|
|
|
5
5
|
* Default file extensions to index.
|
|
6
6
|
*/
|
|
7
7
|
const DEFAULT_FILE_EXTENSIONS = ['.md'];
|
|
8
|
+
/**
|
|
9
|
+
* Default scoring weights for task prioritization (initial config values).
|
|
10
|
+
*/
|
|
11
|
+
export const DEFAULT_SCORING_WEIGHTS = {
|
|
12
|
+
dependency: 40,
|
|
13
|
+
priority: 30,
|
|
14
|
+
workload: 30,
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Get scoring weights from config.
|
|
18
|
+
*
|
|
19
|
+
* @param config - Server configuration
|
|
20
|
+
* @returns Scoring weights
|
|
21
|
+
*/
|
|
22
|
+
export function getScoringWeights(config) {
|
|
23
|
+
return config.scoring.weights;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Default scoring biases (initial config values).
|
|
27
|
+
*/
|
|
28
|
+
export const DEFAULT_SCORING_BIASES = {};
|
|
29
|
+
/**
|
|
30
|
+
* Get scoring biases from config.
|
|
31
|
+
*
|
|
32
|
+
* @param config - Server configuration
|
|
33
|
+
* @returns Scoring biases
|
|
34
|
+
*/
|
|
35
|
+
export function getScoringBiases(config) {
|
|
36
|
+
return config.scoring.biases;
|
|
37
|
+
}
|
|
8
38
|
/**
|
|
9
39
|
* Default debounce delay for file watching (ms).
|
|
10
40
|
* Hardcoded - not user-configurable.
|
|
@@ -18,6 +48,10 @@ const DEFAULT_CONFIG = {
|
|
|
18
48
|
docsPaths: undefined,
|
|
19
49
|
fileExtensions: undefined,
|
|
20
50
|
dataPath: './data',
|
|
51
|
+
scoring: {
|
|
52
|
+
weights: DEFAULT_SCORING_WEIGHTS,
|
|
53
|
+
biases: DEFAULT_SCORING_BIASES,
|
|
54
|
+
},
|
|
21
55
|
};
|
|
22
56
|
/**
|
|
23
57
|
* Expand tilde (~) to home directory in a path.
|
|
@@ -64,12 +98,16 @@ export function loadConfig(configPath) {
|
|
|
64
98
|
};
|
|
65
99
|
// Resolve docsPaths relative to config file (with tilde expansion)
|
|
66
100
|
const resolvedDocsPaths = config.docsPaths ? config.docsPaths.map(resolvePath) : undefined;
|
|
101
|
+
if (!config.scoring?.weights || !config.scoring?.biases) {
|
|
102
|
+
throw new Error('Config missing required scoring settings.');
|
|
103
|
+
}
|
|
67
104
|
// Merge with defaults and resolve paths (with tilde expansion)
|
|
68
105
|
const mergedConfig = {
|
|
69
106
|
plansPath: resolvePath(config.plansPath || DEFAULT_CONFIG.plansPath),
|
|
70
107
|
docsPaths: resolvedDocsPaths,
|
|
71
108
|
fileExtensions: config.fileExtensions,
|
|
72
109
|
dataPath: resolvePath(config.dataPath || DEFAULT_CONFIG.dataPath),
|
|
110
|
+
scoring: config.scoring,
|
|
73
111
|
};
|
|
74
112
|
return mergedConfig;
|
|
75
113
|
}
|
|
@@ -101,6 +139,18 @@ export function validateConfig(config) {
|
|
|
101
139
|
return false;
|
|
102
140
|
}
|
|
103
141
|
}
|
|
142
|
+
if (!c.scoring || typeof c.scoring !== 'object') {
|
|
143
|
+
return false;
|
|
144
|
+
}
|
|
145
|
+
const scoring = c.scoring;
|
|
146
|
+
if (!scoring.weights || !scoring.biases) {
|
|
147
|
+
return false;
|
|
148
|
+
}
|
|
149
|
+
if (typeof scoring.weights.dependency !== 'number' ||
|
|
150
|
+
typeof scoring.weights.priority !== 'number' ||
|
|
151
|
+
typeof scoring.weights.workload !== 'number') {
|
|
152
|
+
return false;
|
|
153
|
+
}
|
|
104
154
|
return true;
|
|
105
155
|
}
|
|
106
156
|
/**
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-main.d.ts","sourceRoot":"","sources":["../src/server-main.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"server-main.d.ts","sourceRoot":"","sources":["../src/server-main.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA4BH;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwF1E"}
|
package/dist/server-main.js
CHANGED
|
@@ -7,8 +7,9 @@ import { createServer, startServer } from './server.js';
|
|
|
7
7
|
import { resolve } from 'path';
|
|
8
8
|
import { mkdirSync } from 'fs';
|
|
9
9
|
import { initializeDatabase, createSchema, indexAllPaths, indexDocument, removeDocument, } from './indexer.js';
|
|
10
|
-
import { startWatcher, stopWatcher } from './watcher.js';
|
|
10
|
+
import { startWatcher, stopWatcher, DEFAULT_SETTLE_DELAY } from './watcher.js';
|
|
11
11
|
import { resolveConfigPath } from './utils/config-resolver.js';
|
|
12
|
+
import { healAgentFrontmatter } from './utils/agent-heal.js';
|
|
12
13
|
// Global references for graceful shutdown
|
|
13
14
|
let watcher = null;
|
|
14
15
|
let db = null;
|
|
@@ -56,7 +57,21 @@ export async function startMcpServer(configPathArg) {
|
|
|
56
57
|
await indexDocument(dbRef, path);
|
|
57
58
|
console.error(`Indexed document: ${path} (${event})`);
|
|
58
59
|
}
|
|
59
|
-
}, fileExtensions, ignorePatterns, DEFAULT_DEBOUNCE_DELAY)
|
|
60
|
+
}, fileExtensions, ignorePatterns, DEFAULT_DEBOUNCE_DELAY, DEFAULT_SETTLE_DELAY, async (changes) => {
|
|
61
|
+
for (const change of changes) {
|
|
62
|
+
if (change.event === 'unlink') {
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
const isAgentFile = /[/\\]agents[/\\].+\.agent\.md$/i.test(change.path);
|
|
66
|
+
if (isAgentFile) {
|
|
67
|
+
const { changed } = healAgentFrontmatter(change.path);
|
|
68
|
+
if (changed) {
|
|
69
|
+
await indexDocument(dbRef, change.path);
|
|
70
|
+
console.error(`Healed agent frontmatter: ${change.path}`);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
});
|
|
60
75
|
console.error(`File watcher started for ${docsPaths.length} path(s)`);
|
|
61
76
|
// Create and start server
|
|
62
77
|
const server = createServer(config, db);
|
package/dist/server-main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-main.js","sourceRoot":"","sources":["../src/server-main.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAG/B,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,aAAa,EACb,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"server-main.js","sourceRoot":"","sources":["../src/server-main.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,11 @@ export declare const ProcessDocInputSchema: z.ZodObject<{
|
|
|
13
13
|
path: z.ZodString;
|
|
14
14
|
code: z.ZodString;
|
|
15
15
|
sub_query: z.ZodOptional<z.ZodString>;
|
|
16
|
+
allow_llm: z.ZodDefault<z.ZodBoolean>;
|
|
17
|
+
llm_policy: z.ZodDefault<z.ZodEnum<{
|
|
18
|
+
force: "force";
|
|
19
|
+
auto: "auto";
|
|
20
|
+
}>>;
|
|
16
21
|
timeout: z.ZodDefault<z.ZodNumber>;
|
|
17
22
|
max_depth: z.ZodDefault<z.ZodNumber>;
|
|
18
23
|
prettyPrint: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -24,6 +29,8 @@ export type ProcessDocInput = z.infer<typeof ProcessDocInputSchema>;
|
|
|
24
29
|
export interface ProcessDocOutput {
|
|
25
30
|
result: unknown;
|
|
26
31
|
sub_results?: unknown[];
|
|
32
|
+
sub_query_skipped?: boolean;
|
|
33
|
+
sub_query_reason?: string;
|
|
27
34
|
execution_time_ms: number;
|
|
28
35
|
tokens_saved?: number;
|
|
29
36
|
metadata: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-doc.d.ts","sourceRoot":"","sources":["../../src/tools/process-doc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"process-doc.d.ts","sourceRoot":"","sources":["../../src/tools/process-doc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAS3D;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;iBAqBhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAqBD;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAkNrB"}
|
|
@@ -13,6 +13,7 @@ import { notFound } from '../utils/errors.js';
|
|
|
13
13
|
import { createEnvironment } from '../rlm/sandbox.js';
|
|
14
14
|
import { validateCode } from '../rlm/security.js';
|
|
15
15
|
import { processSubCalls } from '../rlm/recursion.js';
|
|
16
|
+
import { decideSubQueryExecution } from '../utils/llm-policy.js';
|
|
16
17
|
/**
|
|
17
18
|
* Input schema for process_doc tool.
|
|
18
19
|
*/
|
|
@@ -20,6 +21,11 @@ export const ProcessDocInputSchema = z.object({
|
|
|
20
21
|
path: z.string().min(1).describe('Document path relative to repo root'),
|
|
21
22
|
code: z.string().min(1).describe('JavaScript code to execute (doc variable available)'),
|
|
22
23
|
sub_query: z.string().optional().describe('Prompt for recursive LLM processing of results'),
|
|
24
|
+
allow_llm: z.boolean().default(false).describe('Allow LLM sub_query execution (default: false)'),
|
|
25
|
+
llm_policy: z
|
|
26
|
+
.enum(['auto', 'force'])
|
|
27
|
+
.default('auto')
|
|
28
|
+
.describe('LLM sub_query policy (default: auto)'),
|
|
23
29
|
timeout: z.number().int().min(100).max(30000).default(5000).describe('Execution timeout in ms'),
|
|
24
30
|
max_depth: z
|
|
25
31
|
.number()
|
|
@@ -58,7 +64,7 @@ function estimateTokensSaved(docSize, resultSize) {
|
|
|
58
64
|
* @returns Tool result
|
|
59
65
|
*/
|
|
60
66
|
export async function handleProcessDoc(input, context) {
|
|
61
|
-
const { path, code, sub_query, timeout = 5000, prettyPrint = false } = input;
|
|
67
|
+
const { path, code, sub_query, allow_llm = false, llm_policy = 'auto', timeout = 5000, prettyPrint = false, } = input;
|
|
62
68
|
const { config } = context;
|
|
63
69
|
try {
|
|
64
70
|
// Get repo root
|
|
@@ -110,32 +116,45 @@ export async function handleProcessDoc(input, context) {
|
|
|
110
116
|
};
|
|
111
117
|
// Handle sub_query (Agent 3 implementation)
|
|
112
118
|
if (sub_query) {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
const subResults = await processSubCalls(items, sub_query, {
|
|
122
|
-
maxDepth: input.max_depth ?? 1,
|
|
123
|
-
concurrency: 5,
|
|
124
|
-
timeout: timeout,
|
|
125
|
-
samplingClient,
|
|
126
|
-
});
|
|
127
|
-
// Map results to output format
|
|
128
|
-
output.sub_results = subResults.map((r) => (r.success ? r.result : { error: r.error }));
|
|
129
|
-
output.metadata.depth = 1; // Update depth after processing sub-calls
|
|
119
|
+
const decision = decideSubQueryExecution({
|
|
120
|
+
allowLlm: allow_llm,
|
|
121
|
+
policy: llm_policy,
|
|
122
|
+
resultSizeBytes: resultSize,
|
|
123
|
+
});
|
|
124
|
+
if (!decision.shouldRun) {
|
|
125
|
+
output.sub_query_skipped = true;
|
|
126
|
+
output.sub_query_reason = decision.reason;
|
|
130
127
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
128
|
+
else {
|
|
129
|
+
try {
|
|
130
|
+
// Get sampling client from context (if available)
|
|
131
|
+
// For now, this will be undefined in real server, but tests can provide mock client
|
|
132
|
+
const samplingClient = context
|
|
133
|
+
.samplingClient;
|
|
134
|
+
// Normalize items to array
|
|
135
|
+
const items = Array.isArray(execResult.result)
|
|
136
|
+
? execResult.result
|
|
137
|
+
: [execResult.result];
|
|
138
|
+
// Process sub-calls
|
|
139
|
+
const subResults = await processSubCalls(items, sub_query, {
|
|
140
|
+
maxDepth: input.max_depth ?? 1,
|
|
141
|
+
concurrency: 5,
|
|
142
|
+
timeout: timeout,
|
|
143
|
+
samplingClient,
|
|
144
|
+
});
|
|
145
|
+
// Map results to output format
|
|
146
|
+
output.sub_results = subResults.map((r) => (r.success ? r.result : { error: r.error }));
|
|
147
|
+
output.metadata.depth = 1; // Update depth after processing sub-calls
|
|
148
|
+
}
|
|
149
|
+
catch (error) {
|
|
150
|
+
// If sub-call processing fails, include error in sub_results
|
|
151
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
152
|
+
output.sub_results = [
|
|
153
|
+
{
|
|
154
|
+
error: `Sub-call processing failed: ${errorMessage}`,
|
|
155
|
+
},
|
|
156
|
+
];
|
|
157
|
+
}
|
|
139
158
|
}
|
|
140
159
|
}
|
|
141
160
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-doc.js","sourceRoot":"","sources":["../../src/tools/process-doc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"process-doc.js","sourceRoot":"","sources":["../../src/tools/process-doc.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,11 @@ export declare const ProcessDocsInputBaseSchema: z.ZodObject<{
|
|
|
14
14
|
pattern: z.ZodOptional<z.ZodString>;
|
|
15
15
|
code: z.ZodString;
|
|
16
16
|
sub_query: z.ZodOptional<z.ZodString>;
|
|
17
|
+
allow_llm: z.ZodDefault<z.ZodBoolean>;
|
|
18
|
+
llm_policy: z.ZodDefault<z.ZodEnum<{
|
|
19
|
+
force: "force";
|
|
20
|
+
auto: "auto";
|
|
21
|
+
}>>;
|
|
17
22
|
timeout: z.ZodDefault<z.ZodNumber>;
|
|
18
23
|
max_docs: z.ZodDefault<z.ZodNumber>;
|
|
19
24
|
}, z.core.$strip>;
|
|
@@ -25,6 +30,11 @@ export declare const ProcessDocsInputSchema: z.ZodObject<{
|
|
|
25
30
|
pattern: z.ZodOptional<z.ZodString>;
|
|
26
31
|
code: z.ZodString;
|
|
27
32
|
sub_query: z.ZodOptional<z.ZodString>;
|
|
33
|
+
allow_llm: z.ZodDefault<z.ZodBoolean>;
|
|
34
|
+
llm_policy: z.ZodDefault<z.ZodEnum<{
|
|
35
|
+
force: "force";
|
|
36
|
+
auto: "auto";
|
|
37
|
+
}>>;
|
|
28
38
|
timeout: z.ZodDefault<z.ZodNumber>;
|
|
29
39
|
max_docs: z.ZodDefault<z.ZodNumber>;
|
|
30
40
|
}, z.core.$strip>;
|
|
@@ -37,6 +47,8 @@ export interface ProcessDocsOutput {
|
|
|
37
47
|
docs_loaded: number;
|
|
38
48
|
execution_time_ms: number;
|
|
39
49
|
sub_results?: unknown[];
|
|
50
|
+
sub_query_skipped?: boolean;
|
|
51
|
+
sub_query_reason?: string;
|
|
40
52
|
metadata: {
|
|
41
53
|
paths: string[];
|
|
42
54
|
total_size: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-docs.d.ts","sourceRoot":"","sources":["../../src/tools/process-docs.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"process-docs.d.ts","sourceRoot":"","sources":["../../src/tools/process-docs.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAS3D;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;iBAYrC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;iBAOjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AA0GD;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAyQrB"}
|