semantic-complexity 0.0.13-2aaf183b → 0.0.15-54738920

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.
@@ -4,8 +4,8 @@
4
4
  import type { GateType, GateResult } from '../types/index.js';
5
5
  import type { CheeseResult } from '../analyzers/cheese.js';
6
6
  import type { HamResult } from '../analyzers/ham.js';
7
- export { checkWaiver, parseEssentialComplexity, detectComplexitySignals, detectComplexImports, buildComplexityContext, generateReviewQuestions, ESSENTIAL_COMPLEXITY_SIGNALS, COMPLEX_DOMAIN_LIBRARIES, } from './waiver.js';
8
- export type { EssentialComplexityConfig, ComplexitySignal, ComplexityContext, WaiverResult, } from './waiver.js';
7
+ export { checkWaiver, checkInlineWaiver, checkExternalWaiver, parseEssentialComplexity, parseWaiverFile, findWaiverFile, matchFilePattern, isWaiverExpired, detectComplexitySignals, detectComplexImports, buildComplexityContext, generateReviewQuestions, ESSENTIAL_COMPLEXITY_SIGNALS, COMPLEX_DOMAIN_LIBRARIES, } from './waiver.js';
8
+ export type { EssentialComplexityConfig, ComplexitySignal, ComplexityContext, WaiverResult, ExternalWaiverEntry, WaiverFile, } from './waiver.js';
9
9
  declare const BASE_THRESHOLDS: {
10
10
  nesting_max: number;
11
11
  concepts_per_function: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/gate/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,UAAU,EAEX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIrD,OAAO,EACL,WAAW,EACX,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,yBAAyB,EACzB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,GACb,MAAM,aAAa,CAAC;AAGrB,QAAA,MAAM,eAAe;;;;;CAKpB,CAAC;AAyBF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE;IAAE,cAAc,EAAE,OAAO,CAAA;CAAE,CAIxE,CAAC;AAEF;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,eAAe,CAWxE;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,SAAS,CACvB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,SAAS,EACd,OAAO,GAAE,gBAAqB,GAC7B,UAAU,CAkEZ"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/gate/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,UAAU,EAEX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIrD,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,yBAAyB,EACzB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,UAAU,GACX,MAAM,aAAa,CAAC;AAGrB,QAAA,MAAM,eAAe;;;;;CAKpB,CAAC;AAyBF,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,QAAQ,EAAE;IAAE,cAAc,EAAE,OAAO,CAAA;CAAE,CAIxE,CAAC;AAEF;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,eAAe,CAWxE;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,SAAS,CACvB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,SAAS,EACd,OAAO,GAAE,gBAAqB,GAC7B,UAAU,CAkEZ"}
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { checkWaiver } from './waiver.js';
5
5
  // Re-export waiver functions
6
- export { checkWaiver, parseEssentialComplexity, detectComplexitySignals, detectComplexImports, buildComplexityContext, generateReviewQuestions, ESSENTIAL_COMPLEXITY_SIGNALS, COMPLEX_DOMAIN_LIBRARIES, } from './waiver.js';
6
+ export { checkWaiver, checkInlineWaiver, checkExternalWaiver, parseEssentialComplexity, parseWaiverFile, findWaiverFile, matchFilePattern, isWaiverExpired, detectComplexitySignals, detectComplexImports, buildComplexityContext, generateReviewQuestions, ESSENTIAL_COMPLEXITY_SIGNALS, COMPLEX_DOMAIN_LIBRARIES, } from './waiver.js';
7
7
  // Base thresholds (MVP baseline)
