@aiready/pattern-detect 0.16.19 → 0.16.21
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/dist/analyzer-entry/index.d.mts +3 -0
- package/dist/analyzer-entry/index.d.ts +3 -0
- package/dist/analyzer-entry/index.js +693 -0
- package/dist/analyzer-entry/index.mjs +12 -0
- package/dist/analyzer-entry.d.mts +100 -3
- package/dist/analyzer-entry.d.ts +100 -3
- package/dist/analyzer-entry.js +9 -126
- package/dist/analyzer-entry.mjs +2 -2
- package/dist/chunk-65UQ5J2J.mjs +64 -0
- package/dist/chunk-6JTVOBJX.mjs +64 -0
- package/dist/chunk-BKRPSTT2.mjs +64 -0
- package/dist/chunk-CMWW24HW.mjs +259 -0
- package/dist/chunk-DNZS4ESD.mjs +391 -0
- package/dist/chunk-GLKAGFKX.mjs +391 -0
- package/dist/chunk-GREN7X5H.mjs +143 -0
- package/dist/chunk-JBUZ6YHE.mjs +391 -0
- package/dist/chunk-KWMNN3TG.mjs +391 -0
- package/dist/chunk-LYKRYBSM.mjs +64 -0
- package/dist/chunk-MHU3CL4R.mjs +64 -0
- package/dist/chunk-RS73WLNI.mjs +251 -0
- package/dist/chunk-SVCSIZ2A.mjs +259 -0
- package/dist/chunk-VGMM3L3O.mjs +143 -0
- package/dist/chunk-XNPID6FU.mjs +391 -0
- package/dist/cli.js +29 -147
- package/dist/cli.mjs +27 -25
- package/dist/context-rules-entry/index.d.mts +2 -0
- package/dist/context-rules-entry/index.d.ts +2 -0
- package/dist/context-rules-entry/index.js +207 -0
- package/dist/context-rules-entry/index.mjs +12 -0
- package/dist/context-rules-entry.d.mts +55 -2
- package/dist/context-rules-entry.d.ts +55 -2
- package/dist/detector-entry/index.d.mts +14 -0
- package/dist/detector-entry/index.d.ts +14 -0
- package/dist/detector-entry/index.js +301 -0
- package/dist/detector-entry/index.mjs +7 -0
- package/dist/detector-entry.d.mts +2 -2
- package/dist/detector-entry.d.ts +2 -2
- package/dist/detector-entry.js +9 -126
- package/dist/detector-entry.mjs +1 -1
- package/dist/index-BVz-HnZd.d.mts +119 -0
- package/dist/index-BwuoiCNm.d.ts +119 -0
- package/dist/index-y2uJSngh.d.mts +60 -0
- package/dist/index-y2uJSngh.d.ts +60 -0
- package/dist/index.d.mts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +9 -126
- package/dist/index.mjs +3 -3
- package/dist/scoring-entry/index.d.mts +23 -0
- package/dist/scoring-entry/index.d.ts +23 -0
- package/dist/scoring-entry/index.js +133 -0
- package/dist/scoring-entry/index.mjs +6 -0
- package/dist/scoring-entry.d.mts +1 -1
- package/dist/scoring-entry.d.ts +1 -1
- package/dist/types-C4lmb2Yh.d.mts +36 -0
- package/dist/types-C4lmb2Yh.d.ts +36 -0
- package/package.json +16 -16
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Severity } from '@aiready/core';
|
|
2
|
+
|
|
3
|
+
type PatternType = 'api-handler' | 'validator' | 'utility' | 'class-method' | 'component' | 'function' | 'unknown';
|
|
4
|
+
interface DuplicatePattern {
|
|
5
|
+
file1: string;
|
|
6
|
+
line1: number;
|
|
7
|
+
endLine1: number;
|
|
8
|
+
file2: string;
|
|
9
|
+
line2: number;
|
|
10
|
+
endLine2: number;
|
|
11
|
+
code1: string;
|
|
12
|
+
code2: string;
|
|
13
|
+
similarity: number;
|
|
14
|
+
confidence: number;
|
|
15
|
+
patternType: PatternType;
|
|
16
|
+
tokenCost: number;
|
|
17
|
+
severity: Severity;
|
|
18
|
+
reason?: string;
|
|
19
|
+
suggestion?: string;
|
|
20
|
+
matchedRule?: string;
|
|
21
|
+
}
|
|
22
|
+
interface DetectionOptions {
|
|
23
|
+
minSimilarity: number;
|
|
24
|
+
minLines: number;
|
|
25
|
+
batchSize: number;
|
|
26
|
+
approx: boolean;
|
|
27
|
+
minSharedTokens: number;
|
|
28
|
+
maxCandidatesPerBlock: number;
|
|
29
|
+
streamResults: boolean;
|
|
30
|
+
excludePatterns?: string[];
|
|
31
|
+
confidenceThreshold?: number;
|
|
32
|
+
ignoreWhitelist?: string[];
|
|
33
|
+
onProgress?: (processed: number, total: number, message: string) => void;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export type { DetectionOptions as D, PatternType as P, DuplicatePattern as a };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Severity } from '@aiready/core';
|
|
2
|
+
|
|
3
|
+
type PatternType = 'api-handler' | 'validator' | 'utility' | 'class-method' | 'component' | 'function' | 'unknown';
|
|
4
|
+
interface DuplicatePattern {
|
|
5
|
+
file1: string;
|
|
6
|
+
line1: number;
|
|
7
|
+
endLine1: number;
|
|
8
|
+
file2: string;
|
|
9
|
+
line2: number;
|
|
10
|
+
endLine2: number;
|
|
11
|
+
code1: string;
|
|
12
|
+
code2: string;
|
|
13
|
+
similarity: number;
|
|
14
|
+
confidence: number;
|
|
15
|
+
patternType: PatternType;
|
|
16
|
+
tokenCost: number;
|
|
17
|
+
severity: Severity;
|
|
18
|
+
reason?: string;
|
|
19
|
+
suggestion?: string;
|
|
20
|
+
matchedRule?: string;
|
|
21
|
+
}
|
|
22
|
+
interface DetectionOptions {
|
|
23
|
+
minSimilarity: number;
|
|
24
|
+
minLines: number;
|
|
25
|
+
batchSize: number;
|
|
26
|
+
approx: boolean;
|
|
27
|
+
minSharedTokens: number;
|
|
28
|
+
maxCandidatesPerBlock: number;
|
|
29
|
+
streamResults: boolean;
|
|
30
|
+
excludePatterns?: string[];
|
|
31
|
+
confidenceThreshold?: number;
|
|
32
|
+
ignoreWhitelist?: string[];
|
|
33
|
+
onProgress?: (processed: number, total: number, message: string) => void;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export type { DetectionOptions as D, PatternType as P, DuplicatePattern as a };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aiready/pattern-detect",
|
|
3
|
-
"version": "0.16.
|
|
3
|
+
"version": "0.16.21",
|
|
4
4
|
"description": "Semantic duplicate pattern detection for AI-generated code - finds similar implementations that waste AI context tokens",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -15,24 +15,24 @@
|
|
|
15
15
|
"import": "./dist/index.mjs"
|
|
16
16
|
},
|
|
17
17
|
"./analyzer": {
|
|
18
|
-
"types": "./dist/analyzer-entry.d.ts",
|
|
19
|
-
"require": "./dist/analyzer-entry.js",
|
|
20
|
-
"import": "./dist/analyzer-entry.mjs"
|
|
18
|
+
"types": "./dist/analyzer-entry/index.d.ts",
|
|
19
|
+
"require": "./dist/analyzer-entry/index.js",
|
|
20
|
+
"import": "./dist/analyzer-entry/index.mjs"
|
|
21
21
|
},
|
|
22
22
|
"./detector": {
|
|
23
|
-
"types": "./dist/detector-entry.d.ts",
|
|
24
|
-
"require": "./dist/detector-entry.js",
|
|
25
|
-
"import": "./dist/detector-entry.mjs"
|
|
23
|
+
"types": "./dist/detector-entry/index.d.ts",
|
|
24
|
+
"require": "./dist/detector-entry/index.js",
|
|
25
|
+
"import": "./dist/detector-entry/index.mjs"
|
|
26
26
|
},
|
|
27
27
|
"./scoring": {
|
|
28
|
-
"types": "./dist/scoring-entry.d.ts",
|
|
29
|
-
"require": "./dist/scoring-entry.js",
|
|
30
|
-
"import": "./dist/scoring-entry.mjs"
|
|
28
|
+
"types": "./dist/scoring-entry/index.d.ts",
|
|
29
|
+
"require": "./dist/scoring-entry/index.js",
|
|
30
|
+
"import": "./dist/scoring-entry/index.mjs"
|
|
31
31
|
},
|
|
32
32
|
"./context-rules": {
|
|
33
|
-
"types": "./dist/context-rules-entry.d.ts",
|
|
34
|
-
"require": "./dist/context-rules-entry.js",
|
|
35
|
-
"import": "./dist/context-rules-entry.mjs"
|
|
33
|
+
"types": "./dist/context-rules-entry/index.d.ts",
|
|
34
|
+
"require": "./dist/context-rules-entry/index.js",
|
|
35
|
+
"import": "./dist/context-rules-entry/index.mjs"
|
|
36
36
|
}
|
|
37
37
|
},
|
|
38
38
|
"keywords": [
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"dependencies": {
|
|
66
66
|
"commander": "^14.0.0",
|
|
67
67
|
"chalk": "^5.3.0",
|
|
68
|
-
"@aiready/core": "0.23.
|
|
68
|
+
"@aiready/core": "0.23.22"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"tsup": "^8.3.5",
|
|
@@ -84,8 +84,8 @@
|
|
|
84
84
|
"access": "public"
|
|
85
85
|
},
|
|
86
86
|
"scripts": {
|
|
87
|
-
"build": "tsup src/index.ts src/cli.ts src/analyzer-entry.ts src/detector-entry.ts src/scoring-entry.ts src/context-rules-entry.ts --format cjs,esm --dts",
|
|
88
|
-
"dev": "tsup src/index.ts src/cli.ts src/analyzer-entry.ts src/detector-entry.ts src/scoring-entry.ts src/context-rules-entry.ts --format cjs,esm --dts --watch",
|
|
87
|
+
"build": "tsup src/index.ts src/cli.ts src/analyzer-entry/index.ts src/detector-entry/index.ts src/scoring-entry/index.ts src/context-rules-entry/index.ts --format cjs,esm --dts",
|
|
88
|
+
"dev": "tsup src/index.ts src/cli.ts src/analyzer-entry/index.ts src/detector-entry/index.ts src/scoring-entry/index.ts src/context-rules-entry/index.ts --format cjs,esm --dts --watch",
|
|
89
89
|
"test": "vitest run",
|
|
90
90
|
"lint": "eslint src",
|
|
91
91
|
"clean": "rm -rf dist",
|