codeguardian-mcp 1.3.7 → 1.3.9

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.
@@ -11,7 +11,16 @@ import type { RouteDefinition, ModelDefinition, BackendFramework } from "../type
11
11
  */
12
12
  export declare function extractRoutes(projectPath: string, framework: BackendFramework): Promise<RouteDefinition[]>;
13
13
  /**
14
- * Extract routes from a Python file
14
+ * Extract routes from a Python file.
15
+ *
16
+ * Strategy:
17
+ * 1. For AST-supported frameworks (fastapi / flask), run tree-sitter extraction.
18
+ * If it succeeds (no exception), return its result unconditionally — even an
19
+ * empty array. This is the critical guard: an empty AST result means the file
20
+ * genuinely has no route decorators, so we must NOT fall through to regex
21
+ * (which would pick up route-like patterns inside docstrings).
22
+ * 2. For unsupported frameworks, or when AST throws, fall back to regex scanning
23
+ * after first stripping triple-quoted docstrings from the content.
15
24
  */
16
25
  export declare function extractRoutesFromFile(content: string, filePath: string, framework: BackendFramework): RouteDefinition[];
17
26
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../../src/api-contract/extractors/python.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EAEf,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAUrB;;GAEG;AACH,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,gBAAgB,GAC1B,OAAO,CAAC,eAAe,EAAE,CAAC,CAmC5B;AAyCD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,gBAAgB,GAC1B,eAAe,EAAE,CA8FnB;AAsKD;;GAEG;AACH,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,EAAE,CAAC,CAyC5B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,eAAe,EAAE,CAwHnB;AA2CD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC,CA6CD"}
1
+ {"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../../src/api-contract/extractors/python.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EAEf,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAUrB;;GAEG;AACH,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,gBAAgB,GAC1B,OAAO,CAAC,eAAe,EAAE,CAAC,CAmC5B;AAuDD;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,gBAAgB,GAC1B,eAAe,EAAE,CA6GnB;AAuKD;;GAEG;AACH,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,EAAE,CAAC,CAyC5B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,eAAe,EAAE,CA4HnB;AA2CD;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC,CA6CD"}
@@ -88,13 +88,33 @@ function getRoutePatterns(projectPath, framework) {
88
88
  }
89
89
  }
90
90
  /**
91
- * Extract routes from a Python file
91
+ * Strip Python triple-quoted docstrings from source content so that code
92
+ * examples embedded inside them are not matched by the regex route scanner.
93
+ * Newlines are preserved so that line numbers remain accurate.
94
+ */
95
+ function stripPythonDocstrings(content) {
96
+ return content.replace(/"""[\s\S]*?"""|'''[\s\S]*?'''/g, (match) => match.replace(/[^\n]/g, " "));
97
+ }
98
+ /**
99
+ * Extract routes from a Python file.
100
+ *
101
+ * Strategy:
102
+ * 1. For AST-supported frameworks (fastapi / flask), run tree-sitter extraction.
103
+ * If it succeeds (no exception), return its result unconditionally — even an
104
+ * empty array. This is the critical guard: an empty AST result means the file
105
+ * genuinely has no route decorators, so we must NOT fall through to regex
106
+ * (which would pick up route-like patterns inside docstrings).
107
+ * 2. For unsupported frameworks, or when AST throws, fall back to regex scanning
108
+ * after first stripping triple-quoted docstrings from the content.
92
109
  */