8
8
  const BASE_THRESHOLDS = {
9
9
  nesting_max: 4,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gate/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/gate/index.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,25 @@
2
2
  * Essential Complexity Waiver System
3
3
  *
4
4
  * 본질적 복잡도 면제 시스템:
5
- * - __essential_complexity__ 파싱
5
+ * - __essential_complexity__ 파싱 (인라인)
6
+ * - .waiver.json 파일 지원 (외부)
6
7
  * - ADR 존재 여부 검증
7
8
  * - ComplexityContext (토대 정보) 생성
8
9
  *
9
10
  * 사용법:
10
- * // 모듈에서 선언
11
+ * // 방법 1: 모듈에서 인라인 선언
11
12
  * export const __essential_complexity__ = {
12
13
  * adr: "docs/adr/003-inference-complexity.md",
13
14
  * };
14
15
  *
16
+ * // 방법 2: 프로젝트 루트에 .waiver.json 파일 생성
17
+ * // {
18
+ * // "version": "1.0",
19
+ * // "waivers": [
20
+ * // { "pattern": "src/crypto/*.ts", "adr": "ADR-007" }
21
+ * // ]
22
+ * // }
23
+ *
15
24
  * // Gate에서 체크
16
25
  * const waiver = checkWaiver(source, filePath);
17
26
  * if (waiver.waived) {
@@ -40,6 +49,20 @@ export interface WaiverResult {
40
49
  reason?: string;
41
50
  adrPath?: string;
42
51
  config?: EssentialComplexityConfig;
52
+ externalWaiver?: ExternalWaiverEntry;
53
+ }
54
+ export interface ExternalWaiverEntry {
55
+ pattern: string;
56
+ adr: string;
57
+ justification?: string;
58
+ approvedAt?: string;
59
+ expiresAt?: string | null;
60
+ approver?: string;
61
+ }
62
+ export interface WaiverFile {
63
+ $schema?: string;
64
+ version: string;
65
+ waivers: ExternalWaiverEntry[];
43
66
  }
44
67
  type SignalCategory = 'math' | 'algorithm' | 'domain';
45
68
  export declare const ESSENTIAL_COMPLEXITY_SIGNALS: Record<SignalCategory, Array<[RegExp, string]>>;
@@ -49,6 +72,12 @@ export declare function detectComplexitySignals(source: string): ComplexitySigna
49
72
  export declare function detectComplexImports(source: string): string[];
50
73
  export declare function generateReviewQuestions(signals: ComplexitySignal[], imports: string[]): string[];
51
74
  export declare function buildComplexityContext(source: string, metrics?: Record<string, number>): ComplexityContext;
75
+ export declare function parseWaiverFile(waiverPath: string): WaiverFile | null;
76
+ export declare function findWaiverFile(filePath: string, projectRoot: string): string | null;
77
+ export declare function matchFilePattern(filePath: string, pattern: string): boolean;
78
+ export declare function isWaiverExpired(entry: ExternalWaiverEntry): boolean;
79
+ export declare function checkExternalWaiver(filePath: string, projectRoot: string): WaiverResult;
52
80
  export declare function checkWaiver(source: string, filePath?: string, projectRoot?: string): WaiverResult;
81
+ export declare function checkInlineWaiver(source: string, filePath?: string, projectRoot?: string): WaiverResult;
53
82
  export {};
54
83
  //# sourceMappingURL=waiver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"waiver.d.ts","sourceRoot":"","sources":["../../src/gate/waiver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAUH,MAAM,WAAW,yBAAyB;IACxC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,yBAAyB,CAAC;CACpC;AAMD,KAAK,cAAc,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEtD,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAsBxF,CAAC;AAGF,eAAO,MAAM,wBAAwB,aAYnC,CAAC;AAMH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,yBAAyB,GAAG,IAAI,CAiDzF;AAsCD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAuB1E;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CA8B7D;AAMD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,gBAAgB,EAAE,EAC3B,OAAO,EAAE,MAAM,EAAE,GAChB,MAAM,EAAE,CA0BV;AAMD,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GACnC,iBAAiB,CAWnB;AAMD,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,MAAM,GACnB,YAAY,CA8Dd"}
1
+ {"version":3,"file":"waiver.d.ts","sourceRoot":"","sources":["../../src/gate/waiver.ts"],"names":[],"mappings":"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"}
@@ -2,16 +2,25 @@
2
2
  * Essential Complexity Waiver System
3
3
  *
4
4
  * 본질적 복잡도 면제 시스템:
5
- * - __essential_complexity__ 파싱
5
+ * - __essential_complexity__ 파싱 (인라인)
6
+ * - .waiver.json 파일 지원 (외부)
6
7
  * - ADR 존재 여부 검증
7
8
  * - ComplexityContext (토대 정보) 생성
8
9
  *
9
10
  * 사용법:
10
- * // 모듈에서 선언
11
+ * // 방법 1: 모듈에서 인라인 선언
11
12
  * export const __essential_complexity__ = {
12
13
  * adr: "docs/adr/003-inference-complexity.md",
13
14
  * };
14
15
  *
16
+ * // 방법 2: 프로젝트 루트에 .waiver.json 파일 생성
17
+ * // {
18
+ * // "version": "1.0",
19
+ * // "waivers": [
20
+ * // { "pattern": "src/crypto/*.ts", "adr": "ADR-007" }
21
+ * // ]
22
+ * // }
23
+ *
15
24
  * // Gate에서 체크
16
25
  * const waiver = checkWaiver(source, filePath);
17
26
  * if (waiver.waived) {
@@ -20,7 +29,7 @@
20
29
  */
21
30
  import * as ts from 'typescript';
22
31
  import { existsSync, readFileSync } from 'fs';
23
- import { join, dirname } from 'path';
32
+ import { join, dirname, relative } from 'path';
24
33
  export const ESSENTIAL_COMPLEXITY_SIGNALS = {
25
34
  math: [
26
35
  [/np\.(linalg|fft|einsum)/, 'linear algebra / signal processing'],
@@ -216,9 +225,145 @@ export function buildComplexityContext(source, metrics = {}) {
216
225
  };
217
226
  }
218
227
  // ============================================================
219
- // Waiver 체크
228
+ // Layer 1: 외부 .waiver.json 파일 파싱
229
+ // ============================================================
230
+ export function parseWaiverFile(waiverPath) {
231
+ try {
232
+ if (!existsSync(waiverPath)) {
233
+ return null;
234
+ }
235
+ const content = readFileSync(waiverPath, 'utf-8');
236
+ const data = JSON.parse(content);
237
+ // 기본 스키마 검증
238
+ if (!data.version || !Array.isArray(data.waivers)) {
239
+ return null;
240
+ }
241
+ // waivers 배열 파싱
242
+ const waivers = data.waivers.map((w) => ({
243
+ pattern: String(w.pattern || ''),
244
+ adr: String(w.adr || ''),
245
+ justification: w.justification ? String(w.justification) : undefined,
246
+ approvedAt: w.approved_at ? String(w.approved_at) : undefined,
247
+ expiresAt: w.expires_at === null ? null : (w.expires_at ? String(w.expires_at) : undefined),
248
+ approver: w.approver ? String(w.approver) : undefined,
249
+ }));
250
+ return {
251
+ $schema: data.$schema,
252
+ version: data.version,
253
+ waivers,
254
+ };
255
+ }
256
+ catch {
257
+ return null;
258
+ }
259
+ }
260
+ // ============================================================
261
+ // Layer 2: .waiver.json 파일 탐색
262
+ // ============================================================
263
+ export function findWaiverFile(filePath, projectRoot) {
264
+ const normalizedPath = filePath.replace(/\\/g, '/');
265
+ const normalizedRoot = projectRoot.replace(/\\/g, '/');
266
+ let currentDir = dirname(normalizedPath);
267
+ while (currentDir.startsWith(normalizedRoot) || currentDir === normalizedRoot) {
268
+ const waiverPath = join(currentDir, '.waiver.json');
269
+ if (existsSync(waiverPath)) {
270
+ return waiverPath;
271
+ }
272
+ const parentDir = dirname(currentDir);
273
+ if (parentDir === currentDir) {
274
+ break; // 루트 도달
275
+ }
276
+ currentDir = parentDir;
277
+ }
278
+ return null;
279
+ }
280
+ // ============================================================
281
+ // Layer 3: 파일 패턴 매칭
282
+ // ============================================================
283
+ export function matchFilePattern(filePath, pattern) {
284
+ // 경로 정규화 (Windows 백슬래시 -> 슬래시)
285
+ const normalizedPath = filePath.replace(/\\/g, '/');
286
+ const normalizedPattern = pattern.replace(/\\/g, '/');
287
+ // 글롭 패턴을 정규식으로 변환
288
+ const regexPattern = normalizedPattern
289
+ .replace(/\./g, '\\.')
290
+ .replace(/\*\*/g, '<<<DOUBLE_STAR>>>')
291
+ .replace(/\*/g, '[^/]*')
292
+ .replace(/<<<DOUBLE_STAR>>>/g, '.*')
293
+ .replace(/\?/g, '.');
294
+ const regex = new RegExp(`^${regexPattern}$`);
295
+ return regex.test(normalizedPath);
296
+ }
297
+ // ============================================================
298
+ // Layer 4: 외부 waiver 만료 체크
299
+ // ============================================================
300
+ export function isWaiverExpired(entry) {
301
+ if (!entry.expiresAt) {
302
+ return false; // null 또는 undefined = 영구
303
+ }
304
+ try {
305
+ const expiryDate = new Date(entry.expiresAt);
306
+ const today = new Date();
307
+ today.setHours(0, 0, 0, 0);
308
+ return today > expiryDate;
309
+ }
310
+ catch {
311
+ return false; // 파싱 실패 시 만료되지 않은 것으로 처리
312
+ }
313
+ }
314
+ // ============================================================
315
+ // Layer 5: 외부 waiver 체크
316
+ // ============================================================
317
+ export function checkExternalWaiver(filePath, projectRoot) {
318
+ const waiverFilePath = findWaiverFile(filePath, projectRoot);
319
+ if (!waiverFilePath) {
320
+ return { waived: false, reason: '.waiver.json 파일 없음' };
321
+ }
322
+ const waiverFile = parseWaiverFile(waiverFilePath);
323
+ if (!waiverFile) {
324
+ return { waived: false, reason: '.waiver.json 파싱 실패' };
325
+ }
326
+ // 상대 경로로 변환하여 패턴 매칭
327
+ const relativePath = relative(projectRoot, filePath).replace(/\\/g, '/');
328
+ for (const entry of waiverFile.waivers) {
329
+ if (matchFilePattern(relativePath, entry.pattern)) {
330
+ // 만료 체크
331
+ if (isWaiverExpired(entry)) {
332
+ return {
333
+ waived: false,
334
+ reason: `waiver 만료됨: ${entry.expiresAt}`,
335
+ adrPath: entry.adr,
336
+ externalWaiver: entry,
337
+ };
338
+ }
339
+ return {
340
+ waived: true,
341
+ reason: entry.justification,
342
+ adrPath: entry.adr,
343
+ externalWaiver: entry,
344
+ };
345
+ }
346
+ }
347
+ return { waived: false, reason: '매칭되는 waiver 패턴 없음' };
348
+ }
349
+ // ============================================================
350
+ // Layer 6: 통합 Waiver 체크 (외부 우선, 인라인 폴백)
220
351
  // ============================================================
221
352
  export function checkWaiver(source, filePath, projectRoot) {
353
+ // 1. 외부 waiver 체크 (우선순위 높음)
354
+ if (filePath && projectRoot) {
355
+ const externalResult = checkExternalWaiver(filePath, projectRoot);
356
+ if (externalResult.waived || externalResult.externalWaiver) {
357
+ return externalResult;
358
+ }
359
+ }
360
+ // 2. 인라인 waiver 체크 (폴백)
361
+ return checkInlineWaiver(source, filePath, projectRoot);
362
+ }
363
+ // ============================================================
364
+ // 인라인 Waiver 체크 (기존 로직)
365
+ // ============================================================
366
+ export function checkInlineWaiver(source, filePath, projectRoot) {
222
367
  const config = parseEssentialComplexity(source);
223
368
  if (!config) {
224
369
  return { waived: false, reason: '__essential_complexity__ 없음' };
@@ -1 +1 @@
1
- {"version":3,"file":"waiver.js","sourceRoot":"","sources":["../../src/gate/waiver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"waiver.js","sourceRoot":"","sources":["../../src/gate/waiver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AA+JH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAG1C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AA+XH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAG1C"}
package/dist/mcp/index.js CHANGED
@@ -10,8 +10,26 @@ import { dirname, join } from 'path';
10
10
  import { analyzeBread } from '../analyzers/bread.js';
11
11
  import { analyzeCheese } from '../analyzers/cheese.js';
12
12
  import { analyzeHam } from '../analyzers/ham.js';
13
- import { normalize, calculateEquilibrium } from '../simplex/index.js';
13
+ import { normalize, calculateEquilibrium, getLabel } from '../simplex/index.js';
14
14
  import { checkGate } from '../gate/index.js';
15
+ import { checkBudget, calculateDelta } from '../budget/index.js';
16
+ import { suggestRefactor, checkDegradation } from '../recommend/index.js';
17
+ // Canonical profile (ideal simplex coordinates by module type)
18
+ const CANONICAL_PROFILES = {
19
+ 'api/external': { bread: 0.5, cheese: 0.3, ham: 0.2 },
20
+ 'api/internal': { bread: 0.4, cheese: 0.35, ham: 0.25 },
21
+ 'lib/domain': { bread: 0.2, cheese: 0.5, ham: 0.3 },
22
+ 'lib/util': { bread: 0.1, cheese: 0.5, ham: 0.4 },
23
+ 'app': { bread: 0.33, cheese: 0.34, ham: 0.33 },
24
+ 'default': { bread: 1 / 3, cheese: 1 / 3, ham: 1 / 3 },
25
+ };
26
+ function calculateDeviation(current, canonical) {
27
+ return {
28
+ bread: current.bread - canonical.bread,
29
+ cheese: current.cheese - canonical.cheese,
30
+ ham: current.ham - canonical.ham,
31
+ };
32
+ }
15
33
  // package.json에서 버전 동적으로 읽기
16
34
  const __filename = fileURLToPath(import.meta.url);
17
35
  const __dirname = dirname(__filename);
@@ -60,6 +78,14 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
60
78
  enum: ['poc', 'mvp', 'production'],
61
79
  description: 'Gate type (default: mvp)',
62
80
  },
81
+ file_path: {
82
+ type: 'string',
83
+ description: 'File path for waiver check',
84
+ },
85
+ project_root: {
86
+ type: 'string',
87
+ description: 'Project root for waiver discovery',
88
+ },
63
89
  },
64
90
  required: ['source'],
65
91
  },
@@ -78,6 +104,80 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
78
104
  required: ['source'],
79
105
  },
80
106
  },
107
+ {
108
+ name: 'suggest_refactor',
109
+ description: 'Suggest refactoring actions based on complexity analysis',
110
+ inputSchema: {
111
+ type: 'object',
112
+ properties: {
113
+ source: {
114
+ type: 'string',
115
+ description: 'Source code to analyze',
116
+ },
117
+ module_type: {
118
+ type: 'string',
119
+ enum: ['api/external', 'api/internal', 'lib/domain', 'lib/util', 'app'],
120
+ description: 'Module type for context-aware recommendations',
121
+ },
122
+ },
123
+ required: ['source'],
124
+ },
125
+ },
126
+ {
127
+ name: 'check_budget',
128
+ description: 'Check if code changes stay within allowed complexity budget',
129
+ inputSchema: {
130
+ type: 'object',
131
+ properties: {
132
+ before_source: {
133
+ type: 'string',
134
+ description: 'Source code before changes',
135
+ },
136
+ after_source: {
137
+ type: 'string',
138
+ description: 'Source code after changes',
139
+ },
140
+ module_type: {
141
+ type: 'string',
142
+ enum: ['api/external', 'api/internal', 'lib/domain', 'lib/util', 'app'],
143
+ description: 'Module type for budget limits',
144
+ },
145
+ },
146
+ required: ['before_source', 'after_source'],
147
+ },
148
+ },
149
+ {
150
+ name: 'get_label',
151
+ description: 'Get dominant axis label (bread/cheese/ham/balanced)',
152
+ inputSchema: {
153
+ type: 'object',
154
+ properties: {
155
+ source: {
156
+ type: 'string',
157
+ description: 'Source code to analyze',
158
+ },
159
+ },
160
+ required: ['source'],
161
+ },
162
+ },
163
+ {
164
+ name: 'check_degradation',
165
+ description: 'Detect cognitive degradation between code versions',
166
+ inputSchema: {
167
+ type: 'object',
168
+ properties: {
169
+ before_source: {
170
+ type: 'string',
171
+ description: 'Source code before changes',
172
+ },
173
+ after_source: {
174
+ type: 'string',
175
+ description: 'Source code after changes',
176
+ },
177
+ },
178
+ required: ['before_source', 'after_source'],
179
+ },
180
+ },
81
181
  ],
82
182
  }));
