sdl-mcp 0.11.13 → 0.12.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.
Files changed (211) hide show
  1. package/README.md +4 -4
  2. package/config/sdlmcp.config.example.json +3 -3
  3. package/config/sdlmcp.config.schema.json +11 -7
  4. package/dist/.tsbuildinfo +1 -1
  5. package/dist/agent/context-seeding.d.ts +14 -0
  6. package/dist/agent/context-seeding.d.ts.map +1 -1
  7. package/dist/agent/context-seeding.js +118 -4
  8. package/dist/agent/context-seeding.js.map +1 -1
  9. package/dist/cli/commands/index.d.ts +10 -0
  10. package/dist/cli/commands/index.d.ts.map +1 -1
  11. package/dist/cli/commands/index.js +20 -3
  12. package/dist/cli/commands/index.js.map +1 -1
  13. package/dist/cli/commands/init.d.ts +1 -1
  14. package/dist/cli/commands/init.js +7 -7
  15. package/dist/cli/commands/tool-actions.d.ts.map +1 -1
  16. package/dist/cli/commands/tool-actions.js +58 -3
  17. package/dist/cli/commands/tool-actions.js.map +1 -1
  18. package/dist/code-mode/action-catalog.d.ts +9 -0
  19. package/dist/code-mode/action-catalog.d.ts.map +1 -1
  20. package/dist/code-mode/action-catalog.js +18 -4
  21. package/dist/code-mode/action-catalog.js.map +1 -1
  22. package/dist/code-mode/descriptions.d.ts +1 -0
  23. package/dist/code-mode/descriptions.d.ts.map +1 -1
  24. package/dist/code-mode/descriptions.js +5 -1
  25. package/dist/code-mode/descriptions.js.map +1 -1
  26. package/dist/code-mode/etag-cache.d.ts +9 -2
  27. package/dist/code-mode/etag-cache.d.ts.map +1 -1
  28. package/dist/code-mode/etag-cache.js +45 -2
  29. package/dist/code-mode/etag-cache.js.map +1 -1
  30. package/dist/code-mode/index.d.ts +8 -0
  31. package/dist/code-mode/index.d.ts.map +1 -1
  32. package/dist/code-mode/index.js +39 -8
  33. package/dist/code-mode/index.js.map +1 -1
  34. package/dist/code-mode/manual-generator.d.ts.map +1 -1
  35. package/dist/code-mode/manual-generator.js +24 -21
  36. package/dist/code-mode/manual-generator.js.map +1 -1
  37. package/dist/code-mode/ref-resolver.d.ts.map +1 -1
  38. package/dist/code-mode/ref-resolver.js +30 -6
  39. package/dist/code-mode/ref-resolver.js.map +1 -1
  40. package/dist/code-mode/retrieve.d.ts +44 -0
  41. package/dist/code-mode/retrieve.d.ts.map +1 -0
  42. package/dist/code-mode/retrieve.js +68 -0
  43. package/dist/code-mode/retrieve.js.map +1 -0
  44. package/dist/code-mode/types.d.ts +7 -3
  45. package/dist/code-mode/types.d.ts.map +1 -1
  46. package/dist/code-mode/types.js +4 -2
  47. package/dist/code-mode/types.js.map +1 -1
  48. package/dist/code-mode/workflow-executor.d.ts.map +1 -1
  49. package/dist/code-mode/workflow-executor.js +88 -11
  50. package/dist/code-mode/workflow-executor.js.map +1 -1
  51. package/dist/code-mode/workflow-parser.d.ts +1 -1
  52. package/dist/code-mode/workflow-parser.d.ts.map +1 -1
  53. package/dist/code-mode/workflow-parser.js +32 -3
  54. package/dist/code-mode/workflow-parser.js.map +1 -1
  55. package/dist/code-mode/workflow-truncation.d.ts +0 -5
  56. package/dist/code-mode/workflow-truncation.d.ts.map +1 -1
  57. package/dist/code-mode/workflow-truncation.js +53 -1
  58. package/dist/code-mode/workflow-truncation.js.map +1 -1
  59. package/dist/config/types.d.ts +7 -7
  60. package/dist/config/types.d.ts.map +1 -1
  61. package/dist/config/types.js +6 -6
  62. package/dist/config/types.js.map +1 -1
  63. package/dist/db/ladybug-edges.d.ts +12 -0
  64. package/dist/db/ladybug-edges.d.ts.map +1 -1
  65. package/dist/db/ladybug-edges.js +26 -0
  66. package/dist/db/ladybug-edges.js.map +1 -1
  67. package/dist/domain/types.d.ts +4 -0
  68. package/dist/domain/types.d.ts.map +1 -1
  69. package/dist/gateway/descriptions.d.ts.map +1 -1
  70. package/dist/gateway/descriptions.js +5 -5
  71. package/dist/gateway/descriptions.js.map +1 -1
  72. package/dist/gateway/schemas.d.ts +46 -2
  73. package/dist/gateway/schemas.d.ts.map +1 -1
  74. package/dist/gateway/schemas.js +25 -8
  75. package/dist/gateway/schemas.js.map +1 -1
  76. package/dist/graph/overview.js +9 -1
  77. package/dist/graph/overview.js.map +1 -1
  78. package/dist/graph/prefetch.d.ts +1 -0
  79. package/dist/graph/prefetch.d.ts.map +1 -1
  80. package/dist/graph/prefetch.js +5 -1
  81. package/dist/graph/prefetch.js.map +1 -1
  82. package/dist/indexer/summary-generator.d.ts +6 -0
  83. package/dist/indexer/summary-generator.d.ts.map +1 -1
  84. package/dist/indexer/summary-generator.js +241 -86
  85. package/dist/indexer/summary-generator.js.map +1 -1
  86. package/dist/indexer/symbol-embedding-text.d.ts +5 -10
  87. package/dist/indexer/symbol-embedding-text.d.ts.map +1 -1
  88. package/dist/indexer/symbol-embedding-text.js +200 -0
  89. package/dist/indexer/symbol-embedding-text.js.map +1 -1
  90. package/dist/live-index/coordinator.js +1 -1
  91. package/dist/live-index/coordinator.js.map +1 -1
  92. package/dist/mcp/context-response-projection.d.ts +0 -10
  93. package/dist/mcp/context-response-projection.d.ts.map +1 -1
  94. package/dist/mcp/context-response-projection.js +536 -35
  95. package/dist/mcp/context-response-projection.js.map +1 -1
  96. package/dist/mcp/response-compression.d.ts +3 -0
  97. package/dist/mcp/response-compression.d.ts.map +1 -1
  98. package/dist/mcp/response-compression.js +21 -14
  99. package/dist/mcp/response-compression.js.map +1 -1
  100. package/dist/mcp/server-instructions.js +7 -7
  101. package/dist/mcp/server-instructions.js.map +1 -1
  102. package/dist/mcp/token-usage.d.ts +5 -0
  103. package/dist/mcp/token-usage.d.ts.map +1 -1
  104. package/dist/mcp/token-usage.js +17 -0
  105. package/dist/mcp/token-usage.js.map +1 -1
  106. package/dist/mcp/tool-call-formatter.d.ts.map +1 -1
  107. package/dist/mcp/tool-call-formatter.js +42 -12
  108. package/dist/mcp/tool-call-formatter.js.map +1 -1
  109. package/dist/mcp/tools/buffer.d.ts +1 -0
  110. package/dist/mcp/tools/buffer.d.ts.map +1 -1
  111. package/dist/mcp/tools/buffer.js +33 -1
  112. package/dist/mcp/tools/buffer.js.map +1 -1
  113. package/dist/mcp/tools/code.d.ts +6 -0
  114. package/dist/mcp/tools/code.d.ts.map +1 -1
  115. package/dist/mcp/tools/code.js +92 -13
  116. package/dist/mcp/tools/code.js.map +1 -1
  117. package/dist/mcp/tools/file-gateway.d.ts +50 -4
  118. package/dist/mcp/tools/file-gateway.d.ts.map +1 -1
  119. package/dist/mcp/tools/file-gateway.js +11 -10
  120. package/dist/mcp/tools/file-gateway.js.map +1 -1
  121. package/dist/mcp/tools/policy.d.ts +17 -0
  122. package/dist/mcp/tools/policy.d.ts.map +1 -1
  123. package/dist/mcp/tools/policy.js +18 -6
  124. package/dist/mcp/tools/policy.js.map +1 -1
  125. package/dist/mcp/tools/prRisk.d.ts +18 -1
  126. package/dist/mcp/tools/prRisk.d.ts.map +1 -1
  127. package/dist/mcp/tools/prRisk.js +95 -7
  128. package/dist/mcp/tools/prRisk.js.map +1 -1
  129. package/dist/mcp/tools/repo.d.ts.map +1 -1
  130. package/dist/mcp/tools/repo.js +73 -25
  131. package/dist/mcp/tools/repo.js.map +1 -1
  132. package/dist/mcp/tools/response.d.ts.map +1 -1
  133. package/dist/mcp/tools/response.js +17 -2
  134. package/dist/mcp/tools/response.js.map +1 -1
  135. package/dist/mcp/tools/runtime.d.ts +8 -1
  136. package/dist/mcp/tools/runtime.d.ts.map +1 -1
  137. package/dist/mcp/tools/runtime.js +84 -15
  138. package/dist/mcp/tools/runtime.js.map +1 -1
  139. package/dist/mcp/tools/search-edit/index.d.ts.map +1 -1
  140. package/dist/mcp/tools/search-edit/index.js +32 -8
  141. package/dist/mcp/tools/search-edit/index.js.map +1 -1
  142. package/dist/mcp/tools/search-edit/planner.d.ts +52 -2
  143. package/dist/mcp/tools/search-edit/planner.d.ts.map +1 -1
  144. package/dist/mcp/tools/search-edit/planner.js +48 -17
  145. package/dist/mcp/tools/search-edit/planner.js.map +1 -1
  146. package/dist/mcp/tools/search-edit/rename.d.ts +20 -0
  147. package/dist/mcp/tools/search-edit/rename.d.ts.map +1 -0
  148. package/dist/mcp/tools/search-edit/rename.js +107 -0
  149. package/dist/mcp/tools/search-edit/rename.js.map +1 -0
  150. package/dist/mcp/tools/search-edit/signature.d.ts +26 -0
  151. package/dist/mcp/tools/search-edit/signature.d.ts.map +1 -0
  152. package/dist/mcp/tools/search-edit/signature.js +421 -0
  153. package/dist/mcp/tools/search-edit/signature.js.map +1 -0
  154. package/dist/mcp/tools/search-edit/structural.d.ts +6 -0
  155. package/dist/mcp/tools/search-edit/structural.d.ts.map +1 -1
  156. package/dist/mcp/tools/search-edit/structural.js +10 -0
  157. package/dist/mcp/tools/search-edit/structural.js.map +1 -1
  158. package/dist/mcp/tools/semantic-enrichment.d.ts +2 -0
  159. package/dist/mcp/tools/semantic-enrichment.d.ts.map +1 -1
  160. package/dist/mcp/tools/semantic-enrichment.js +37 -1
  161. package/dist/mcp/tools/semantic-enrichment.js.map +1 -1
  162. package/dist/mcp/tools/symbol-edit/ast.d.ts.map +1 -1
  163. package/dist/mcp/tools/symbol-edit/ast.js +4 -1
  164. package/dist/mcp/tools/symbol-edit/ast.js.map +1 -1
  165. package/dist/mcp/tools/symbol-edit/index.d.ts.map +1 -1
  166. package/dist/mcp/tools/symbol-edit/index.js +0 -1
  167. package/dist/mcp/tools/symbol-edit/index.js.map +1 -1
  168. package/dist/mcp/tools/symbol.d.ts.map +1 -1
  169. package/dist/mcp/tools/symbol.js +23 -3
  170. package/dist/mcp/tools/symbol.js.map +1 -1
  171. package/dist/mcp/tools/tool-descriptors.d.ts +1 -0
  172. package/dist/mcp/tools/tool-descriptors.d.ts.map +1 -1
  173. package/dist/mcp/tools/tool-descriptors.js +6 -3
  174. package/dist/mcp/tools/tool-descriptors.js.map +1 -1
  175. package/dist/mcp/tools/usage.d.ts.map +1 -1
  176. package/dist/mcp/tools/usage.js +5 -0
  177. package/dist/mcp/tools/usage.js.map +1 -1
  178. package/dist/mcp/tools.d.ts +259 -156
  179. package/dist/mcp/tools.d.ts.map +1 -1
  180. package/dist/mcp/tools.js +210 -75
  181. package/dist/mcp/tools.js.map +1 -1
  182. package/dist/observability/aggregator.d.ts +3 -0
  183. package/dist/observability/aggregator.d.ts.map +1 -1
  184. package/dist/observability/aggregator.js +27 -0
  185. package/dist/observability/aggregator.js.map +1 -1
  186. package/dist/observability/event-tap.d.ts +6 -0
  187. package/dist/observability/event-tap.d.ts.map +1 -1
  188. package/dist/observability/event-tap.js.map +1 -1
  189. package/dist/observability/types.d.ts +9 -0
  190. package/dist/observability/types.d.ts.map +1 -1
  191. package/dist/observability/types.js.map +1 -1
  192. package/dist/runtime/executor.d.ts +6 -0
  193. package/dist/runtime/executor.d.ts.map +1 -1
  194. package/dist/runtime/executor.js +16 -8
  195. package/dist/runtime/executor.js.map +1 -1
  196. package/dist/runtime/response-artifacts.d.ts +14 -2
  197. package/dist/runtime/response-artifacts.d.ts.map +1 -1
  198. package/dist/runtime/response-artifacts.js +66 -17
  199. package/dist/runtime/response-artifacts.js.map +1 -1
  200. package/dist/runtime/runtimes.d.ts.map +1 -1
  201. package/dist/runtime/runtimes.js +15 -0
  202. package/dist/runtime/runtimes.js.map +1 -1
  203. package/dist/semantic/enrichment.d.ts +2 -0
  204. package/dist/semantic/enrichment.d.ts.map +1 -1
  205. package/dist/semantic/enrichment.js.map +1 -1
  206. package/dist/server.d.ts +2 -2
  207. package/dist/server.d.ts.map +1 -1
  208. package/dist/server.js +123 -25
  209. package/dist/server.js.map +1 -1
  210. package/package.json +14 -8
  211. package/templates/SDL.md +25 -16
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp/tools/search-edit/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp/tools/search-edit/index.ts"],"names":[],"mappings":"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"}
@@ -15,10 +15,13 @@
15
15
  * `FILE_WRITE_DENY_EXTENSIONS`
