frontend-guardian-core 3.12.1 → 3.13.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/bin/fg-core.js CHANGED
@@ -105,7 +105,7 @@ const MODULE_RULES = {
105
105
 
106
106
  function showHelp() {
107
107
  console.log(`
108
- Frontend Guardian Core v3.12.1
108
+ Frontend Guardian Core v3.13.0
109
109
 
110
110
  Usage:
111
111
  fg-core <project-dir> [options]
package/bin/fg-lsp.js CHANGED
@@ -27,7 +27,7 @@ for (let i = 0; i < args.length; i++) {
27
27
  } else if (arg === "--severity" || arg === "-s") {
28
28
  minSeverity = args[++i] ?? "suggestion";
29
29
  } else if (arg === "--help" || arg === "-h") {
30
- console.log(`Frontend Guardian LSP Server v3.12.1
30
+ console.log(`Frontend Guardian LSP Server v3.13.0
31
31
 
32
32
  Usage: fg-lsp [options]
33
33
 
package/bin/fg-server.js CHANGED
@@ -10,7 +10,7 @@ import { DashboardServer } from "../dist/index.js";
10
10
 
11
11
  function showHelp() {
12
12
  console.log(`
13
- Frontend Guardian Dashboard Server v3.12.1
13
+ Frontend Guardian Dashboard Server v3.13.0
14
14
 
15
15
  Usage:
16
16
  fg-server [options]
@@ -62,7 +62,7 @@ async function main() {
62
62
  }
63
63
 
64
64
  console.log(pc.cyan("Frontend Guardian Dashboard Server"));
65
- console.log(pc.gray(` Version: 3.12.1`));
65
+ console.log(pc.gray(` Version: 3.13.0`));
66
66
  console.log("");
67
67
 
68
68
  const server = new DashboardServer({
@@ -85,12 +85,14 @@ export declare class RuleEngine {
85
85
  scan(module: string): Promise<ScanResult>;
86
86
  /**
87
87
  * v3.3.0: 公共单文件扫描方法(用于 IDE 增量诊断)
88
+ * v3.13.0: 支持传入内存中的 source,用于 MCP 上下文感知扫描
88
89
  * 快速扫描单个文件,返回所有匹配的 issues
89
90
  * @param filePath 文件绝对路径
90
91
  * @param module 模块名(可选,用于规则过滤)
92
+ * @param source 文件内容(可选,传则替代磁盘读取)
91
93
  * @returns 扫描发现的 issues
92
94
  */
93
- scanSingleFile(filePath: string, module?: string): Promise<Issue[]>;
95
+ scanSingleFile(filePath: string, module?: string, source?: string): Promise<Issue[]>;
94
96
  /** 扫描单个文件(带智能缓存 + 大文件跳过) */
95
97
  private scanFile;
96
98
  /** 获取扫描文件列表 */
@@ -125,15 +127,21 @@ export declare class RuleEngine {
125
127
  private computeLineOffsets;
126
128
  /**
127
129
  * 应用所有可修复的问题
130
+ * v3.13.0: 支持 sourceOverrides(内存源码)和 writeFiles(控制是否写盘)
128
131
  * @param issues 包含 fix 字段的 Issue 列表
132
+ * @param options 修复选项
129
133
  * @returns 修复统计(dryRun 模式下 filesModified 为空,fixedCount 为预览数量)
130
134
  */
131
- applyFixes(issues: Issue[]): {
135
+ applyFixes(issues: Issue[], options?: {
136
+ sourceOverrides?: Record<string, string>;
137
+ writeFiles?: boolean;
138
+ }): {
132
139
  fixedCount: number;
133
140
  filesModified: string[];
134
141
  errors: string[];
135
142
  previews?: FixPreview[];
136
143
  skippedByUser?: number;
144
+ patchedSources?: Record<string, string>;
137
145
  };
138
146
  /**
139
147
  * v2.4.0: 交互式修复 — 向用户展示 diff 并询问是否应用
@@ -1 +1 @@
1
- {"version":3,"file":"rule-engine.d.ts","sourceRoot":"","sources":["../../src/engine/rule-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rule-engine.d.ts","sourceRoot":"","sources":["../../src/engine/rule-engine.ts"],"names":[],"mappings":"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"}
@@ -208,12 +208,14 @@ class RuleEngine {
208
208
  }
209
209
  /**
210
210
  * v3.3.0: 公共单文件扫描方法(用于 IDE 增量诊断)
211
+ * v3.13.0: 支持传入内存中的 source,用于 MCP 上下文感知扫描
211
212
  * 快速扫描单个文件,返回所有匹配的 issues
212
213
  * @param filePath 文件绝对路径
213
214
  * @param module 模块名(可选,用于规则过滤)
215
+ * @param source 文件内容(可选,传则替代磁盘读取)
214
216
  * @returns 扫描发现的 issues
215
217
  */
216
- async scanSingleFile(filePath, module) {
218
+ async scanSingleFile(filePath, module, source) {
217
219
  const category = module ? this.moduleToCategory(module) : undefined;
218
220
  const activeRules = category
219
221
  ? this.filterRules({
@@ -225,15 +227,16 @@ class RuleEngine {
225
227
  : this.getRules();
226
228
  if (activeRules.length === 0)
227
229
  return [];
228
- const result = await this.scanFile(filePath, activeRules);
230
+ const result = await this.scanFile(filePath, activeRules, source);
229
231
  return result.issues;
230
232
  }
231
233
  /** 扫描单个文件(带智能缓存 + 大文件跳过) */
232
- async scanFile(filePath, rules) {
234
+ async scanFile(filePath, rules, source) {
233
235
  try {
234
- // v2.4.0: 大文件智能跳过
236
+ const hasProvidedSource = source !== undefined;
237
+ // v2.4.0: 大文件智能跳过(仅读取磁盘时检查文件大小)
235
238
  const threshold = this.options.skipLargeFilesThreshold ?? 512_000;
236
- if (threshold > 0) {
239
+ if (threshold > 0 && !hasProvidedSource) {
237
240
  try {
238
241
  const stats = (0, node_fs_1.statSync)(filePath);
239
242
  if (stats.size > threshold) {
@@ -245,19 +248,22 @@ class RuleEngine {
245
248
  // stat 失败继续尝试读取
246
249
  }
247
250
  }
248
- const source = (0, node_fs_1.readFileSync)(filePath, "utf-8");
249
- // Phase 5: 智能缓存命中检查
250
- if (this.cache?.isCached(filePath, source)) {
251
+ if (!hasProvidedSource) {
252
+ source = (0, node_fs_1.readFileSync)(filePath, "utf-8");
253
+ }
254
+ const finalSource = source;
255
+ // Phase 5: 智能缓存命中检查(仅磁盘读取模式启用缓存)
256
+ if (!hasProvidedSource && this.cache?.isCached(filePath, finalSource)) {
251
257
  const cached = this.cache.get(filePath);
252
258
  if (cached) {
253
259
  return { issues: cached };
254
260
  }
255
261
  }
256
262
  const allIssues = [];
257
- const utils = this.createUtils(filePath, source);
263
+ const utils = this.createUtils(filePath, finalSource);
258
264
  const context = {
259
265
  filePath,
260
- source,
266
+ source: finalSource,
261
267
  config: this.config,
262
268
  projectMeta: this.projectMeta,
263
269
  utils,
@@ -278,11 +284,13 @@ class RuleEngine {
278
284
  this.logError(picocolors_1.default.red(` Rule "${rule.id}" failed on ${filePath}:`), err);
279
285
  }
280
286
  }
281
- // Phase 5: 缓存结果
282
- this.cache?.set(filePath, source, allIssues);
287
+ // Phase 5: 缓存结果(仅磁盘读取模式)
288
+ if (!hasProvidedSource) {
289
+ this.cache?.set(filePath, finalSource, allIssues);
290
+ }
283
291
  return { issues: allIssues };
284
292
  }
285
- catch (err) {
293
+ catch (_err) {
286
294
  // 文件读取失败,静默跳过
287
295
  return { issues: [] };
288
296
  }
@@ -453,8 +461,8 @@ class RuleEngine {
453
461
  break;
454
462
  }
455
463
  // 支持目录下的 index 文件
456
- if (files.includes(pathResolve(resolved, "index" + ext))) {
457
- resolved = pathResolve(resolved, "index" + ext);
464
+ if (files.includes(pathResolve(resolved, `index${ext}`))) {
465
+ resolved = pathResolve(resolved, `index${ext}`);
458
466
  found = true;
459
467
  break;
460
468
  }
@@ -464,7 +472,7 @@ class RuleEngine {
464
472
  if (!reverseMap.has(resolved)) {
465
473
  reverseMap.set(resolved, new Set());
466
474
  }
467
- reverseMap.get(resolved).add(file);
475
+ reverseMap.get(resolved)?.add(file);
468
476
  }
469
477
  }
470
478
  }
@@ -593,17 +601,22 @@ class RuleEngine {
593
601
  // ---------------------------------------------------------------------------
594
602
  /**
595
603
  * 应用所有可修复的问题
604
+ * v3.13.0: 支持 sourceOverrides(内存源码)和 writeFiles(控制是否写盘)
596
605
  * @param issues 包含 fix 字段的 Issue 列表
606
+ * @param options 修复选项
597
607
  * @returns 修复统计(dryRun 模式下 filesModified 为空,fixedCount 为预览数量)
598
608
  */
599
- applyFixes(issues) {
609
+ applyFixes(issues, options = {}) {
600
610
  const dryRun = this.options.dryRun;
601
611
  const interactive = this.options.interactive;
612
+ const writeFiles = options.writeFiles !== false;
613
+ const sourceOverrides = options.sourceOverrides ?? {};
602
614
  let fixedCount = 0;
603
615
  let skippedByUser = 0;
604
616
  const filesModified = [];
605
617
  const errors = [];
606
618
  const previews = [];
619
+ const patchedSources = {};
607
620
  // 按文件分组
608
621
  const byFile = new Map();
609
622
  for (const issue of issues) {
@@ -615,14 +628,14 @@ class RuleEngine {
615
628
  }
616
629
  for (const [filePath, fileIssues] of byFile) {
617
630
  try {
618
- let source = (0, node_fs_1.readFileSync)(filePath, "utf-8");
631
+ let source = filePath in sourceOverrides ? sourceOverrides[filePath] : (0, node_fs_1.readFileSync)(filePath, "utf-8");
619
632
  const originalSource = source;
620
633
  // 按行号倒序排列,从文件末尾开始修复,避免行号偏移
621
634
  const sorted = [...fileIssues].sort((a, b) => {
622
- const lineDiff = (b.fix.start.line || 0) - (a.fix.start.line || 0);
635
+ const lineDiff = (b.fix?.start.line || 0) - (a.fix?.start.line || 0);
623
636
  if (lineDiff !== 0)
624
637
  return lineDiff;
625
- return (b.fix.start.column || 0) - (a.fix.start.column || 0);
638
+ return (b.fix?.start.column || 0) - (a.fix?.start.column || 0);
626
639
  });
627
640
  for (const issue of sorted) {
628
641
  const fix = issue.fix;
@@ -669,10 +682,11 @@ class RuleEngine {
669
682
  }
670
683
  }
671
684
  if (source !== originalSource) {
672
- if (!dryRun) {
685
+ if (!dryRun && writeFiles) {
673
686
  (0, node_fs_1.writeFileSync)(filePath, source, "utf-8");
674
687
  }
675
688
  filesModified.push(filePath);
689
+ patchedSources[filePath] = source;
676
690
  }
677
691
  }
678
692
  catch (err) {
@@ -683,6 +697,9 @@ class RuleEngine {
683
697
  if (dryRun) {
684
698
  result.previews = previews;
685
699
  }
700
+ if (Object.keys(patchedSources).length > 0) {
701
+ result.patchedSources = patchedSources;
702
+ }
686
703
  return result;
687
704
  }
688
705
  /**
@@ -723,7 +740,7 @@ class RuleEngine {
723
740
  }
724
741
  }
725
742
  /** 同步读取一行输入 */
726
- readSyncLine(rl) {
743
+ readSyncLine(_rl) {
727
744
  const { stdin, stdout } = process;
728
745
  stdin.setRawMode?.(true);
729
746
  stdin.resume();
@@ -1 +1 @@
1
- {"version":3,"file":"rule-engine.js","sourceRoot":"","sources":["../../src/engine/rule-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rule-engine.js","sourceRoot":"","sources":["../../src/engine/rule-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * v3.13.0: Unified Diff 格式化器
3
+ *
4
+ * 将原始源码与修复后源码转换为标准 unified diff 格式,
5
+ * 供 MCP 客户端直接渲染或应用到编辑器。
6
+ */
7
+ /** 生成标准 unified diff */
8
+ export declare function createUnifiedDiff(filePath: string, original: string, patched: string, contextLines?: number): string;
9
+ /** 批量生成多个文件的 unified diff */
10
+ export declare function createUnifiedDiffs(originals: Record<string, string>, patched: Record<string, string>, contextLines?: number): Record<string, string>;
11
+ //# sourceMappingURL=unified-diff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unified-diff.d.ts","sourceRoot":"","sources":["../../src/formatters/unified-diff.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmJH,wBAAwB;AACxB,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,SAAI,GAAG,MAAM,CAwB/G;AAED,6BAA6B;AAC7B,wBAAgB,kBAAkB,CAC9B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,YAAY,SAAI,GACjB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOxB"}
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+ /**
3
+ * v3.13.0: Unified Diff 格式化器
4
+ *
5
+ * 将原始源码与修复后源码转换为标准 unified diff 格式,
6
+ * 供 MCP 客户端直接渲染或应用到编辑器。
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.createUnifiedDiff = createUnifiedDiff;
10
+ exports.createUnifiedDiffs = createUnifiedDiffs;
11
+ function computeDiffOps(originalLines, patchedLines) {
12
+ const ops = [];
13
+ let i = 0;
14
+ let j = 0;
15
+ let oldLineNum = 1;
16
+ let newLineNum = 1;
17
+ while (i < originalLines.length || j < patchedLines.length) {
18
+ if (i < originalLines.length && j < patchedLines.length && originalLines[i] === patchedLines[j]) {
19
+ ops.push({ type: "=", text: originalLines[i], oldLine: oldLineNum, newLine: newLineNum });
20
+ i++;
21
+ j++;
22
+ oldLineNum++;
23
+ newLineNum++;
24
+ continue;
25
+ }
26
+ // 查找下一个匹配行
27
+ let nextMatchInPatched = -1;
28
+ for (let k = j; k < patchedLines.length; k++) {
29
+ if (k < patchedLines.length && patchedLines[k] === originalLines[i]) {
30
+ nextMatchInPatched = k;
31
+ break;
32
+ }
33
+ }
34
+ let nextMatchInOriginal = -1;
35
+ for (let k = i; k < originalLines.length; k++) {
36
+ if (originalLines[k] === patchedLines[j]) {
37
+ nextMatchInOriginal = k;
38
+ break;
39
+ }
40
+ }
41
+ const distanceToMatchPatched = nextMatchInPatched === -1 ? Number.POSITIVE_INFINITY : nextMatchInPatched - j;
42
+ const distanceToMatchOriginal = nextMatchInOriginal === -1 ? Number.POSITIVE_INFINITY : nextMatchInOriginal - i;
43
+ if (distanceToMatchPatched <= distanceToMatchOriginal && nextMatchInPatched !== -1) {
44
+ // patched 中 j..nextMatchInPatched-1 是新增行
45
+ for (let k = j; k < nextMatchInPatched; k++) {
46
+ ops.push({ type: "+", text: patchedLines[k], newLine: newLineNum });
47
+ newLineNum++;
48
+ }
49
+ j = nextMatchInPatched;
50
+ }
51
+ else if (nextMatchInOriginal !== -1) {
52
+ // original 中 i..nextMatchInOriginal-1 是删除行
53
+ for (let k = i; k < nextMatchInOriginal; k++) {
54
+ ops.push({ type: "-", text: originalLines[k], oldLine: oldLineNum });
55
+ oldLineNum++;
56
+ }
57
+ i = nextMatchInOriginal;
58
+ }
59
+ else {
60
+ // 都不匹配:删除原行并新增补丁行
61
+ if (i < originalLines.length) {
62
+ ops.push({ type: "-", text: originalLines[i], oldLine: oldLineNum });
63
+ i++;
64
+ oldLineNum++;
65
+ }
66
+ if (j < patchedLines.length) {
67
+ ops.push({ type: "+", text: patchedLines[j], newLine: newLineNum });
68
+ j++;
69
+ newLineNum++;
70
+ }
71
+ }
72
+ }
73
+ return ops;
74
+ }
75
+ function buildHunks(ops, contextLines) {
76
+ const hunks = [];
77
+ let i = 0;
78
+ while (i < ops.length) {
79
+ // 跳过不变行
80
+ if (ops[i].type === "=") {
81
+ i++;
82
+ continue;
83
+ }
84
+ // 找到变更区域起止
85
+ const changeStart = i;
86
+ let changeEnd = i;
87
+ while (changeEnd + 1 < ops.length && ops[changeEnd + 1].type !== "=") {
88
+ changeEnd++;
89
+ }
90
+ // 向前/向后扩展上下文
91
+ const hunkStart = Math.max(0, changeStart - contextLines);
92
+ let hunkEnd = Math.min(ops.length - 1, changeEnd + contextLines);
93
+ // 如果后面紧跟着更多变更,合并到同一 hunk
94
+ let lookahead = hunkEnd;
95
+ while (lookahead + 1 < ops.length) {
96
+ const nextChangeStart = lookahead + 1;
97
+ if (ops[nextChangeStart].type === "=") {
98
+ lookahead++;
99
+ continue;
100
+ }
101
+ const gap = nextChangeStart - hunkEnd - 1;
102
+ if (gap > contextLines * 2)
103
+ break;
104
+ let nextChangeEnd = nextChangeStart;
105
+ while (nextChangeEnd + 1 < ops.length && ops[nextChangeEnd + 1].type !== "=") {
106
+ nextChangeEnd++;
107
+ }
108
+ hunkEnd = Math.min(ops.length - 1, nextChangeEnd + contextLines);
109
+ lookahead = hunkEnd;
110
+ }
111
+ const hunkOps = ops.slice(hunkStart, hunkEnd + 1);
112
+ const oldStart = hunkOps.find((o) => o.oldLine !== undefined)?.oldLine ?? 1;
113
+ const newStart = hunkOps.find((o) => o.newLine !== undefined)?.newLine ?? 1;
114
+ const oldLength = hunkOps.filter((o) => o.type === "=" || o.type === "-").length;
115
+ const newLength = hunkOps.filter((o) => o.type === "=" || o.type === "+").length;
116
+ hunks.push({
117
+ oldStart,
118
+ oldLength,
119
+ newStart,
120
+ newLength,
121
+ lines: hunkOps.map((o) => ({ type: o.type, text: o.text })),
122
+ });
123
+ i = hunkEnd + 1;
124
+ }
125
+ return hunks;
126
+ }
127
+ /** 生成标准 unified diff */
128
+ function createUnifiedDiff(filePath, original, patched, contextLines = 3) {
129
+ if (original === patched)
130
+ return "";
131
+ const originalLines = original.split("\n");
132
+ const patchedLines = patched.split("\n");
133
+ // 去除 split 产生的末尾空行(仅当原始文本以 \n 结尾时)
134
+ if (original.endsWith("\n"))
135
+ originalLines.pop();
136
+ if (patched.endsWith("\n"))
137
+ patchedLines.pop();
138
+ const ops = computeDiffOps(originalLines, patchedLines);
139
+ const hunks = buildHunks(ops, contextLines);
140
+ const lines = [`--- a/${filePath}`, `+++ b/${filePath}`];
141
+ for (const hunk of hunks) {
142
+ lines.push(`@@ -${hunk.oldStart},${hunk.oldLength} +${hunk.newStart},${hunk.newLength} @@`);
143
+ for (const { type, text } of hunk.lines) {
144
+ const prefix = type === "=" ? " " : type;
145
+ lines.push(`${prefix}${text}`);
146
+ }
147
+ }
148
+ return `${lines.join("\n")}\n`;
149
+ }
150
+ /** 批量生成多个文件的 unified diff */
151
+ function createUnifiedDiffs(originals, patched, contextLines = 3) {
152
+ const diffs = {};
153
+ for (const file of Object.keys(patched)) {
154
+ const diff = createUnifiedDiff(file, originals[file] ?? "", patched[file], contextLines);
155
+ if (diff)
156
+ diffs[file] = diff;
157
+ }
158
+ return diffs;
159
+ }
160
+ //# sourceMappingURL=unified-diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unified-diff.js","sourceRoot":"","sources":["../../src/formatters/unified-diff.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAoJH,8CAwBC;AAGD,gDAWC;AAzKD,SAAS,cAAc,CAAC,aAAuB,EAAE,YAAsB;IACnE,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,OAAO,CAAC,GAAG,aAAa,CAAC,MAAM,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;QACzD,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;YAC1F,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,CAAC;YACb,SAAS;QACb,CAAC;QAED,WAAW;QACX,IAAI,kBAAkB,GAAG,CAAC,CAAC,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClE,kBAAkB,GAAG,CAAC,CAAC;gBACvB,MAAM;YACV,CAAC;QACL,CAAC;QAED,IAAI,mBAAmB,GAAG,CAAC,CAAC,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,IAAI,aAAa,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvC,mBAAmB,GAAG,CAAC,CAAC;gBACxB,MAAM;YACV,CAAC;QACL,CAAC;QAED,MAAM,sBAAsB,GAAG,kBAAkB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAC7G,MAAM,uBAAuB,GAAG,mBAAmB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAEhH,IAAI,sBAAsB,IAAI,uBAAuB,IAAI,kBAAkB,KAAK,CAAC,CAAC,EAAE,CAAC;YACjF,yCAAyC;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,kBAAkB,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;gBACpE,UAAU,EAAE,CAAC;YACjB,CAAC;YACD,CAAC,GAAG,kBAAkB,CAAC;QAC3B,CAAC;aAAM,IAAI,mBAAmB,KAAK,CAAC,CAAC,EAAE,CAAC;YACpC,2CAA2C;YAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAmB,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;gBACrE,UAAU,EAAE,CAAC;YACjB,CAAC;YACD,CAAC,GAAG,mBAAmB,CAAC;QAC5B,CAAC;aAAM,CAAC;YACJ,kBAAkB;YAClB,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;gBACrE,CAAC,EAAE,CAAC;gBACJ,UAAU,EAAE,CAAC;YACjB,CAAC;YACD,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;gBAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;gBACpE,CAAC,EAAE,CAAC;gBACJ,UAAU,EAAE,CAAC;YACjB,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC;AAED,SAAS,UAAU,CAAC,GAAa,EAAE,YAAoB;IACnD,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QACpB,QAAQ;QACR,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACtB,CAAC,EAAE,CAAC;YACJ,SAAS;QACb,CAAC;QAED,WAAW;QACX,MAAM,WAAW,GAAG,CAAC,CAAC;QACtB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,OAAO,SAAS,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACnE,SAAS,EAAE,CAAC;QAChB,CAAC;QAED,aAAa;QACb,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,YAAY,CAAC,CAAC;QAC1D,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC,CAAC;QAEjE,yBAAyB;QACzB,IAAI,SAAS,GAAG,OAAO,CAAC;QACxB,OAAO,SAAS,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,eAAe,GAAG,SAAS,GAAG,CAAC,CAAC;YACtC,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBACpC,SAAS,EAAE,CAAC;gBACZ,SAAS;YACb,CAAC;YACD,MAAM,GAAG,GAAG,eAAe,GAAG,OAAO,GAAG,CAAC,CAAC;YAC1C,IAAI,GAAG,GAAG,YAAY,GAAG,CAAC;gBAAE,MAAM;YAElC,IAAI,aAAa,GAAG,eAAe,CAAC;YACpC,OAAO,aAAa,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBAC3E,aAAa,EAAE,CAAC;YACpB,CAAC;YACD,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,aAAa,GAAG,YAAY,CAAC,CAAC;YACjE,SAAS,GAAG,OAAO,CAAC;QACxB,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC;QAC5E,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC;QACjF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC;QAEjF,KAAK,CAAC,IAAI,CAAC;YACP,QAAQ;YACR,SAAS;YACT,QAAQ;YACR,SAAS;YACT,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;SAC9D,CAAC,CAAC;QAEH,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,wBAAwB;AACxB,SAAgB,iBAAiB,CAAC,QAAgB,EAAE,QAAgB,EAAE,OAAe,EAAE,YAAY,GAAG,CAAC;IACnG,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,EAAE,CAAC;IAEpC,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEzC,mCAAmC;IACnC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,aAAa,CAAC,GAAG,EAAE,CAAC;IACjD,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,YAAY,CAAC,GAAG,EAAE,CAAC;IAE/C,MAAM,GAAG,GAAG,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAE5C,MAAM,KAAK,GAAa,CAAC,SAAS,QAAQ,EAAE,EAAE,SAAS,QAAQ,EAAE,CAAC,CAAC;IAEnE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC;QAC5F,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC,CAAC;QACnC,CAAC;IACL,CAAC;IAED,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AACnC,CAAC;AAED,6BAA6B;AAC7B,SAAgB,kBAAkB,CAC9B,SAAiC,EACjC,OAA+B,EAC/B,YAAY,GAAG,CAAC;IAEhB,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;QACzF,IAAI,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACjC,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC"}
@@ -15,7 +15,7 @@ const tools_js_1 = require("./tools.js");
15
15
  async function runMCPServer(options) {
16
16
  // MCP 占用 stdout;启动前必须停止所有向 stdout 的写入。
17
17
  // stderr 仍可自由使用,因为 stdio transport 只读 stdin / 只写 stdout。
18
- const server = new index_js_1.Server({ name: "frontend-guardian", version: "3.12.1" }, { capabilities: { tools: {} } });
18
+ const server = new index_js_1.Server({ name: "frontend-guardian", version: "3.13.0" }, { capabilities: { tools: {} } });
19
19
  server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => ({
20
20
  tools: (0, tools_js_1.getToolDefinitions)(),
21
21
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAuB/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAqH/E,gFAAgF;AAChF,4EAA4E;AAC5E,gFAAgF;AAEhF,wBAAgB,kBAAkB,IAAI,IAAI,EAAE,CAqY3C;AAED,gFAAgF;AAChF,yEAAyE;AACzE,gFAAgF;AAEhF,wBAAsB,cAAc,CAChC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,gBAAgB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAkCxB"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAwB/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA4K/E,gFAAgF;AAChF,4EAA4E;AAC5E,gFAAgF;AAEhF,wBAAgB,kBAAkB,IAAI,IAAI,EAAE,CA6b3C;AAED,gFAAgF;AAChF,yEAAyE;AACzE,gFAAgF;AAEhF,wBAAsB,cAAc,CAChC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,gBAAgB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAkCxB"}
package/dist/mcp/tools.js CHANGED
@@ -5,9 +5,12 @@
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.getToolDefinitions = getToolDefinitions;
7
7
  exports.handleToolCall = handleToolCall;
8
+ const node_fs_1 = require("node:fs");
9
+ const node_path_1 = require("node:path");
8
10
  const globby_1 = require("globby");
9
11
  const indexer_js_1 = require("../engine/indexer.js");
10
12
  const rule_engine_js_1 = require("../engine/rule-engine.js");
13
+ const unified_diff_js_1 = require("../formatters/unified-diff.js");
11
14
  const miniprogram_js_1 = require("../integrations/miniprogram.js");
12
15
  const page_health_js_1 = require("../integrations/page-health.js");
13
16
  const playwright_js_1 = require("../integrations/playwright.js");
@@ -62,6 +65,51 @@ function createMcpEngine(options, overrides = {}) {
62
65
  ...overrides,
63
66
  });
64
67
  }
68
+ /** v3.13.0: 每个 MCP Server 进程缓存一个 ProjectIndexer,避免重复建索引 */
69
+ const projectIndexerCache = new Map();
70
+ /** 确保项目索引可用 */
71
+ async function ensureProjectIndexer(projectDir) {
72
+ const resolvedDir = (0, node_path_1.resolve)(projectDir);
73
+ const cached = projectIndexerCache.get(resolvedDir);
74
+ if (cached?.isValid()) {
75
+ return cached;
76
+ }
77
+ const indexer = new indexer_js_1.ProjectIndexer(resolvedDir);
78
+ if (!indexer.isValid()) {
79
+ const files = await (0, globby_1.globby)(["**/*.js", "**/*.ts", "**/*.jsx", "**/*.tsx", "**/*.vue"], {
80
+ cwd: resolvedDir,
81
+ ignore: ["**/node_modules/**", "**/dist/**", "**/build/**", "**/.git/**"],
82
+ absolute: true,
83
+ });
84
+ await indexer.buildIndex(files);
85
+ }
86
+ projectIndexerCache.set(resolvedDir, indexer);
87
+ return indexer;
88
+ }
89
+ /** v3.13.0: 解析上下文扫描目标文件列表 */
90
+ async function resolveContextFiles(context, projectDir) {
91
+ const primaryFile = (0, node_path_1.resolve)(projectDir, context.file);
92
+ const expandedFiles = [];
93
+ if (context.expand) {
94
+ const indexer = await ensureProjectIndexer(projectDir);
95
+ const importers = indexer.getTransitiveImporters(primaryFile);
96
+ const maxExpanded = 50;
97
+ for (const file of importers.slice(0, maxExpanded)) {
98
+ if (file !== primaryFile) {
99
+ expandedFiles.push(file);
100
+ }
101
+ }
102
+ }
103
+ return { primaryFile, expandedFiles };
104
+ }
105
+ /** 判断 issue 行范围是否与上下文范围相交 */
106
+ function issueIntersectsRange(issue, range) {
107
+ const startLine = issue.line ?? 1;
108
+ const endLine = issue.endLine ?? issue.line ?? 1;
109
+ const rangeStart = range.startLine ?? 1;
110
+ const rangeEnd = range.endLine ?? rangeStart;
111
+ return startLine <= rangeEnd && endLine >= rangeStart;
112
+ }
65
113
  /** 注册指定模块的规则 */
66
114
  function registerModuleRules(engine, moduleName) {
67
115
  if (!moduleName || moduleName === "all") {
@@ -194,6 +242,33 @@ function getToolDefinitions() {
194
242
  type: "boolean",
195
243
  description: "Return JSON output instead of Markdown.",
196
244
  },
245
+ // v3.13.0: 编辑器上下文感知扫描
246
+ context: {
247
+ type: "object",
248
+ description: "Editor context for focused scan. Provide file path and optionally range, unsaved content, or expand to related files.",
249
+ properties: {
250
+ file: {
251
+ type: "string",
252
+ description: "Absolute or relative path to the file being edited.",
253
+ },
254
+ range: {
255
+ type: "object",
256
+ description: "Line range to focus on (1-based, inclusive).",
257
+ properties: {
258
+ startLine: { type: "number" },
259
+ startColumn: { type: "number" },
260
+ endLine: { type: "number" },
261
+ endColumn: { type: "number" },
262
+ },
263
+ },
264
+ content: { type: "string", description: "Unsaved editor content (optional)." },
265
+ expand: {
266
+ type: "boolean",
267
+ description: "Expand scan to related files via import graph (default false).",
268
+ },
269
+ },
270
+ required: ["file"],
271
+ },
197
272
  },
198
273
  },
199
274
  },
@@ -220,6 +295,33 @@ function getToolDefinitions() {
220
295
  diff: { type: "string", description: "Git diff range, e.g. main...feature." },
221
296
  dryRun: { type: "boolean", description: "Show diff preview without applying." },
222
297
  json: { type: "boolean", description: "Return JSON output." },
298
+ // v3.13.0: 编辑器上下文感知修复
299
+ context: {
300
+ type: "object",
301
+ description: "Editor context for focused fix. Provide file path and optionally range, unsaved content, or expand to related files.",
302
+ properties: {
303
+ file: {
304
+ type: "string",
305
+ description: "Absolute or relative path to the file being edited.",
306
+ },
307
+ range: {
308
+ type: "object",
309
+ description: "Line range to focus on (1-based, inclusive).",
310
+ properties: {
311
+ startLine: { type: "number" },
312
+ startColumn: { type: "number" },
313
+ endLine: { type: "number" },
314
+ endColumn: { type: "number" },
315
+ },
316
+ },
317
+ content: { type: "string", description: "Unsaved editor content (optional)." },
318
+ expand: {
319
+ type: "boolean",
320
+ description: "Expand scan to related files via import graph (default false).",
321
+ },
322
+ },
323
+ required: ["file"],
324
+ },
223
325
  },
224
326
  },
225
327
  },
@@ -560,7 +662,90 @@ async function handleToolCall(name, args, options) {
560
662
  /** ───────────────────────────────────────────────────────────────────────── */
561
663
  /** 各工具实现 */
562
664
  /** ───────────────────────────────────────────────────────────────────────── */
665
+ async function handleContextScan(args, options) {
666
+ const moduleName = args.module || "context";
667
+ const context = args.context;
668
+ if (!context) {
669
+ throw new Error("Context is required for context-aware scan");
670
+ }
671
+ const { primaryFile, expandedFiles } = await resolveContextFiles(context, options.projectDir);
672
+ const hasContent = context.content !== undefined;
673
+ const contextContent = context.content;
674
+ const contextRange = context.range;
675
+ const engine = createMcpEngine(options, {
676
+ minSeverity: parseSeverity(args.severity),
677
+ files: expandedFiles,
678
+ external: args.external,
679
+ dryRun: args.dryRun,
680
+ });
681
+ registerModuleRules(engine, moduleName === "context" ? "all" : moduleName);
682
+ const allIssues = [];
683
+ // 主文件扫描(支持内存中的未保存内容)
684
+ const primaryModule = moduleName === "context" || moduleName === "all" ? undefined : moduleName;
685
+ const primaryIssues = await engine.scanSingleFile(primaryFile, primaryModule, hasContent ? contextContent : undefined);
686
+ allIssues.push(...primaryIssues);
687
+ // 扩展文件扫描(基于 import 图)
688
+ if (expandedFiles.length > 0) {
689
+ if (moduleName === "context" || moduleName === "all") {
690
+ for (const mod of MODULES) {
691
+ const r = await engine.scan(mod);
692
+ allIssues.push(...r.issues.critical, ...r.issues.warning, ...r.issues.suggestion);
693
+ }
694
+ }
695
+ else {
696
+ const r = await engine.scan(moduleName);
697
+ allIssues.push(...r.issues.critical, ...r.issues.warning, ...r.issues.suggestion);
698
+ }
699
+ }
700
+ // 范围过滤(仅对主文件)
701
+ let filteredIssues = allIssues;
702
+ if (contextRange) {
703
+ filteredIssues = allIssues.filter((i) => i.file !== primaryFile || issueIntersectsRange(i, contextRange));
704
+ }
705
+ const issues = { critical: [], warning: [], suggestion: [] };
706
+ for (const issue of filteredIssues) {
707
+ issues[issue.severity].push(issue);
708
+ }
709
+ const scan = {
710
+ module: moduleName,
711
+ total: filteredIssues.length,
712
+ issues,
713
+ duration: 0,
714
+ filesScanned: (hasContent ? 0 : 1) + expandedFiles.length,
715
+ filesWithIssues: new Set(filteredIssues.map((i) => i.file)).size,
716
+ };
717
+ let fixResult;
718
+ const diffs = {};
719
+ if ((args.fix || args.dryRun) && filteredIssues.some((i) => i.file === primaryFile && i.fix)) {
720
+ const fixable = filteredIssues.filter((i) => i.file === primaryFile && i.fix && (!contextRange || issueIntersectsRange(i, contextRange)));
721
+ const originalSource = hasContent ? contextContent : (0, node_fs_1.readFileSync)(primaryFile, "utf-8");
722
+ fixResult = engine.applyFixes(fixable, {
723
+ sourceOverrides: { [primaryFile]: originalSource },
724
+ writeFiles: !hasContent,
725
+ });
726
+ const patchedSource = fixResult.patchedSources?.[primaryFile];
727
+ if (patchedSource !== undefined) {
728
+ diffs[primaryFile] = (0, unified_diff_js_1.createUnifiedDiff)(primaryFile, originalSource, patchedSource);
729
+ }
730
+ }
731
+ return { scan, fixResult, diffs };
732
+ }
563
733
  async function handleScan(args, options) {
734
+ // v3.13.0: 上下文感知扫描分支
735
+ if (args.context) {
736
+ const { scan, fixResult, diffs } = await handleContextScan(args, options);
737
+ if (args.fix || args.dryRun) {
738
+ const payload = { scan, fix: fixResult ?? { fixedCount: 0, filesModified: [], errors: [] }, diffs };
739
+ if (args.json) {
740
+ return textResult(JSON.stringify(payload, null, 2));
741
+ }
742
+ return textResult(formatFixMarkdown(payload.fix, scan, diffs));
743
+ }
744
+ if (args.json) {
745
+ return textResult(JSON.stringify(scan, null, 2));
746
+ }
747
+ return textResult(formatScanMarkdown(scan));
748
+ }
564
749
  const moduleName = args.module || "all";
565
750
  const engine = createMcpEngine(options, {
566
751
  minSeverity: parseSeverity(args.severity),
@@ -606,7 +791,7 @@ async function handleFix(args, options) {
606
791
  module: args.module || "all",
607
792
  }, options);
608
793
  }
609
- function formatFixMarkdown(fixResult, scanResult) {
794
+ function formatFixMarkdown(fixResult, scanResult, diffs) {
610
795
  const lines = [
611
796
  `# 自动修复报告`,
612
797
  ``,
@@ -625,6 +810,16 @@ function formatFixMarkdown(fixResult, scanResult) {
625
810
  lines.push("");
626
811
  }
627
812
  }
813
+ if (diffs && Object.keys(diffs).length > 0) {
814
+ lines.push(`## Unified Diff`);
815
+ for (const [file, diff] of Object.entries(diffs)) {
816
+ lines.push(`### ${file}`);
817
+ lines.push("```diff");
818
+ lines.push(diff);
819
+ lines.push("```");
820
+ lines.push("");
821
+ }
822
+ }
628
823
  if (fixResult.filesModified.length > 0) {
629
824
  lines.push(`## 已修改文件`);
630
825
  for (const f of fixResult.filesModified) {
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,20 @@
4
4
  import type { MCPServerOptions } from "./mcp-server.js";
5
5
  /** 当前暴露的 MCP 工具名称 */
6
6
  export type MCPToolName = "scan" | "fix" | "e2e-run" | "e2e-detect-gaps" | "list-rules" | "scan-file" | "page-health" | "mini-program" | "ai-fix" | "get-project-meta" | "index-project" | "recommend-tests";
7
+ /** v3.13.0: 编辑器上下文范围(1-based,含端点) */
8
+ export interface ScanContextRange {
9
+ startLine: number;
10
+ startColumn?: number;
11
+ endLine?: number;
12
+ endColumn?: number;
13
+ }
14
+ /** v3.13.0: 编辑器上下文 */
15
+ export interface ScanContext {
16
+ file: string;
17
+ range?: ScanContextRange;
18
+ content?: string;
19
+ expand?: boolean;
20
+ }
7
21
  /** scan 工具参数 */
8
22
  export interface ScanToolArgs {
9
23
  module?: string;
@@ -16,6 +30,7 @@ export interface ScanToolArgs {
16
30
  fix?: boolean;
17
31
  dryRun?: boolean;
18
32
  json?: boolean;
33
+ context?: ScanContext;
19
34
  }
20
35
  /** fix 工具参数 */
21
36
  export interface FixToolArgs {
@@ -26,6 +41,7 @@ export interface FixToolArgs {
26
41
  diff?: string;
27
42
  dryRun?: boolean;
28
43
  json?: boolean;
44
+ context?: ScanContext;
29
45
  }
30
46
  /** e2e-run 工具参数 */
31
47
  export interface E2ERunToolArgs {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mcp/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,qBAAqB;AACrB,MAAM,MAAM,WAAW,GACjB,MAAM,GACN,KAAK,GACL,SAAS,GACT,iBAAiB,GACjB,YAAY,GACZ,WAAW,GACX,aAAa,GACb,cAAc,GACd,QAAQ,GACR,kBAAkB,GAClB,eAAe,GACf,iBAAiB,CAAC;AAExB,gBAAgB;AAChB,MAAM,WAAW,YAAY;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;IACjD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,eAAe;AACf,MAAM,WAAW,WAAW;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;IACjD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,mBAAmB;AACnB,MAAM,WAAW,cAAc;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,2BAA2B;AAC3B,MAAM,WAAW,qBAAqB;IAClC,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,sBAAsB;AACtB,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAqB;AACrB,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,uBAAuB;AACvB,MAAM,WAAW,kBAAkB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE;QACZ,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,CAAC;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAwB;AACxB,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;IAC3D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qBAAqB,CAAC,EAAE;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IAEF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC;IACpC,qBAAqB,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACvD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,kBAAkB;AAClB,MAAM,WAAW,aAAa;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,yBAAyB;AACzB,MAAM,WAAW,oBAAoB;IACjC,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,2BAA2B;AAC3B,MAAM,WAAW,sBAAsB;IACnC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,eAAe,CAAC,EAAE;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACL;AAED,iBAAiB;AACjB,MAAM,MAAM,WAAW,GACjB,YAAY,GACZ,WAAW,GACX,cAAc,GACd,qBAAqB,GACrB,iBAAiB,GACjB,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,aAAa,GACb,oBAAoB,GACpB,sBAAsB,GACtB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE5B,eAAe;AACf,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,cAAc;AACd,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,gBAAgB,CAAC;CAC7B;AAED,YAAY,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mcp/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,qBAAqB;AACrB,MAAM,MAAM,WAAW,GACjB,MAAM,GACN,KAAK,GACL,SAAS,GACT,iBAAiB,GACjB,YAAY,GACZ,WAAW,GACX,aAAa,GACb,cAAc,GACd,QAAQ,GACR,kBAAkB,GAClB,eAAe,GACf,iBAAiB,CAAC;AAExB,qCAAqC;AACrC,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,sBAAsB;AACtB,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,gBAAgB;AAChB,MAAM,WAAW,YAAY;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;IACjD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,OAAO,CAAC,EAAE,WAAW,CAAC;CACzB;AAED,eAAe;AACf,MAAM,WAAW,WAAW;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;IACjD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,OAAO,CAAC,EAAE,WAAW,CAAC;CACzB;AAED,mBAAmB;AACnB,MAAM,WAAW,cAAc;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,2BAA2B;AAC3B,MAAM,WAAW,qBAAqB;IAClC,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,sBAAsB;AACtB,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAqB;AACrB,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,uBAAuB;AACvB,MAAM,WAAW,kBAAkB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE;QACZ,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,CAAC;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAwB;AACxB,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;IAC3D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qBAAqB,CAAC,EAAE;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IAEF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC;IACpC,qBAAqB,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACvD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,kBAAkB;AAClB,MAAM,WAAW,aAAa;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,CAAC;IACjD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,yBAAyB;AACzB,MAAM,WAAW,oBAAoB;IACjC,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,2BAA2B;AAC3B,MAAM,WAAW,sBAAsB;IACnC,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,eAAe,CAAC,EAAE;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACL;AAED,iBAAiB;AACjB,MAAM,MAAM,WAAW,GACjB,YAAY,GACZ,WAAW,GACX,cAAc,GACd,qBAAqB,GACrB,iBAAiB,GACjB,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,aAAa,GACb,oBAAoB,GACpB,sBAAsB,GACtB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE5B,eAAe;AACf,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,cAAc;AACd,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,gBAAgB,CAAC;CAC7B;AAED,YAAY,EAAE,gBAAgB,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "frontend-guardian-core",
3
- "version": "3.12.1",
3
+ "version": "3.13.0",
4
4
  "description": "Core analysis engine for frontend-guardian — AST-based scanning and auto-fixing",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",