93
110
  export function extractRoutesFromFile(content, filePath, framework) {
94
- // Prefer AST-based extraction for supported frameworks
95
- try {
96
- const astRoutes = extractRoutesFromPythonAST(content, filePath, framework);
97
- if (astRoutes.length > 0) {
111
+ // AST extraction is only supported for FastAPI and Flask.
112
+ const astSupportedFramework = framework === "fastapi" || framework === "flask";
113
+ if (astSupportedFramework) {
114
+ try {
115
+ const astRoutes = extractRoutesFromPythonAST(content, filePath, framework);
116
+ // Trust the AST result unconditionally — including an empty array.
117
+ // An empty result means there are truly no route decorators in this file.
98
118
  return astRoutes.map((r) => ({
99
119
  method: r.method,
100
120
  path: r.path,
@@ -105,12 +125,18 @@ export function extractRoutesFromFile(content, filePath, framework) {
105
125
  line: r.line,
106
126
  }));
107
127
  }
128
+ catch {
129
+ // AST parsing threw an error — fall through to regex as a last resort.
130
+ }
108
131
  }
109
- catch {
110
- // Fall through to regex
111
- }
132
+ // Regex fallback: used for unsupported frameworks (e.g. Django) or when the
133
+ // AST parser threw an unrecoverable exception. Strip docstrings first so that
134
+ // code examples inside documentation strings are not mistaken for route defs.
135
+ const strippedContent = stripPythonDocstrings(content);
112
136
  const routes = [];
113
- const lines = content.split("\n");
137
+ // Keep the original lines for handler extraction (parameter hints, etc.)
138
+ const originalLines = content.split("\n");
139
+ const lines = strippedContent.split("\n");
114
140
  for (let i = 0; i < lines.length; i++) {
115
141
  const line = lines[i];
116
142
  const lineNum = i + 1;
@@ -119,7 +145,7 @@ export function extractRoutesFromFile(content, filePath, framework) {
119
145
  // FastAPI: @router.post("/api/clients")
120
146
  const fastapiMatch = line.match(/@(?:app|router)\.(get|post|put|patch|delete)\s*\(\s*["']([^"']+)["']/i);
121
147
  if (fastapiMatch) {
122
- const route = extractFastAPIRoute(content, lines, i, fastapiMatch[1].toUpperCase(), fastapiMatch[2], filePath, lineNum);
148
+ const route = extractFastAPIRoute(content, originalLines, i, fastapiMatch[1].toUpperCase(), fastapiMatch[2], filePath, lineNum);
123
149
  if (route) {
124
150
  routes.push(route);
125
151
  }
@@ -130,7 +156,7 @@ export function extractRoutesFromFile(content, filePath, framework) {
130
156
  // Flask: @app.route("/api/clients", methods=["POST"])
131
157
  const flaskMatch = line.match(/@app\.route\s*\(\s*["']([^"']+)["']/i);
132
158
  if (flaskMatch) {
133
- const route = extractFlaskRoute(content, lines, i, flaskMatch[1], filePath, lineNum);
159
+ const route = extractFlaskRoute(content, originalLines, i, flaskMatch[1], filePath, lineNum);
134
160
  if (route) {
135
161
  routes.push(route);
136
162
  }
@@ -144,7 +170,7 @@ export function extractRoutesFromFile(content, filePath, framework) {
144
170
  .split(",")
145
171
  .map((m) => m.trim().replace(/["']/g, ""));
146
172
  for (const method of methods) {
147
- const route = extractGenericRoute(content, lines, i, method.toUpperCase(), genericMatch[1], filePath, lineNum);
173
+ const route = extractGenericRoute(content, originalLines, i, method.toUpperCase(), genericMatch[1], filePath, lineNum);
148
174
  if (route) {
149
175
  routes.push(route);
150
176
  }
@@ -404,7 +430,9 @@ export function extractModelsFromFile(content, filePath) {
404
430
  required = false;
405
431
  }
406
432
  else if (fieldDefault) {
407
- if (fieldDefault === "None" || fieldDefault.startsWith('"') || fieldDefault.startsWith("'")) {
433
+ if (fieldDefault === "None" ||
434
+ fieldDefault.startsWith('"') ||
435
+ fieldDefault.startsWith("'")) {
408
436
  required = false;
409
437
  }
410
438
  else if (!fieldDefault.includes("...")) {
@@ -1 +1 @@
1
- {"version":3,"file":"python.js","sourceRoot":"","sources":["../../../src/api-contract/extractors/python.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAO/C,OAAO,EACL,kCAAkC,EAClC,0BAA0B,GAC3B,MAAM,qBAAqB,CAAC;AAE7B,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,WAAmB,EACnB,SAA2B;IAE3B,MAAM,MAAM,GAAsB,EAAE,CAAC;IAErC,sCAAsC;IACtC,MAAM,aAAa,GAAG,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC/D,MAAM,eAAe,GAAG;QACtB,YAAY;QACZ,aAAa;QACb,WAAW;QACX,mBAAmB;QACnB,aAAa;QACb,cAAc;QACd,cAAc;KACf,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE;YAChC,MAAM,EAAE,eAAe;YACvB,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;QAEH,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACjD,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;gBACnE,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;YAC7B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,iCAAiC,IAAI,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,MAAM,oBAAoB,WAAW,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,WAAmB,EAAE,SAA2B;IACxE,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,SAAS;YACZ,OAAO;gBACL,GAAG,WAAW,oBAAoB;gBAClC,GAAG,WAAW,qBAAqB;gBACnC,GAAG,WAAW,iBAAiB;gBAC/B,GAAG,WAAW,cAAc;gBAC5B,GAAG,WAAW,UAAU;aACzB,CAAC;QACJ,KAAK,OAAO;YACV,OAAO;gBACL,GAAG,WAAW,oBAAoB;gBAClC,GAAG,WAAW,mBAAmB;gBACjC,GAAG,WAAW,SAAS;gBACvB,GAAG,WAAW,UAAU;aACzB,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO;gBACL,GAAG,WAAW,cAAc;gBAC5B,GAAG,WAAW,mBAAmB;gBACjC,GAAG,WAAW,iBAAiB;aAChC,CAAC;QACJ,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ;YACX,mDAAmD;YACnD,OAAO,EAAE,CAAC;QACZ;YACE,OAAO;gBACL,GAAG,WAAW,oBAAoB;gBAClC,GAAG,WAAW,iBAAiB;gBAC/B,GAAG,WAAW,gBAAgB;aAC/B,CAAC;IACN,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,QAAgB,EAChB,SAA2B;IAE3B,uDAAuD;IACvD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,0BAA0B,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC3E,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3B,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,CAAC,IAAI;aACb,CAAC,CAAC,CAAC;QACN,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;IAED,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;QAEtB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,qCAAqC;YACrC,wCAAwC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAC7B,uEAAuE,CACxE,CAAC;YACF,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,KAAK,GAAG,mBAAmB,CAC/B,OAAO,EACP,KAAK,EACL,CAAC,EACD,YAAY,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAC7B,YAAY,CAAC,CAAC,CAAC,EACf,QAAQ,EACR,OAAO,CACR,CAAC;gBACF,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC;gBACD,SAAS;YACX,CAAC;QACH,CAAC;QAED,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YAC1B,sDAAsD;YACtD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACtE,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,KAAK,GAAG,iBAAiB,CAC7B,OAAO,EACP,KAAK,EACL,CAAC,EACD,UAAU,CAAC,CAAC,CAAC,EACb,QAAQ,EACR,OAAO,CACR,CAAC;gBACF,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC;gBACD,SAAS;YACX,CAAC;QACH,CAAC;QAED,oDAAoD;QACpD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAC7B,+DAA+D,CAChE,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC;iBAC5B,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAC7C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,mBAAmB,CAC/B,OAAO,EACP,KAAK,EACL,CAAC,EACD,MAAM,CAAC,WAAW,EAAE,EACpB,YAAY,CAAC,CAAC,CAAC,EACf,QAAQ,EACR,OAAO,CACR,CAAC;gBACF,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAC1B,OAAe,EACf,KAAe,EACf,aAAqB,EACrB,MAAc,EACd,IAAY,EACZ,QAAgB,EAChB,OAAe;IAEf,iDAAiD;IACjD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9D,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,YAAgC,CAAC;IACrC,IAAI,aAAiC,CAAC;IAEtC,KAAK,IAAI,CAAC,GAAG,aAAa,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACrD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEtB,qBAAqB;QACrB,yDAAyD;QACzD,mDAAmD;QACnD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC9D,IAAI,SAAS,EAAE,CAAC;YACd,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAExB,iDAAiD;YACjD,qBAAqB;YACrB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC;gBAC1C,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;YAClE,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC/B,6BAA6B;gBAC7B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/B,YAAY,GAAG,QAAQ,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,0CAA0C;YAC1C,YAAY;YACZ,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACrD,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC;oBACjC,aAAa,GAAG,UAAU,CAAC;gBAC7B,CAAC;YACH,CAAC;YAED,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM,EAAE,MAAmC;QAC3C,IAAI;QACJ,OAAO,EAAE,QAAQ;QACjB,YAAY;QACZ,aAAa;QACb,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,OAAe,EACf,KAAe,EACf,aAAqB,EACrB,IAAY,EACZ,QAAgB,EAChB,OAAe;IAEf,2CAA2C;IAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9D,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,MAAM,GAAG,KAAK,CAAC,CAAC,oBAAoB;IAExC,6CAA6C;IAC7C,MAAM,oBAAoB,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC3E,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC;aAC5B,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC;IACH,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,aAAa,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACrD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEtB,qBAAqB;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACjD,IAAI,SAAS,EAAE,CAAC;YACd,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM,EAAE,MAAmC;QAC3C,IAAI;QACJ,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAC1B,OAAe,EACf,KAAe,EACf,aAAqB,EACrB,MAAc,EACd,IAAY,EACZ,QAAgB,EAChB,OAAe;IAEf,+BAA+B;IAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9D,IAAI,QAAQ,GAAG,EAAE,CAAC;IAElB,KAAK,IAAI,CAAC,GAAG,aAAa,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACrD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEtB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC9D,IAAI,SAAS,EAAE,CAAC;YACd,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM,EAAE,MAAmC;QAC3C,IAAI;QACJ,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,OAAO;KACd,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,WAAmB;IAEnB,MAAM,MAAM,GAAsB,EAAE,CAAC;IAErC,mBAAmB;IACnB,MAAM,aAAa,GAAG;QACpB,GAAG,WAAW,oBAAoB;QAClC,GAAG,WAAW,qBAAqB;QACnC,GAAG,WAAW,sBAAsB;QACpC,GAAG,WAAW,eAAe;QAC7B,GAAG,WAAW,gBAAgB;KAC/B,CAAC;IAEF,MAAM,eAAe,GAAG;QACtB,YAAY;QACZ,aAAa;QACb,WAAW;QACX,mBAAmB;QACnB,aAAa;QACb,cAAc;KACf,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE;YAChC,MAAM,EAAE,eAAe;YACvB,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;QAEH,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACjD,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBACxD,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;YAC7B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,iCAAiC,IAAI,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,MAAM,gBAAgB,WAAW,EAAE,CAAC,CAAC;IACrE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,QAAgB;IAEhB,8BAA8B;IAC9B,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,kCAAkC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACxE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3B,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC3B,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,OAAO,EAAE,CAAC,CAAC,OAAO;iBACnB,CAAC,CAAC;gBACH,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC,CAAC;QACN,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;IAED,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAElC,IAAI,YAAY,GAAoC,IAAI,CAAC;IACzD,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEtB,mBAAmB;QACnB,iCAAiC;QACjC,iDAAiD;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACjE,IAAI,UAAU,EAAE,CAAC;YACf,gCAAgC;YAChC,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,CAAC,IAAI,CAAC,YAA+B,CAAC,CAAC;gBAC7C,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YAED,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAEhC,sDAAsD;YACtD,IAAI,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnC,YAAY,GAAG;oBACb,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,GAAG,CAAC;oBACX,WAAW,EAAE,CAAC,SAAS,CAAC;iBACzB,CAAC;gBACF,UAAU,GAAG,CAAC,CAAC;gBACf,SAAS,GAAG,CAAC,CAAC;YAChB,CAAC;YACD,SAAS;QACX,CAAC;QAED,uBAAuB;QACvB,IAAI,YAAY,EAAE,CAAC;YACjB,6DAA6D;YAC7D,8CAA8C;YAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;YACnC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAE9C,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC1C,eAAe;gBACf,MAAM,CAAC,IAAI,CAAC,YAA+B,CAAC,CAAC;gBAC7C,YAAY,GAAG,IAAI,CAAC;gBACpB,SAAS;YACX,CAAC;YAED,gBAAgB;YAChB,YAAY;YACZ,0BAA0B;YAC1B,oCAAoC;YACpC,8BAA8B;YAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAC3B,sDAAsD,CACvD,CAAC;YACF,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACvC,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBAE3C,6BAA6B;gBAC7B,8CAA8C;gBAC9C,yEAAyE;gBACzE,IAAI,QAAQ,GAAG,IAAI,CAAC;gBACpB,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBACnC,QAAQ,GAAG,KAAK,CAAC;gBACnB,CAAC;qBAAM,IAAI,YAAY,EAAE,CAAC;oBACxB,IAAI,YAAY,KAAK,MAAM,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC5F,QAAQ,GAAG,KAAK,CAAC;oBACnB,CAAC;yBAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;wBACzC,QAAQ,GAAG,KAAK,CAAC;oBACnB,CAAC;gBACH,CAAC;gBAED,MAAM,KAAK,GAAe;oBACxB,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,SAAS;oBACf,QAAQ;oBACR,OAAO,EAAE,YAAY;iBACtB,CAAC;gBACF,YAAY,CAAC,MAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,YAA+B,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,SAAiB;IAC5C,MAAM,aAAa,GAAG;QACpB,WAAW;QACX,YAAY;QACZ,WAAW;QACX,oBAAoB;KACrB,CAAC;IACF,OAAO,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,QAAgB;IACvC,MAAM,UAAU,GAAG;QACjB,KAAK;QACL,KAAK;QACL,OAAO;QACP,MAAM;QACN,MAAM;QACN,MAAM;QACN,OAAO;QACP,KAAK;QACL,MAAM;QACN,KAAK;QACL,UAAU;QACV,OAAO;QACP,MAAM;QACN,MAAM;QACN,OAAO;KACR,CAAC;IACF,OAAO,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AACzE,CAAC;AAED,+EAA+E;AAC/E,+BAA+B;AAC/B,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,WAAmB;IAKnB,IAAI,SAAS,GAAG,MAAM,CAAC;IACvB,IAAI,SAAS,GAAG,SAAS,CAAC;IAE1B,0BAA0B;IAC1B,MAAM,WAAW,GAAG;QAClB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC;KACpC,CAAC;IAEF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,MAAM,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAEvD,mBAAmB;gBACnB,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBAChC,SAAS,GAAG,SAAS,CAAC;gBACxB,CAAC;qBAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBACrC,SAAS,GAAG,OAAO,CAAC;gBACtB,CAAC;qBAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACtC,SAAS,GAAG,QAAQ,CAAC;gBACvB,CAAC;gBAED,qBAAqB;gBACrB,kCAAkC;gBAClC,0CAA0C;gBAC1C,MAAM,WAAW,GACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC;oBACjD,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBAEjD,IAAI,WAAW,EAAE,CAAC;oBAChB,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC7B,CAAC;gBAED,MAAM;YACR,CAAC;YAAC,MAAM,CAAC;gBACP,wBAAwB;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAClC,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,QAAgB;IACxC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtC,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"python.js","sourceRoot":"","sources":["../../../src/api-contract/extractors/python.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,21 @@ import type { ServiceDefinition, TypeDefinition, HttpClient, RouteDefinition, Ba
10
10
  * Extract routes from TypeScript backend (Express/NestJS)
11
11
  */
12
12
  export declare function extractRoutesFromTypeScript(projectPath: string, framework: BackendFramework): Promise<RouteDefinition[]>;
13
+ /**
14
+ * Extract Express/NestJS routes from a single file using the tree-sitter AST.
15
+ *
16
+ * Handles:
17
+ * router.get('/path', handler)
18
+ * app.post('/path', async (req, res) => { ... })
19
+ * Router().put('/path', handler)
20
+ *
21
+ * Returns an empty array when the file has no matching route definitions —
22
+ * this is intentional and must NOT be treated as a parse failure by the caller.
23
+ *
24
+ * Throws only when tree-sitter itself cannot parse the file, allowing the
25
+ * caller to fall back to the regex path.
26
+ */
27
+ export declare function extractRoutesFromFileAST(content: string, filePath: string): RouteDefinition[];
13
28
  /**
14
29
  * Extract all API service functions from a project
15
30
  */
@@ -1 +1 @@
1
- {"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../../src/api-contract/extractors/typescript.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EAEd,UAAU,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAQrB;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,gBAAgB,GAC1B,OAAO,CAAC,eAAe,EAAE,CAAC,CAwC5B;AA6BD;;GAEG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAwC9B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,iBAAiB,EAAE,CAerB;AAgZD;;GAEG;AACH,wBAAsB,YAAY,CAChC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,cAAc,EAAE,CAAC,CAyC3B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,EAAE,CAcxF;AA2MD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IACT,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC,CAgDD"}
1
+ {"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../../src/api-contract/extractors/typescript.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EAEd,UAAU,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAerB;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,gBAAgB,GAC1B,OAAO,CAAC,eAAe,EAAE,CAAC,CAkD5B;AAqBD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,eAAe,EAAE,CAwEnB;AA8CD;;GAEG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAwC9B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,iBAAiB,EAAE,CAerB;AAoaD;;GAEG;AACH,wBAAsB,YAAY,CAChC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,cAAc,EAAE,CAAC,CAyC3B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,cAAc,EAAE,CAclB;AAiND;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC,CAmDD"}
@@ -43,7 +43,16 @@ export async function extractRoutesFromTypeScript(projectPath, framework) {
43
43
  for (const file of files) {
44
44
  try {
45
45
  const content = await fs.readFile(file, "utf-8");
46
- const fileRoutes = extractRoutesFromFileRegex(content, file);
46
+ let fileRoutes;
47
+ try {
48
+ fileRoutes = extractRoutesFromFileAST(content, file);
49
+ // Trust AST result unconditionally — even an empty array means no routes.
50
+ }
51
+ catch {
52
+ // AST parser threw (e.g. severely malformed file) — fall back to regex.
53
+ logger.debug(`AST route extraction failed for ${file}, falling back to regex`);
54
+ fileRoutes = extractRoutesFromFileRegex(content, file);
55
+ }
47
56
  routes.push(...fileRoutes);
48
57
  }
49
58
  catch (err) {
@@ -55,17 +64,114 @@ export async function extractRoutesFromTypeScript(projectPath, framework) {
55
64
  return routes;
56
65
  }
57
66
  /**
58
- * Extract Express/NestJS routes using regex
67
+ * Strip single-line and block comments from TypeScript/JavaScript source
68
+ * content, preserving newlines so that line numbers remain accurate.
69
+ *
70
+ * This prevents route-like patterns inside comments from being picked up by
71
+ * the regex scanner — the same guard applied to Python docstrings.
72
+ */
73
+ function stripTSComments(content) {
74
+ return (content
75
+ // Single-line comments: replace everything after // up to (but not including)
76
+ // the newline with spaces so column positions are preserved.
77
+ .replace(/\/\/[^\n]*/g, (m) => " ".repeat(m.length))
78
+ // Block comments: replace every non-newline character with a space so that
79
+ // multi-line blocks don't collapse line numbers.
80
+ .replace(/\/\*[\s\S]*?\*\//g, (m) => m.replace(/[^\n]/g, " ")));
81
+ }
82
+ /**
83
+ * Extract Express/NestJS routes from a single file using the tree-sitter AST.
84
+ *
85
+ * Handles:
86
+ * router.get('/path', handler)
87
+ * app.post('/path', async (req, res) => { ... })
88
+ * Router().put('/path', handler)
89
+ *
90
+ * Returns an empty array when the file has no matching route definitions —
91
+ * this is intentional and must NOT be treated as a parse failure by the caller.
92
+ *
93
+ * Throws only when tree-sitter itself cannot parse the file, allowing the
94
+ * caller to fall back to the regex path.
95
+ */
96
+ export function extractRoutesFromFileAST(content, filePath) {
97
+ const parser = getParser("typescript");
98
+ const tree = parser.parse(content);
99
+ if (!tree)
100
+ throw new Error("tree-sitter returned null tree");
101
+ const routes = [];
102
+ const HTTP_METHODS = new Set(["get", "post", "put", "patch", "delete"]);
103
+ function visit(node) {
104
+ if (node.type === "call_expression") {
105
+ const fnNode = node.childForFieldName("function");
106
+ const argsNode = node.childForFieldName("arguments");
107
+ if (fnNode?.type === "member_expression" && argsNode) {
108
+ const objectNode = fnNode.childForFieldName("object");
109
+ const propertyNode = fnNode.childForFieldName("property");
110
+ if (objectNode && propertyNode) {
111
+ const objectName = getNodeText(objectNode, content);
112
+ const methodName = getNodeText(propertyNode, content).toLowerCase();
113
+ // Only handle router.* / app.* calls with a known HTTP verb
114
+ const isRouterLike = objectName === "router" ||
115
+ objectName === "app" ||
116
+ objectName.toLowerCase().endsWith("router");
117
+ if (isRouterLike && HTTP_METHODS.has(methodName)) {
118
+ const httpMethod = mapToHttpMethod(methodName);
119
+ if (!httpMethod)
120
+ return;
121
+ const extracted = extractEndpointFromArgumentsTS(argsNode, content);
122
+ if (!extracted)
123
+ return;
124
+ // Try to get the handler name from the second/last argument
125
+ const argChildren = argsNode.children.filter((c) => c.type !== "," && c.type !== "(" && c.type !== ")");
126
+ // argChildren[0] is the path string; argChildren[1..] are middleware/handler
127
+ const lastArg = argChildren[argChildren.length - 1];
128
+ let handler = "";
129
+ if (lastArg?.type === "identifier") {
130
+ handler = getNodeText(lastArg, content);
131
+ }
132
+ else if (lastArg?.type === "arrow_function" ||
133
+ lastArg?.type === "function" ||
134
+ lastArg?.type === "function_expression") {
135
+ // Inline handler — use the enclosing named function if available
136
+ handler = findEnclosingFunctionName(node, content) ?? "(inline)";
137
+ }
138
+ routes.push({
139
+ method: httpMethod,
140
+ path: extracted.endpoint,
141
+ handler,
142
+ file: filePath,
143
+ line: node.startPosition.row + 1,
144
+ });
145
+ }
146
+ }
147
+ }
148
+ }
149
+ for (const child of node.children ?? []) {
150
+ visit(child);
151
+ }
152
+ }
153
+ visit(tree.rootNode);
154
+ return routes;
155
+ }
156
+ /**
157
+ * Extract Express/NestJS routes using regex.
158
+ *
159
+ * Strips comments from the content first so that lines like:
160
+ * // router.get('/old-route', handler)
161
+ * are not mistaken for live route definitions.
59
162
  */
60
163
  function extractRoutesFromFileRegex(content, filePath) {
61
164
  const routes = [];
165
+ // Strip comments before scanning so commented-out routes are ignored.
166
+ const strippedContent = stripTSComments(content);
62
167
  // Match: router.get('/path', ...) or app.get('/path', ...)
63
168
  const routeRegex = /(?:router|app)\.(get|post|put|patch|delete)\s*\(\s*['"`]([^'"`]+)['"`]/g;
64
169
  let match;
65
- while ((match = routeRegex.exec(content)) !== null) {
170
+ while ((match = routeRegex.exec(strippedContent)) !== null) {
66
171
  const method = match[1].toUpperCase();
67
172
  const path = match[2];
68
- const line = content.substring(0, match.index).split('\n').length;
173
+ // Derive line number from the original content so the reported line is correct.
174
+ const line = content.substring(0, match.index).split("\n").length;
69
175
  routes.push({
70
176
  method,
71
177
  path,
@@ -203,7 +309,8 @@ function extractServiceFromCall(node, content, filePath) {
203
309
  // Extract request/response types from the enclosing function/method
204
310
  const { requestType, responseType } = extractTypesFromEnclosingFunction(node, content, httpMethod);
205
311
  return {
206
- name: enclosingFunction || `${methodName}_${endpoint.replace(/[^a-zA-Z0-9]/g, "_")}`,
312
+ name: enclosingFunction ||
313
+ `${methodName}_${endpoint.replace(/[^a-zA-Z0-9]/g, "_")}`,
207
314
  method: httpMethod,
208
315
  endpoint,
209
316
  requestType,
@@ -218,7 +325,7 @@ function extractServiceFromCall(node, content, filePath) {
218
325
  if (functionNode.type === "identifier") {
219
326
  const funcName = getNodeText(functionNode, content);
220
327
  // Check if the function name matches common API helper patterns
221
- const isApiHelper = API_HELPER_PATTERNS.some(p => p.test(funcName));
328
+ const isApiHelper = API_HELPER_PATTERNS.some((p) => p.test(funcName));
222
329
  if (!isApiHelper)
223
330
  return null;
224
331
  // Extract arguments
@@ -235,7 +342,8 @@ function extractServiceFromCall(node, content, filePath) {
235
342
  const enclosingFunction = findEnclosingFunctionName(node, content);
236
343
  const { requestType, responseType } = extractTypesFromEnclosingFunction(node, content, httpMethod);
237
344
  return {
238
- name: enclosingFunction || `${funcName}_${endpoint.replace(/[^a-zA-Z0-9]/g, "_")}`,
345
+ name: enclosingFunction ||
346
+ `${funcName}_${endpoint.replace(/[^a-zA-Z0-9]/g, "_")}`,
239
347
  method: httpMethod,
240
348
  endpoint,
241
349
  requestType,
@@ -387,7 +495,10 @@ function isPrimitiveType(typeName) {
387
495
  if (/^[0-9]+(?:\.[0-9]+)?$/.test(raw))
388
496
  return true;
389
497
  // Union: only primitive if all parts are primitive
390
- const unionParts = raw.split("|").map((p) => p.trim()).filter(Boolean);
498
+ const unionParts = raw
499
+ .split("|")
500
+ .map((p) => p.trim())
501
+ .filter(Boolean);
391
502
  if (unionParts.length > 1) {
392
503
  return unionParts.every((p) => isPrimitiveType(p));
393
504
  }
@@ -436,7 +547,10 @@ function extractServicesFromFileRegex(content, filePath) {
436
547
  const endpoint = apiCallMatch[2];
437
548
  // Try to find function name
438
549
  const funcMatch = line.match(/(?:export\s+)?(?:async\s+)?(?:function|const)\s+(\w+)/) ||
439
- lines.slice(Math.max(0, i - 5), i).join(" ").match(/(\w+)\s*[:=]\s*(?:async\s*)?\(/);
550
+ lines
551
+ .slice(Math.max(0, i - 5), i)
552
+ .join(" ")
553
+ .match(/(\w+)\s*[:=]\s*(?:async\s*)?\(/);
440
554
  const funcName = funcMatch ? funcMatch[1] : `api_${method.toLowerCase()}`;
441
555
  services.push({
442
556
  name: funcName,
@@ -580,7 +694,8 @@ function extractTypeAlias(node, content, filePath) {
580
694
  function extractFieldsFromBody(bodyNode, content) {
581
695
  const fields = [];
582
696
  for (const child of bodyNode.children || []) {
583
- if (child.type === "property_signature" || child.type === "field_definition") {
697
+ if (child.type === "property_signature" ||
698
+ child.type === "field_definition") {
584
699
  const nameNode = child.childForFieldName("name");
585
700
  const typeNode = child.childForFieldName("type");
586
701
  if (nameNode) {
@@ -691,7 +806,8 @@ export async function extractApiConfig(projectPath) {
691
806
  if (content.includes("axios")) {
692
807
  httpClient = "axios";
693
808
  }
694
- else if (content.includes("react-query") || content.includes("useQuery")) {
809
+ else if (content.includes("react-query") ||
810
+ content.includes("useQuery")) {
695
811
  httpClient = "react-query";
696
812
  }
697
813
  else if (content.includes("swr")) {
@@ -1 +1 @@
1
- {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/api-contract/extractors/typescript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typescript.js","sourceRoot":"","sources":["../../../src/api-contract/extractors/typescript.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api-contract/validators/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAA0C,MAAM,iCAAiC,CAAC;AAS9G,MAAM,MAAM,oBAAoB,GAC5B,qBAAqB,GACrB,qBAAqB,GACrB,mBAAmB,GACnB,iBAAiB,GACjB,yBAAyB,GACzB,6BAA6B,GAC7B,iBAAiB,GACjB,eAAe,CAAC;AAEpB,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,oBAAoB,CAAC;IAC3B,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA+CD,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAMD;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,cAAc,GACtB,2BAA2B,CAqD7B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api-contract/validators/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,iCAAiC,CAAC;AASzC,MAAM,MAAM,oBAAoB,GAC5B,qBAAqB,GACrB,qBAAqB,GACrB,mBAAmB,GACnB,iBAAiB,GACjB,yBAAyB,GACzB,6BAA6B,GAC7B,iBAAiB,GACjB,eAAe,CAAC;AAEpB,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,oBAAoB,CAAC;IAC3B,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAgDD,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAMD;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,cAAc,GACtB,2BAA2B,CAqD7B"}