16
16
  * - Missing/unreadable files are surfaced in `filesSkipped`
17
17
  */
18
+ import { type Stats } from "fs";
18
19
  import type { RetrievalEvidence } from "../../../retrieval/types.js";
19
20
  import type { FileWriteResponse } from "../../tools.js";
20
21
  import type { PlannedFileEdit, PlanPrecondition } from "./plan-store.js";
21
- import { type StructuralQueryInput } from "./structural.js";
22
+ import { type SignatureOps } from "./signature.js";
23
+ export type { SignatureOps };
24
+ import { type StructuralQueryCache, type StructuralQueryInput, type StructuralSourceEdit } from "./structural.js";
22
25
  export interface SearchEditQueryInput {
23
26
  literal?: string;
24
27
  regex?: string;
@@ -31,6 +34,12 @@ export interface SearchEditQueryInput {
31
34
  kind?: string;
32
35
  };
33
36
  symbolIds?: string[];
37
+ rename?: {
38
+ newName: string;
39
+ minConfidence?: number;
40
+ includeTextOnlyMatches?: boolean;
41
+ };
42
+ signature?: SignatureOps;
34
43
  /** For editMode=replaceLines: the replacement line range payload. */
35
44
  replaceLines?: {
36
45
  start: number;
@@ -65,7 +74,7 @@ export interface SearchEditBatchOperation {
65
74
  }
66
75
  export interface SearchEditPreviewRequest {
67
76
  repoId: string;
68
- targeting?: "text" | "symbol" | "identifier" | "structural";
77
+ targeting?: "text" | "symbol" | "identifier" | "structural" | "rename" | "signature";
69
78
  query?: SearchEditQueryInput;
70
79
  filters?: SearchEditFilters;
71
80
  editMode?: FileWriteResponse["mode"];
@@ -77,6 +86,16 @@ export interface SearchEditPreviewRequest {
77
86
  maxPlanBytes?: number;
78
87
  createBackup?: boolean;
79
88
  }
89
+ export interface SearchEditSingleOperationRequest extends SearchEditPreviewRequest {
90
+ targeting: "text" | "symbol" | "identifier" | "structural" | "rename" | "signature";
91
+ query: SearchEditQueryInput;
92
+ editMode: FileWriteResponse["mode"];
93
+ operations?: undefined;
94
+ renameCollisionFiles?: Set<string>;
95
+ structuralLanguage?: string;
96
+ structuralQueryCache?: StructuralQueryCache;
97
+ structuralDeadlineMs?: number;
98
+ }
80
99
  export interface PreviewFileSkip {
81
100
  path: string;
82
101
  reason: string;
@@ -134,6 +153,15 @@ export interface PreviewResult {
134
153
  partial?: boolean;
135
154
  };
136
155
  }
156
+ export declare const DEFAULT_MAX_FILES = 50;
157
+ export declare const DEFAULT_MAX_TOTAL_MATCHES = 500;
158
+ export declare const MAX_PLAN_BYTES: number;
159
+ export declare const DEFAULT_PREVIEW_CONTEXT_LINES = 2;
160
+ export declare function maxFilesReachedReason(maxFiles: number): string;
161
+ export declare function maxTotalMatchesReachedReason(maxTotalMatches: number): string;
162
+ export declare function matchesExceedTotalCapReason(maxTotalMatches: number): string;
163
+ export declare function aggregateByteCapExceededReason(maxPlanBytes: number): string;
164
+ export declare function isPartialSkipReason(reason: string): boolean;
137
165
  /**
138
166
  * Compile a regex from user query. Exactly one of `literal` / `regex`
139
167
  * must be set.
@@ -154,5 +182,27 @@ export declare function enumerateRepoFiles(rootPath: string, filters: SearchEdit
154
182
  skipped: PreviewFileSkip[];
155
183
  }>;
156
184
  export declare function buildSearchEditPreviewSnippets(content: string, newContent: string, contextLines: number, regex: RegExp | null): PreviewSnippets;
185
+ interface SourceRange {
186
+ operationId: string;
187
+ start: number;
188
+ end: number;
189
+ }
190
+ export interface SourceEdit extends SourceRange {
191
+ replacement: string;
192
+ }
193
+ export declare function applySourceEdits(content: string, edits: SourceEdit[]): string;
194
+ export declare function toSourceEdits(edits: StructuralSourceEdit[], operationId: string): SourceEdit[];
195
+ interface SafeReadCandidateResult {
196
+ content: string;
197
+ contentSha: string;
198
+ stats: Stats;
199
+ }
200
+ export declare function readSearchEditCandidateFile(rootPath: string, abs: string): Promise<{
201
+ ok: true;
202
+ value: SafeReadCandidateResult;
203
+ } | {
204
+ ok: false;
205
+ reason: string;
206
+ }>;
157
207
  export declare function planSearchEditPreview(request: SearchEditPreviewRequest): Promise<PreviewResult>;
158
208
  //# sourceMappingURL=planner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/search-edit/planner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planner.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/search-edit/planner.ts"],"names":[],"mappings":"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"}
@@ -26,31 +26,33 @@ import { NotFoundError, ValidationError } from "../../../domain/errors.js";
26
26
  import { resolveSymbolRef } from "../../../util/resolve-symbol-ref.js";
27
27
  import { narrowFilesForQuery } from "../../../retrieval/orchestrator.js";
28
28
  import { FILE_WRITE_DENY_EXTENSIONS, MAX_FILE_SIZE_BYTES, isIndexedSource, prepareNewContent, validateExactlyOneMode, } from "../file-write-internals.js";
29
+ import { prepareRenameRequest, validateRenameRequest } from "./rename.js";
30
+ import { planSignatureSearchEditPreview } from "./signature.js";
29
31
  import { collectIdentifierSourceEdits, collectStructuralSourceEdits, createStructuralQueryCache, getStructuralExtensions, getStructuralLanguageForPath, isStructuralLanguageSupported, STRUCTURAL_QUERY_TIME_BUDGET_ERROR, structuralLanguageMismatchReason, } from "./structural.js";
30
- const DEFAULT_MAX_FILES = 50;
32
+ export const DEFAULT_MAX_FILES = 50;
31
33
  const DEFAULT_MAX_MATCHES_PER_FILE = 100;
32
- const DEFAULT_MAX_TOTAL_MATCHES = 500;
33
- const MAX_PLAN_BYTES = 10 * 1024 * 1024; // 10MB aggregate cap per plan
34
- const DEFAULT_PREVIEW_CONTEXT_LINES = 2;
34
+ export const DEFAULT_MAX_TOTAL_MATCHES = 500;
35
+ export const MAX_PLAN_BYTES = 10 * 1024 * 1024; // 10MB aggregate cap per plan
36
+ export const DEFAULT_PREVIEW_CONTEXT_LINES = 2;
35
37
  const MAX_PREVIEW_SNIPPET_LINES = 80;
36
38
  const MAX_AST_MATCH_DETAILS_PER_FILE = 5;
37
39
  const MAX_AST_CAPTURE_DETAILS_PER_MATCH = 8;
38
40
  const MAX_AST_CAPTURE_TEXT_CHARS = 120;
39
41
  const STRUCTURAL_PREVIEW_REQUEST_BUDGET_MS = 10_000;
40
42
  const STRUCTURAL_QUERY_TIME_BUDGET_SKIP_REASON = STRUCTURAL_QUERY_TIME_BUDGET_ERROR;
41
- function maxFilesReachedReason(maxFiles) {
43
+ export function maxFilesReachedReason(maxFiles) {
42
44
  return `maxFiles-reached:${maxFiles}; raise maxFiles or narrow filters/query`;
43
45
  }
44
- function maxTotalMatchesReachedReason(maxTotalMatches) {
46
+ export function maxTotalMatchesReachedReason(maxTotalMatches) {
45
47
  return `maxTotalMatches-reached:${maxTotalMatches}; raise maxTotalMatches or narrow filters/query`;
46
48
  }
47
- function matchesExceedTotalCapReason(maxTotalMatches) {
49
+ export function matchesExceedTotalCapReason(maxTotalMatches) {
48
50
  return `matches-exceed-total-cap:${maxTotalMatches}; raise maxTotalMatches or narrow filters/query`;
49
51
  }
50
- function aggregateByteCapExceededReason(maxPlanBytes) {
52
+ export function aggregateByteCapExceededReason(maxPlanBytes) {
51
53
  return `aggregate-byte-cap-exceeded:${maxPlanBytes}; raise maxPlanBytes or narrow filters/query`;
52
54
  }
53
- function isPartialSkipReason(reason) {
55
+ export function isPartialSkipReason(reason) {
54
56
  return (reason.startsWith("maxFiles-reached:") ||
55
57
  reason.startsWith("maxTotalMatches-reached:") ||
56
58
  reason === STRUCTURAL_QUERY_TIME_BUDGET_SKIP_REASON ||
@@ -610,7 +612,7 @@ function changedSourceEdits(before, after) {
610
612
  },
611
613
  ];
612
614
  }
613
- function applySourceEdits(content, edits) {
615
+ export function applySourceEdits(content, edits) {
614
616
  const sorted = [...edits].sort((a, b) => a.start - b.start || a.end - b.end);
615
617
  const chunks = [];
616
618
  let cursor = 0;
@@ -625,7 +627,9 @@ function applySourceEdits(content, edits) {
625
627
  return chunks.join("");
626
628
  }
627
629
  function isAstAwareTargeting(request) {
628
- return (request.targeting === "identifier" || request.targeting === "structural");
630
+ return (request.targeting === "identifier" ||
631
+ request.targeting === "structural" ||
632
+ request.targeting === "rename");
629
633
  }
630
634
  function validateAstAwareRequest(request) {
631
635
  if (!isAstAwareTargeting(request))
@@ -633,6 +637,10 @@ function validateAstAwareRequest(request) {
633
637
  if (request.editMode !== "replacePattern") {
634
638
  throw new ValidationError(`${request.targeting} targeting currently supports editMode="replacePattern" only`);
635
639
  }
640
+ if (request.targeting === "rename") {
641
+ validateRenameRequest(request);
642
+ return;
643
+ }
636
644
  if (request.targeting === "identifier") {
637
645
  if (request.query.literal === undefined) {
638
646
  throw new ValidationError("identifier targeting requires query.literal");
@@ -743,7 +751,7 @@ function prepareAstAwareRequest(request) {
743
751
  };
744
752
  }
745
753
  function collectAstAwareStructuralEdits(content, relPath, request, maxMatches) {
746
- if (request.targeting === "identifier") {
754
+ if (request.targeting === "identifier" || request.targeting === "rename") {
747
755
  return collectIdentifierSourceEdits({
748
756
  content,
749
757
  relPath,
@@ -774,7 +782,7 @@ function collectAstAwareStructuralEdits(content, relPath, request, maxMatches) {
774
782
  }
775
783
  return [];
776
784
  }
777
- function toSourceEdits(edits, operationId) {
785
+ export function toSourceEdits(edits, operationId) {
778
786
  return edits.map((edit) => ({
779
787
  operationId,
780
788
  start: edit.start,
@@ -976,7 +984,7 @@ function isStructuralBudgetError(error) {
976
984
  return (error instanceof ValidationError &&
977
985
  error.message === STRUCTURAL_QUERY_TIME_BUDGET_ERROR);
978
986
  }
979
- async function readSearchEditCandidateFile(rootPath, abs) {
987
+ export async function readSearchEditCandidateFile(rootPath, abs) {
980
988
  try {
981
989
  validatePathWithinRoot(rootPath, abs);
982
990
  }
@@ -1295,7 +1303,11 @@ export async function planSearchEditPreview(request) {
1295
1303
  if (request.operations && request.operations.length > 0) {
1296
1304
  return planSearchEditBatchPreview(request, request.operations);
1297
1305
  }
1298
- return planSingleSearchEditPreview(coerceSingleSearchEditRequest(request));
1306
+ const single = coerceSingleSearchEditRequest(request);
1307
+ if (single.targeting === "signature") {
1308
+ return planSignatureSearchEditPreview(single);
1309
+ }
1310
+ return planSingleSearchEditPreview(single);
1299
1311
  }
1300
1312
  /**
1301
1313
  * Build the preview plan for a request. Caller stores the result.
@@ -1325,7 +1337,14 @@ async function planSingleSearchEditPreview(request) {
1325
1337
  let regex = null;
1326
1338
  let candidatesCapped = false;
1327
1339
  let retrievalEvidence;
1328
- if (request.targeting === "text" || isAstAwareTargeting(request)) {
1340
+ if (request.targeting === "rename") {
1341
+ const renamePlan = await prepareRenameRequest(conn, request);
1342
+ request = renamePlan.request;
1343
+ candidates = renamePlan.candidates;
1344
+ skipped = renamePlan.skipped;
1345
+ regex = renamePlan.regex;
1346
+ }
1347
+ else if (request.targeting === "text" || isAstAwareTargeting(request)) {
1329
1348
  if (request.targeting === "text") {
1330
1349
  regex = compileSearchRegex(request.query, true);
1331
1350
  }
@@ -1540,7 +1559,16 @@ async function planSingleSearchEditPreview(request) {
1540
1559
  continue;
1541
1560
  }
1542
1561
  if (isAstAwareTargeting(request) && !isAstAwareSourcePath(rel)) {
1543
- skipped.push({ path: rel, reason: "structural-unsupported-extension" });
1562
+ skipped.push({
1563
+ path: rel,
1564
+ reason: request.targeting === "rename"
1565
+ ? "unsupported-language"
1566
+ : "structural-unsupported-extension",
1567
+ });
1568
+ continue;
1569
+ }
1570
+ if (request.targeting === "rename" && request.renameCollisionFiles?.has(rel)) {
1571
+ skipped.push({ path: rel, reason: "name-collision" });
1544
1572
  continue;
1545
1573
  }
1546
1574
  if (request.targeting === "structural") {
@@ -1613,6 +1641,9 @@ async function planSingleSearchEditPreview(request) {
1613
1641
  continue;
1614
1642
  }
1615
1643
  if (structuralEdits.length === 0) {
1644
+ if (request.targeting === "rename") {
1645
+ skipped.push({ path: rel, reason: "no-identifier-match" });
1646
+ }
1616
1647
  continue;
1617
1648
  }
1618
1649
  const sourceEdits = toSourceEdits(structuralEdits, "preview");
@@ -1 +1 @@
1
- {"version":3,"file":"planner.js","sourceRoot":"","sources":["../../../../src/mcp/tools/search-edit/planner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planner.js","sourceRoot":"","sources":["../../../../src/mcp/tools/search-edit/planner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Rename planner for `sdl.search.edit` `targeting: "rename"`.
3
+ *
4
+ * Resolves the target symbol, gathers graph-scoped candidate files
5
+ * (declaration file + referencing files), flags name collisions, and
6
+ * optionally reports text-only recall matches without editing them.
7
+ */
8
+ import type { getLadybugConn } from "../../../db/ladybug.js";
9
+ import { type PreviewFileSkip, type SearchEditSingleOperationRequest } from "./planner.js";
10
+ export declare function wordRegexForIdentifier(name: string): RegExp;
11
+ /** Validation for the rename targeting branch (throws ValidationError). */
12
+ export declare function validateRenameRequest(request: SearchEditSingleOperationRequest): void;
13
+ export interface RenamePlan {
14
+ request: SearchEditSingleOperationRequest;
15
+ candidates: string[];
16
+ skipped: PreviewFileSkip[];
17
+ regex: RegExp;
18
+ }
19
+ export declare function prepareRenameRequest(conn: Awaited<ReturnType<typeof getLadybugConn>>, request: SearchEditSingleOperationRequest): Promise<RenamePlan>;
20
+ //# sourceMappingURL=rename.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rename.d.ts","sourceRoot":"","sources":["../../../../src/mcp/tools/search-edit/rename.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAM7D,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,gCAAgC,EACtC,MAAM,cAAc,CAAC;AAItB,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG3D;AAED,2EAA2E;AAC3E,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,gCAAgC,GACxC,IAAI,CAeN;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,gCAAgC,CAAC;IAC1C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC,EAChD,OAAO,EAAE,gCAAgC,GACxC,OAAO,CAAC,UAAU,CAAC,CAuFrB"}