83
183
  // Handle tool calls
@@ -86,16 +186,45 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
86
186
  switch (name) {
87
187
  case 'analyze_sandwich': {
88
188
  const source = args?.source;
189
+ const filePath = args?.file_path;
89
190
  const bread = analyzeBread(source);
90
191
  const cheese = analyzeCheese(source);
91
- const ham = analyzeHam(source);
192
+ const ham = analyzeHam(source, filePath);
92
193
  const simplex = normalize(bread, cheese, ham);
93
194
  const equilibrium = calculateEquilibrium(simplex);
195
+ const label = getLabel(simplex);
196
+ const recommendations = suggestRefactor(simplex, equilibrium, cheese);
197
+ // Determine module type from file path or use default
198
+ let moduleType = 'default';
199
+ if (filePath) {
200
+ if (filePath.includes('/api/') || filePath.includes('\\api\\')) {
201
+ moduleType = filePath.includes('external') ? 'api/external' : 'api/internal';
202
+ }
203
+ else if (filePath.includes('/lib/') || filePath.includes('\\lib\\')) {
204
+ moduleType = filePath.includes('domain') ? 'lib/domain' : 'lib/util';
205
+ }
206
+ else if (filePath.includes('/app/') || filePath.includes('\\app\\')) {
207
+ moduleType = 'app';
208
+ }
209
+ }
210
+ const canonical = CANONICAL_PROFILES[moduleType] || CANONICAL_PROFILES['default'];
211
+ const deviation = calculateDeviation(simplex, canonical);
94
212
  return {
95
213
  content: [
96
214
  {
97
215
  type: 'text',
98
- text: JSON.stringify({ bread, cheese, ham, simplex, equilibrium }, null, 2),
216
+ text: JSON.stringify({
217
+ bread,
218
+ cheese,
219
+ ham,
220
+ simplex,
221
+ equilibrium,
222
+ label: label.label,
223
+ confidence: label.confidence,
224
+ canonical,
225
+ deviation,
226
+ recommendations,
227
+ }, null, 2),
99
228
  },
100
229
  ],
101
230
  };
@@ -103,9 +232,15 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
103
232
  case 'check_gate': {
104
233
  const source = args?.source;
105
234
  const gateType = args?.gate_type || 'mvp';
235
+ const filePath = args?.file_path;
236
+ const projectRoot = args?.project_root;
106
237
  const cheese = analyzeCheese(source);
107
238
  const ham = analyzeHam(source);
108
- const result = checkGate(gateType, cheese, ham);
239
+ const result = checkGate(gateType, cheese, ham, {
240
+ source,
241
+ filePath,
242
+ projectRoot,
243
+ });
109
244
  return {
110
245
  content: [
111
246
  {
@@ -127,6 +262,82 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
127
262
  ],
128
263
  };
129
264
  }
265
+ case 'suggest_refactor': {
266
+ const source = args?.source;
267
+ const bread = analyzeBread(source);
268
+ const cheese = analyzeCheese(source);
269
+ const ham = analyzeHam(source);
270
+ const simplex = normalize(bread, cheese, ham);
271
+ const equilibrium = calculateEquilibrium(simplex);
272
+ const recommendations = suggestRefactor(simplex, equilibrium, cheese);
273
+ return {
274
+ content: [
275
+ {
276
+ type: 'text',
277
+ text: JSON.stringify(recommendations, null, 2),
278
+ },
279
+ ],
280
+ };
281
+ }
282
+ case 'check_budget': {
283
+ const beforeSource = args?.before_source;
284
+ const afterSource = args?.after_source;
285
+ const moduleType = args?.module_type || 'app';
286
+ const before = analyzeCheese(beforeSource);
287
+ const after = analyzeCheese(afterSource);
288
+ const delta = calculateDelta(before, after);
289
+ const result = checkBudget(moduleType, delta);
290
+ return {
291
+ content: [
292
+ {
293
+ type: 'text',
294
+ text: JSON.stringify(result, null, 2),
295
+ },
296
+ ],
297
+ };
298
+ }
299
+ case 'get_label': {
300
+ const source = args?.source;
301
+ const bread = analyzeBread(source);
302
+ const cheese = analyzeCheese(source);
303
+ const ham = analyzeHam(source);
304
+ const simplex = normalize(bread, cheese, ham);
305
+ const label = getLabel(simplex);
306
+ return {
307
+ content: [
308
+ {
309
+ type: 'text',
310
+ text: JSON.stringify({ ...label, simplex }, null, 2),
311
+ },
312
+ ],
313
+ };
314
+ }
315
+ case 'check_degradation': {
316
+ const beforeSource = args?.before_source;
317
+ const afterSource = args?.after_source;
318
+ const before = analyzeCheese(beforeSource);
319
+ const after = analyzeCheese(afterSource);
320
+ const result = checkDegradation(before, after);
321
+ return {
322
+ content: [
323
+ {
324
+ type: 'text',
325
+ text: JSON.stringify({
326
+ degraded: result.degraded,
327
+ severity: result.severity,
328
+ indicators: result.indicators,
329
+ beforeAccessible: result.beforeAccessible,
330
+ afterAccessible: result.afterAccessible,
331
+ delta: {
332
+ nesting: result.deltaNesting,
333
+ hiddenDeps: result.deltaHiddenDeps,
334
+ violations: result.deltaViolations,
335
+ },
336
+ }, null, 2),
337
+ },
338
+ ],
339
+ };
340
+ }
130
341
  default:
131
342
  throw new Error(`Unknown tool: ${name}`);
132
343
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "semantic-complexity",
3
- "version": "0.0.13-2aaf183b",
3
+ "version": "0.0.15-54738920",
4
4
  "description": "Multi-dimensional code complexity analyzer (Bread-Cheese-Ham sandwich model)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",