mcp-code-context 3.7.1 → 3.8.1
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/CHANGELOG.md +40 -0
- package/INSTRUCTIONS.md +3 -3
- package/README.md +20 -9
- package/SECURITY.md +10 -10
- package/dist/src/core/engine.d.ts +1 -1
- package/dist/src/core/engine.js +1 -1
- package/dist/src/core/indexManager.d.ts +1 -1
- package/dist/src/core/indexManager.js +1 -1
- package/dist/src/core/sessionManager.d.ts +1 -1
- package/dist/src/core/sessionManager.js +1 -1
- package/dist/src/core/validator.d.ts +1 -1
- package/dist/src/core/validator.js +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +2 -2
- package/dist/src/operations/astTransform.d.ts +1 -1
- package/dist/src/operations/astTransform.js +1 -1
- package/dist/src/operations/compress.d.ts +1 -1
- package/dist/src/operations/compress.js +46 -16
- package/dist/src/operations/compress.js.map +1 -1
- package/dist/src/operations/confirmationStore.d.ts +1 -1
- package/dist/src/operations/confirmationStore.js +1 -1
- package/dist/src/operations/impactAnalysis.js +46 -0
- package/dist/src/operations/impactAnalysis.js.map +1 -1
- package/dist/src/operations/write.d.ts +1 -1
- package/dist/src/operations/write.js +3 -3
- package/dist/src/operations/write.js.map +1 -1
- package/dist/src/parsers/base.d.ts +14 -1
- package/dist/src/parsers/base.js +20 -1
- package/dist/src/parsers/base.js.map +1 -1
- package/dist/src/parsers/csharp.d.ts +1 -1
- package/dist/src/parsers/csharp.js +1 -1
- package/dist/src/parsers/dartTreeSitter.d.ts +1 -1
- package/dist/src/parsers/dartTreeSitter.js +1 -1
- package/dist/src/parsers/go.d.ts +1 -1
- package/dist/src/parsers/go.js +1 -1
- package/dist/src/parsers/java.d.ts +1 -1
- package/dist/src/parsers/java.js +1 -1
- package/dist/src/parsers/kotlin.d.ts +1 -1
- package/dist/src/parsers/kotlin.js +1 -1
- package/dist/src/parsers/php.d.ts +1 -1
- package/dist/src/parsers/php.js +1 -1
- package/dist/src/parsers/python.d.ts +12 -1
- package/dist/src/parsers/python.js +26 -1
- package/dist/src/parsers/python.js.map +1 -1
- package/dist/src/parsers/registry.d.ts +1 -1
- package/dist/src/parsers/registry.js +1 -1
- package/dist/src/parsers/ruby.d.ts +20 -1
- package/dist/src/parsers/ruby.js +43 -3
- package/dist/src/parsers/ruby.js.map +1 -1
- package/dist/src/parsers/rust.d.ts +1 -1
- package/dist/src/parsers/rust.js +1 -1
- package/dist/src/parsers/typescript.d.ts +1 -1
- package/dist/src/parsers/typescript.js +1 -1
- package/dist/src/tools/readHandlers.js +26 -0
- package/dist/src/tools/readHandlers.js.map +1 -1
- package/dist/src/tools/toolDefinitionsCore.js +2 -2
- package/dist/src/utils/appDir.d.ts +1 -1
- package/dist/src/utils/appDir.js +1 -1
- package/dist/src/utils/auditLogger.d.ts +1 -1
- package/dist/src/utils/auditLogger.js +1 -1
- package/dist/src/utils/backupManager.d.ts +1 -1
- package/dist/src/utils/backupManager.js +1 -1
- package/dist/src/utils/constants.d.ts +1 -1
- package/dist/src/utils/constants.js +1 -1
- package/dist/src/utils/diff.d.ts +2 -2
- package/dist/src/utils/diff.js +2 -2
- package/dist/src/utils/fileLock.d.ts +1 -1
- package/dist/src/utils/fileLock.js +1 -1
- package/dist/src/utils/fileWalker.d.ts +1 -1
- package/dist/src/utils/fileWalker.js +1 -1
- package/dist/src/utils/fileWatcher.d.ts +1 -1
- package/dist/src/utils/fileWatcher.js +1 -1
- package/dist/src/utils/fuzzySearch.d.ts +1 -1
- package/dist/src/utils/fuzzySearch.js +1 -1
- package/dist/src/utils/logger.d.ts +1 -1
- package/dist/src/utils/logger.js +1 -1
- package/dist/src/utils/railsSchema.d.ts +10 -0
- package/dist/src/utils/railsSchema.js +104 -0
- package/dist/src/utils/railsSchema.js.map +1 -0
- package/dist/src/utils/rateLimiter.d.ts +1 -1
- package/dist/src/utils/rateLimiter.js +1 -1
- package/dist/src/utils/streaming.d.ts +1 -1
- package/dist/src/utils/streaming.js +1 -1
- package/dist/src/utils/telemetry.d.ts +1 -1
- package/dist/src/utils/telemetry.js +1 -1
- package/llms.txt +11 -9
- package/package.json +6 -3
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Base Parser - v3.
|
|
2
|
+
* Base Parser - v3.8.1
|
|
3
3
|
* Abstract base for all language parsers
|
|
4
4
|
* IMPROVEMENT: replaceSymbol moved here using AST indices (eliminates indexOf fragility)
|
|
5
|
+
* v3.8.1: getInsideStartIndex/getInsideEndIndex overridable for brace-less languages
|
|
5
6
|
*/
|
|
6
7
|
import { Parser, Tree, Language } from "web-tree-sitter";
|
|
7
8
|
export interface ParseResult {
|
|
@@ -25,6 +26,18 @@ export declare abstract class BaseParser {
|
|
|
25
26
|
init(parser: Parser, language: Language): Promise<void>;
|
|
26
27
|
parse(content: string, oldTree?: Tree): Tree;
|
|
27
28
|
abstract extractSymbol(tree: Tree, symbolName: string, className?: string): string | null;
|
|
29
|
+
/**
|
|
30
|
+
* Returns the index inside a symbol's body for inside_start insertion.
|
|
31
|
+
* Default: searches for `{` after symbol start (JS/TS/PHP/Java/Go/C#/Rust/Kotlin).
|
|
32
|
+
* Override in parsers for brace-less languages (Ruby, Python).
|
|
33
|
+
*/
|
|
34
|
+
getInsideStartIndex(content: string, symbolInfo: SymbolInfo): number;
|
|
35
|
+
/**
|
|
36
|
+
* Returns the index inside a symbol's body for inside_end insertion.
|
|
37
|
+
* Default: searches for last `}` before symbol end (JS/TS/PHP/Java/Go/C#/Rust/Kotlin).
|
|
38
|
+
* Override in parsers for brace-less languages (Ruby, Python).
|
|
39
|
+
*/
|
|
40
|
+
getInsideEndIndex(content: string, symbolInfo: SymbolInfo): number;
|
|
28
41
|
/**
|
|
29
42
|
* Replace a symbol using AST startIndex/endIndex (no indexOf fragility)
|
|
30
43
|
* Concrete implementation — subclasses inherit this.
|
package/dist/src/parsers/base.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Base Parser - v3.
|
|
2
|
+
* Base Parser - v3.8.1
|
|
3
3
|
* Abstract base for all language parsers
|
|
4
4
|
* IMPROVEMENT: replaceSymbol moved here using AST indices (eliminates indexOf fragility)
|
|
5
|
+
* v3.8.1: getInsideStartIndex/getInsideEndIndex overridable for brace-less languages
|
|
5
6
|
*/
|
|
6
7
|
export class BaseParser {
|
|
7
8
|
parser;
|
|
@@ -21,6 +22,24 @@ export class BaseParser {
|
|
|
21
22
|
throw new Error(`${this.languageName} parsing failed`);
|
|
22
23
|
return tree;
|
|
23
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* Returns the index inside a symbol's body for inside_start insertion.
|
|
27
|
+
* Default: searches for `{` after symbol start (JS/TS/PHP/Java/Go/C#/Rust/Kotlin).
|
|
28
|
+
* Override in parsers for brace-less languages (Ruby, Python).
|
|
29
|
+
*/
|
|
30
|
+
getInsideStartIndex(content, symbolInfo) {
|
|
31
|
+
const idx = content.indexOf("{", symbolInfo.startIndex);
|
|
32
|
+
return idx !== -1 ? idx + 1 : symbolInfo.startIndex + 1;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Returns the index inside a symbol's body for inside_end insertion.
|
|
36
|
+
* Default: searches for last `}` before symbol end (JS/TS/PHP/Java/Go/C#/Rust/Kotlin).
|
|
37
|
+
* Override in parsers for brace-less languages (Ruby, Python).
|
|
38
|
+
*/
|
|
39
|
+
getInsideEndIndex(content, symbolInfo) {
|
|
40
|
+
const idx = content.lastIndexOf("}", symbolInfo.endIndex);
|
|
41
|
+
return idx !== -1 ? idx : symbolInfo.endIndex - 1;
|
|
42
|
+
}
|
|
24
43
|
/**
|
|
25
44
|
* Replace a symbol using AST startIndex/endIndex (no indexOf fragility)
|
|
26
45
|
* Concrete implementation — subclasses inherit this.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/parsers/base.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/parsers/base.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmBH,MAAM,OAAgB,UAAU;IACpB,MAAM,CAAU;IAChB,QAAQ,CAAY;IACpB,YAAY,CAAS;IAE/B,YAAY,YAAoB;QAC9B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,QAAkB;QAC3C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,OAAc;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,YAAY,iBAAiB,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;IAQD;;;;OAIG;IACH,mBAAmB,CAAC,OAAe,EAAE,UAAsB;QACzD,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;QACxD,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,OAAe,EAAE,UAAsB;QACvD,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1D,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAAG,CAAC,CAAC;IACpD,CAAC;IAED;;;OAGG;IACH,aAAa,CACX,OAAe,EACf,IAAU,EACV,UAAkB,EAClB,UAAkB,EAClB,SAAkB;QAElB,sBAAsB;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC9B,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CACnE,CAAC;QAEF,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,aAAa,CAAC,CAAC;QACtD,CAAC;QAED,mEAAmE;QACnE,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;YAC5C,UAAU;YACV,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;IAID,OAAO;QACL,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;CACF"}
|
package/dist/src/parsers/go.d.ts
CHANGED
package/dist/src/parsers/go.js
CHANGED
package/dist/src/parsers/java.js
CHANGED
package/dist/src/parsers/php.js
CHANGED
|
@@ -1,11 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Python Parser - v3.
|
|
2
|
+
* Python Parser - v3.8.1
|
|
3
3
|
* CLEANUP: replaceSymbol removed (inherited from BaseParser)
|
|
4
|
+
* v3.8.1: override getInsideStartIndex/getInsideEndIndex for indentation-based syntax
|
|
4
5
|
*/
|
|
5
6
|
import { Tree } from "web-tree-sitter";
|
|
6
7
|
import { BaseParser, SymbolInfo } from "./base.js";
|
|
7
8
|
export declare class PythonParser extends BaseParser {
|
|
8
9
|
constructor();
|
|
10
|
+
/**
|
|
11
|
+
* For Python's indentation-based blocks, inside_start = first byte after the `:` + newline
|
|
12
|
+
* that opens the block body (e.g. after `def foo():\n`).
|
|
13
|
+
*/
|
|
14
|
+
getInsideStartIndex(content: string, symbolInfo: SymbolInfo): number;
|
|
15
|
+
/**
|
|
16
|
+
* For Python's indentation-based blocks, inside_end = last byte of the last statement
|
|
17
|
+
* in the body — i.e. just before the symbol's endIndex, excluding trailing newlines.
|
|
18
|
+
*/
|
|
19
|
+
getInsideEndIndex(content: string, symbolInfo: SymbolInfo): number;
|
|
9
20
|
extractSymbol(tree: Tree, symbolName: string, className?: string): string | null;
|
|
10
21
|
findSymbols(tree: Tree): SymbolInfo[];
|
|
11
22
|
private findParentClass;
|
|
@@ -1,12 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Python Parser - v3.
|
|
2
|
+
* Python Parser - v3.8.1
|
|
3
3
|
* CLEANUP: replaceSymbol removed (inherited from BaseParser)
|
|
4
|
+
* v3.8.1: override getInsideStartIndex/getInsideEndIndex for indentation-based syntax
|
|
4
5
|
*/
|
|
5
6
|
import { BaseParser } from "./base.js";
|
|
6
7
|
export class PythonParser extends BaseParser {
|
|
7
8
|
constructor() {
|
|
8
9
|
super("python");
|
|
9
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* For Python's indentation-based blocks, inside_start = first byte after the `:` + newline
|
|
13
|
+
* that opens the block body (e.g. after `def foo():\n`).
|
|
14
|
+
*/
|
|
15
|
+
getInsideStartIndex(content, symbolInfo) {
|
|
16
|
+
// Find the colon that opens the block
|
|
17
|
+
const colon = content.indexOf(":", symbolInfo.startIndex);
|
|
18
|
+
if (colon === -1)
|
|
19
|
+
return symbolInfo.startIndex + 1;
|
|
20
|
+
const newline = content.indexOf("\n", colon);
|
|
21
|
+
return newline !== -1 ? newline + 1 : colon + 1;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* For Python's indentation-based blocks, inside_end = last byte of the last statement
|
|
25
|
+
* in the body — i.e. just before the symbol's endIndex, excluding trailing newlines.
|
|
26
|
+
*/
|
|
27
|
+
getInsideEndIndex(content, symbolInfo) {
|
|
28
|
+
// Walk back from endIndex past any trailing whitespace/newlines
|
|
29
|
+
let idx = symbolInfo.endIndex - 1;
|
|
30
|
+
while (idx > symbolInfo.startIndex && (content[idx] === "\n" || content[idx] === "\r" || content[idx] === " " || content[idx] === "\t")) {
|
|
31
|
+
idx--;
|
|
32
|
+
}
|
|
33
|
+
return idx + 1;
|
|
34
|
+
}
|
|
10
35
|
extractSymbol(tree, symbolName, className) {
|
|
11
36
|
const cursor = tree.walk();
|
|
12
37
|
const search = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"python.js","sourceRoot":"","sources":["../../../src/parsers/python.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"python.js","sourceRoot":"","sources":["../../../src/parsers/python.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Ruby Parser - v3.
|
|
2
|
+
* Ruby Parser - v3.8.1
|
|
3
3
|
* Tree-sitter based Ruby parser
|
|
4
|
+
* v3.8.1: override getInsideStartIndex/getInsideEndIndex for end-based syntax
|
|
4
5
|
*/
|
|
5
6
|
import { Tree } from "web-tree-sitter";
|
|
6
7
|
import { BaseParser, SymbolInfo } from "./base.js";
|
|
7
8
|
export declare class RubyParser extends BaseParser {
|
|
8
9
|
constructor();
|
|
10
|
+
/**
|
|
11
|
+
* Extract a symbol from source content using AST byte offsets.
|
|
12
|
+
* NOTE: uses content directly (not tree.rootNode.text) because web-tree-sitter
|
|
13
|
+
* may strip leading whitespace/newlines from rootNode.text on Windows/WASM,
|
|
14
|
+
* causing off-by-one drift against the original byte offsets.
|
|
15
|
+
*/
|
|
9
16
|
extractSymbol(tree: Tree, symbolName: string, className?: string): string | null;
|
|
17
|
+
search(tree: Tree, pattern: string): SymbolInfo[];
|
|
18
|
+
/**
|
|
19
|
+
* For Ruby's `end`-based blocks, inside_start = first byte after the header line.
|
|
20
|
+
* The header line is the first line of the node (e.g. "def full_name\n" or "class User < ApplicationRecord\n").
|
|
21
|
+
* We find the newline that terminates the first line of the symbol and insert after it.
|
|
22
|
+
*/
|
|
23
|
+
getInsideStartIndex(content: string, symbolInfo: SymbolInfo): number;
|
|
24
|
+
/**
|
|
25
|
+
* For Ruby's `end`-based blocks, inside_end = the byte index of the `end` keyword itself.
|
|
26
|
+
* We search backwards from the symbol's endIndex for the last "end" token on its own line.
|
|
27
|
+
*/
|
|
28
|
+
getInsideEndIndex(content: string, symbolInfo: SymbolInfo): number;
|
|
10
29
|
findSymbols(tree: Tree): SymbolInfo[];
|
|
11
30
|
private findParentClass;
|
|
12
31
|
}
|
package/dist/src/parsers/ruby.js
CHANGED
|
@@ -1,17 +1,57 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Ruby Parser - v3.
|
|
2
|
+
* Ruby Parser - v3.8.1
|
|
3
3
|
* Tree-sitter based Ruby parser
|
|
4
|
+
* v3.8.1: override getInsideStartIndex/getInsideEndIndex for end-based syntax
|
|
4
5
|
*/
|
|
5
6
|
import { BaseParser } from "./base.js";
|
|
6
7
|
export class RubyParser extends BaseParser {
|
|
7
8
|
constructor() {
|
|
8
9
|
super("ruby");
|
|
9
10
|
}
|
|
11
|
+
/**
|
|
12
|
+
* Extract a symbol from source content using AST byte offsets.
|
|
13
|
+
* NOTE: uses content directly (not tree.rootNode.text) because web-tree-sitter
|
|
14
|
+
* may strip leading whitespace/newlines from rootNode.text on Windows/WASM,
|
|
15
|
+
* causing off-by-one drift against the original byte offsets.
|
|
16
|
+
*/
|
|
10
17
|
extractSymbol(tree, symbolName, className) {
|
|
11
|
-
const src = tree.rootNode.text;
|
|
12
18
|
const symbols = this.findSymbols(tree);
|
|
13
19
|
const target = symbols.find(s => s.name === symbolName && (!className || s.className === className));
|
|
14
|
-
|
|
20
|
+
if (!target)
|
|
21
|
+
return null;
|
|
22
|
+
// Reconstruct the original source from tree nodes — use the full text of the
|
|
23
|
+
// root node's parent walk so we always have the unparsed original.
|
|
24
|
+
// The safest approach: use tree.rootNode.text but correct the start offset.
|
|
25
|
+
const src = tree.rootNode.text;
|
|
26
|
+
const rootStart = tree.rootNode.startIndex;
|
|
27
|
+
return src.substring(target.startIndex - rootStart, target.endIndex - rootStart);
|
|
28
|
+
}
|
|
29
|
+
search(tree, pattern) {
|
|
30
|
+
return this.findSymbols(tree).filter(s => s.name.toLowerCase().includes(pattern.toLowerCase()));
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* For Ruby's `end`-based blocks, inside_start = first byte after the header line.
|
|
34
|
+
* The header line is the first line of the node (e.g. "def full_name\n" or "class User < ApplicationRecord\n").
|
|
35
|
+
* We find the newline that terminates the first line of the symbol and insert after it.
|
|
36
|
+
*/
|
|
37
|
+
getInsideStartIndex(content, symbolInfo) {
|
|
38
|
+
// Find the newline that ends the opening line (def/class header)
|
|
39
|
+
const firstNewline = content.indexOf("\n", symbolInfo.startIndex);
|
|
40
|
+
return firstNewline !== -1 ? firstNewline + 1 : symbolInfo.startIndex + 1;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* For Ruby's `end`-based blocks, inside_end = the byte index of the `end` keyword itself.
|
|
44
|
+
* We search backwards from the symbol's endIndex for the last "end" token on its own line.
|
|
45
|
+
*/
|
|
46
|
+
getInsideEndIndex(content, symbolInfo) {
|
|
47
|
+
// Walk backwards from the node end to find the `end` keyword line
|
|
48
|
+
const slice = content.substring(0, symbolInfo.endIndex);
|
|
49
|
+
const endMatch = slice.match(/\bend\b\s*$/);
|
|
50
|
+
if (endMatch && endMatch.index !== undefined) {
|
|
51
|
+
return endMatch.index;
|
|
52
|
+
}
|
|
53
|
+
// Fallback: insert just before the last character of the symbol
|
|
54
|
+
return symbolInfo.endIndex - 1;
|
|
15
55
|
}
|
|
16
56
|
findSymbols(tree) {
|
|
17
57
|
const symbols = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ruby.js","sourceRoot":"","sources":["../../../src/parsers/ruby.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ruby.js","sourceRoot":"","sources":["../../../src/parsers/ruby.ts"],"names":[],"mappings":"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"}
|
package/dist/src/parsers/rust.js
CHANGED
|
@@ -7,6 +7,7 @@ import { compressRepository } from "../operations/compress.js";
|
|
|
7
7
|
import { streamFile } from "../utils/streaming.js";
|
|
8
8
|
import { assertNoPendingWriteConflict } from "../utils/toctou.js";
|
|
9
9
|
import { getSession, getCacheManager, getRegistry } from "./context.js";
|
|
10
|
+
import { loadRailsSchema, modelToTable, formatSchemaAnnotation } from "../utils/railsSchema.js";
|
|
10
11
|
export async function handleGetSemanticRepoMap(args) {
|
|
11
12
|
if (!args.directoryPath || !args.projectRoot) {
|
|
12
13
|
throw new Error("directoryPath and projectRoot are required (e.g. projectRoot: C:\\code\\mcp-code-context)");
|
|
@@ -72,6 +73,31 @@ export async function handleReadFileSurgical(args) {
|
|
|
72
73
|
content = await fs.readFile(validation.resolvedPath, "utf-8");
|
|
73
74
|
}
|
|
74
75
|
}
|
|
76
|
+
// ActiveRecord Virtual Schema injection
|
|
77
|
+
if (path.extname(filePath) === ".rb") {
|
|
78
|
+
// When extracting a symbol, `content` is only the method body — no class declaration.
|
|
79
|
+
// We need the full file to detect AR inheritance, but guard with stat first to
|
|
80
|
+
// avoid allocating >5MB files without the streaming guard.
|
|
81
|
+
let sourceForDetection = content;
|
|
82
|
+
if (symbolName) {
|
|
83
|
+
const fileStat = await fs.stat(validation.resolvedPath);
|
|
84
|
+
if (fileStat.size <= 5 * 1024 * 1024) {
|
|
85
|
+
sourceForDetection = await fs.readFile(validation.resolvedPath, "utf-8");
|
|
86
|
+
}
|
|
87
|
+
// Files >5MB: skip schema injection for symbol extracts — not worth the memory cost
|
|
88
|
+
}
|
|
89
|
+
const arMatch = sourceForDetection.match(/class\s+(\w+)\s*<\s*(?:ApplicationRecord|ActiveRecord::Base)/);
|
|
90
|
+
if (arMatch) {
|
|
91
|
+
const schema = await loadRailsSchema(projectRoot);
|
|
92
|
+
if (schema) {
|
|
93
|
+
const tableName = modelToTable(arMatch[1]);
|
|
94
|
+
const columns = schema[tableName];
|
|
95
|
+
if (columns && Object.keys(columns).length > 0) {
|
|
96
|
+
content = formatSchemaAnnotation(tableName, columns) + "\n" + content;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
75
101
|
return { content: [{ type: "text", text: content }] };
|
|
76
102
|
}
|
|
77
103
|
export async function handleAnalyzeImpact(args) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readHandlers.js","sourceRoot":"","sources":["../../../src/tools/readHandlers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"readHandlers.js","sourceRoot":"","sources":["../../../src/tools/readHandlers.ts"],"names":[],"mappings":"AAAA,oBAAoB;AAEpB,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACxI,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAI/D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,OAAO,EAAuB,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAc,MAAM,cAAc,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEhG,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,IAA6B;IAC1E,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;IAC/G,CAAC;IACD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;IAE/D,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACnE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;QACtC,aAAa,EAAE,UAAU,CAAC,YAAa;QACvC,WAAW;QACX,QAAQ,EAAE,WAAW,EAAE;QACvB,MAAM,EAAE,MAA4B;KACrC,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAQ,EAAE,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,IAA6B;IACxE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEtE,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,CAAC,UAAU,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACzD,4BAA4B,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,UAAU,CAAC,YAAa,CAAC,CAAC;IAEvF,IAAI,OAAe,CAAC;IACpB,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,QAAQ,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;YACjC,QAAQ,EAAE,UAAU,CAAC,YAAa;YAClC,WAAW;YACX,UAAU;YACV,SAAS;YACT,MAAM;YACN,KAAK,EAAE,eAAe,CAAC,WAAW,CAAC;SACpC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnD,OAAO,GAAG,MAAM,CAAC,OAAQ,CAAC;IAC5B,CAAC;SAAM,CAAC;QACN,6CAA6C;QAC7C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,YAAa,CAAC,CAAC;QACrD,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,YAAa,CAAC,CAAC;YAC7D,IAAI,CAAC,SAAS,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACzD,OAAO,GAAG,SAAS,CAAC,MAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAa,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,KAAK,EAAE,CAAC;QACrC,sFAAsF;QACtF,+EAA+E;QAC/E,2DAA2D;QAC3D,IAAI,kBAAkB,GAAG,OAAO,CAAC;QACjC,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,YAAa,CAAC,CAAC;YACzD,IAAI,QAAQ,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;gBACrC,kBAAkB,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAa,EAAE,OAAO,CAAC,CAAC;YAC5E,CAAC;YACD,oFAAoF;QACtF,CAAC;QACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CACtC,8DAA8D,CAC/D,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;YAClD,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;gBAClC,IAAI,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/C,OAAO,GAAG,sBAAsB,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC;gBACxE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAA6B;IACrE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IAElE,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,CAAC,UAAU,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAEzD,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACjE,IAAI,CAAC,cAAc,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,YAAa,EAAE,OAAO,EAAE,cAAc,CAAC,YAAa,EAAE,WAAW,EAAE,CAAC,CAAC;IAC/H,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAQ,EAAE,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAA6B;IACrE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAE7C,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,CAAC,UAAU,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACzD,4BAA4B,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,UAAU,CAAC,YAAa,CAAC,CAAC;IAEvF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;QAC7B,QAAQ,EAAE,UAAU,CAAC,YAAa;QAClC,SAAS,EAAE,IAAI,CAAC,SAA+B;QAC/C,OAAO,EAAE,IAAI,CAAC,OAA6B;QAC3C,aAAa,EAAE,IAAI,CAAC,aAAmC;QACvD,YAAY,EAAE,IAAI,CAAC,YAAkC;KACtD,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAQ,EAAE,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,IAA6B;IACzE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAE7C,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7D,IAAI,CAAC,UAAU,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAEzD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;QACjC,OAAO,EAAE,UAAU,CAAC,YAAa;QACjC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;QAC7B,cAAc,EAAE,IAAI,CAAC,cAAsC;QAC3D,WAAW,EAAE,IAAI,CAAC,WAAmC;QACrD,UAAU,EAAE,IAAI,CAAC,UAAgC;QACjD,UAAU,EAAE,IAAI,CAAC,UAAgC;QACjD,UAAU,EAAE,IAAI,CAAC,UAAiC;QAClD,cAAc,EAAE,IAAI,CAAC,cAAoC;KAC1D,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAQ,EAAE,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAA6B;IACjE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAE7C,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,CAAC,UAAU,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACzD,4BAA4B,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,UAAU,CAAC,YAAa,CAAC,CAAC;IAEvF,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAa,EAAE,OAAO,CAAC,CAAC;IACrE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAa,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAE5C,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,QAAQ,CAAC,CAAC;IAErE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEzC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,yBAAyB;AACzB,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAA6B;IACrE,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAE7C,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7D,IAAI,CAAC,UAAU,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAEzD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;QACjC,OAAO,EAAE,UAAU,CAAC,YAAa;QACjC,WAAW;QACX,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;QACzB,KAAK,EAAE,IAAI,CAAC,KAA4B;QACxC,KAAK,EAAE,IAAI,CAAC,KAA6B;QACzC,cAAc,EAAE,IAAI,CAAC,cAAsC;QAC3D,WAAW,EAAE,IAAI,CAAC,WAAmC;QACrD,UAAU,EAAE,IAAI,CAAC,UAAgC;KAClD,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAQ,EAAE,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,yBAAyB;AACzB,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAA6B;IACrE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IAElE,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,CAAC,UAAU,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAEzD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAa,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,GAAG,QAAQ,CAAC,CAAC;IAErE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;QACjC,QAAQ,EAAE,UAAU,CAAC,YAAa;QAClC,WAAW;QACX,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;QACnC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;QAC9D,MAAM;QACN,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAQ,EAAE,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,qBAAqB;AACrB,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAA6B;IACjE,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAA4E,CAAC;IAEhG,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACrD,6BAA6B;IAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,CAAC,CAAC,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,YAAa,CAAC;IAClC,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;QAC7B,KAAK;QACL,WAAW;QACX,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI;KAC9D,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAQ,EAAE,CAAC,EAAE,CAAC;AAChE,CAAC"}
|
|
@@ -158,7 +158,7 @@ export const CORE_TOOLS = [
|
|
|
158
158
|
required: ["filePath", "projectRoot", "oldName", "newName"],
|
|
159
159
|
},
|
|
160
160
|
},
|
|
161
|
-
// ── AST Transform (v3.
|
|
161
|
+
// ── AST Transform (v3.8.1) ──────────────────────────────────────────────
|
|
162
162
|
{
|
|
163
163
|
name: "ast_transform",
|
|
164
164
|
description: "Apply a declarative AST transformation to a symbol. Supports: add_parameter, wrap_with_try_catch, add_decorator, change_return_type, extract_variable. Uses two-phase write (Phase 1: preview diff, Phase 2: confirm with token).",
|
|
@@ -195,7 +195,7 @@ export const CORE_TOOLS = [
|
|
|
195
195
|
required: ["filePath", "projectRoot", "symbolName", "transform"],
|
|
196
196
|
},
|
|
197
197
|
},
|
|
198
|
-
// ── NEW TOOLS v3.
|
|
198
|
+
// ── NEW TOOLS v3.8.1 ──────────────────────────────────────────────────────ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
|
|
199
199
|
{
|
|
200
200
|
name: "search_symbols",
|
|
201
201
|
description: "Search symbols by name across the repo using AST (not text search). Finds classes, functions, methods by approximate name.",
|
package/dist/src/utils/appDir.js
CHANGED
package/dist/src/utils/diff.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Diff Utilities - v3.
|
|
2
|
+
* Diff Utilities - v3.8.1
|
|
3
3
|
* Uses diff-match-patch for efficient diffing
|
|
4
4
|
*/
|
|
5
5
|
export interface DiffLine {
|
|
@@ -10,7 +10,7 @@ export interface DiffLine {
|
|
|
10
10
|
/**
|
|
11
11
|
* Generates an early fallback diff for large files with many changes.
|
|
12
12
|
* Avoids O(n+d²) degradation from Myers algorithm.
|
|
13
|
-
* FIX-07: Added in v3.
|
|
13
|
+
* FIX-07: Added in v3.8.1.
|
|
14
14
|
*
|
|
15
15
|
* @param oldText - Original file content
|
|
16
16
|
* @param newText - Modified file content
|
package/dist/src/utils/diff.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Diff Utilities - v3.
|
|
2
|
+
* Diff Utilities - v3.8.1
|
|
3
3
|
* Uses diff-match-patch for efficient diffing
|
|
4
4
|
*/
|
|
5
5
|
import DiffMatchPatch from 'diff-match-patch';
|
|
@@ -22,7 +22,7 @@ function estimateChangeRatio(oldText, newText) {
|
|
|
22
22
|
/**
|
|
23
23
|
* Generates an early fallback diff for large files with many changes.
|
|
24
24
|
* Avoids O(n+d²) degradation from Myers algorithm.
|
|
25
|
-
* FIX-07: Added in v3.
|
|
25
|
+
* FIX-07: Added in v3.8.1.
|
|
26
26
|
*
|
|
27
27
|
* @param oldText - Original file content
|
|
28
28
|
* @param newText - Modified file content
|