driftdetect-core 0.6.1 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/LICENSE +21 -0
  2. package/dist/constants/analysis/categorizer.d.ts +27 -0
  3. package/dist/constants/analysis/categorizer.d.ts.map +1 -0
  4. package/dist/constants/analysis/categorizer.js +364 -0
  5. package/dist/constants/analysis/categorizer.js.map +1 -0
  6. package/dist/constants/analysis/consistency-analyzer.d.ts +77 -0
  7. package/dist/constants/analysis/consistency-analyzer.d.ts.map +1 -0
  8. package/dist/constants/analysis/consistency-analyzer.js +176 -0
  9. package/dist/constants/analysis/consistency-analyzer.js.map +1 -0
  10. package/dist/constants/analysis/dead-constant-detector.d.ts +79 -0
  11. package/dist/constants/analysis/dead-constant-detector.d.ts.map +1 -0
  12. package/dist/constants/analysis/dead-constant-detector.js +242 -0
  13. package/dist/constants/analysis/dead-constant-detector.js.map +1 -0
  14. package/dist/constants/analysis/magic-detector.d.ts +116 -0
  15. package/dist/constants/analysis/magic-detector.d.ts.map +1 -0
  16. package/dist/constants/analysis/magic-detector.js +425 -0
  17. package/dist/constants/analysis/magic-detector.js.map +1 -0
  18. package/dist/constants/analysis/reference-finder.d.ts +87 -0
  19. package/dist/constants/analysis/reference-finder.d.ts.map +1 -0
  20. package/dist/constants/analysis/reference-finder.js +269 -0
  21. package/dist/constants/analysis/reference-finder.js.map +1 -0
  22. package/dist/constants/analysis/security-scanner.d.ts +115 -0
  23. package/dist/constants/analysis/security-scanner.d.ts.map +1 -0
  24. package/dist/constants/analysis/security-scanner.js +429 -0
  25. package/dist/constants/analysis/security-scanner.js.map +1 -0
  26. package/dist/constants/extractors/base-extractor.d.ts +97 -0
  27. package/dist/constants/extractors/base-extractor.d.ts.map +1 -0
  28. package/dist/constants/extractors/base-extractor.js +285 -0
  29. package/dist/constants/extractors/base-extractor.js.map +1 -0
  30. package/dist/constants/extractors/regex/base-regex.d.ts +67 -0
  31. package/dist/constants/extractors/regex/base-regex.d.ts.map +1 -0
  32. package/dist/constants/extractors/regex/base-regex.js +209 -0
  33. package/dist/constants/extractors/regex/base-regex.js.map +1 -0
  34. package/dist/constants/extractors/regex/csharp-regex.d.ts +39 -0
  35. package/dist/constants/extractors/regex/csharp-regex.d.ts.map +1 -0
  36. package/dist/constants/extractors/regex/csharp-regex.js +316 -0
  37. package/dist/constants/extractors/regex/csharp-regex.js.map +1 -0
  38. package/dist/constants/extractors/regex/go-regex.d.ts +40 -0
  39. package/dist/constants/extractors/regex/go-regex.d.ts.map +1 -0
  40. package/dist/constants/extractors/regex/go-regex.js +297 -0
  41. package/dist/constants/extractors/regex/go-regex.js.map +1 -0
  42. package/dist/constants/extractors/regex/java-regex.d.ts +43 -0
  43. package/dist/constants/extractors/regex/java-regex.d.ts.map +1 -0
  44. package/dist/constants/extractors/regex/java-regex.js +276 -0
  45. package/dist/constants/extractors/regex/java-regex.js.map +1 -0
  46. package/dist/constants/extractors/regex/php-regex.d.ts +39 -0
  47. package/dist/constants/extractors/regex/php-regex.d.ts.map +1 -0
  48. package/dist/constants/extractors/regex/php-regex.js +270 -0
  49. package/dist/constants/extractors/regex/php-regex.js.map +1 -0
  50. package/dist/constants/extractors/regex/python-regex.d.ts +39 -0
  51. package/dist/constants/extractors/regex/python-regex.d.ts.map +1 -0
  52. package/dist/constants/extractors/regex/python-regex.js +287 -0
  53. package/dist/constants/extractors/regex/python-regex.js.map +1 -0
  54. package/dist/constants/extractors/regex/typescript-regex.d.ts +35 -0
  55. package/dist/constants/extractors/regex/typescript-regex.d.ts.map +1 -0
  56. package/dist/constants/extractors/regex/typescript-regex.js +313 -0
  57. package/dist/constants/extractors/regex/typescript-regex.js.map +1 -0
  58. package/dist/constants/index.d.ts +26 -0
  59. package/dist/constants/index.d.ts.map +1 -0
  60. package/dist/constants/index.js +36 -0
  61. package/dist/constants/index.js.map +1 -0
  62. package/dist/constants/integration/callgraph-adapter.d.ts +167 -0
  63. package/dist/constants/integration/callgraph-adapter.d.ts.map +1 -0
  64. package/dist/constants/integration/callgraph-adapter.js +287 -0
  65. package/dist/constants/integration/callgraph-adapter.js.map +1 -0
  66. package/dist/constants/integration/index.d.ts +10 -0
  67. package/dist/constants/integration/index.d.ts.map +1 -0
  68. package/dist/constants/integration/index.js +13 -0
  69. package/dist/constants/integration/index.js.map +1 -0
  70. package/dist/constants/integration/pattern-adapter.d.ts +171 -0
  71. package/dist/constants/integration/pattern-adapter.d.ts.map +1 -0
  72. package/dist/constants/integration/pattern-adapter.js +331 -0
  73. package/dist/constants/integration/pattern-adapter.js.map +1 -0
  74. package/dist/constants/integration/scanner-adapter.d.ts +153 -0
  75. package/dist/constants/integration/scanner-adapter.d.ts.map +1 -0
  76. package/dist/constants/integration/scanner-adapter.js +337 -0
  77. package/dist/constants/integration/scanner-adapter.js.map +1 -0
  78. package/dist/constants/store/constant-store.d.ts +117 -0
  79. package/dist/constants/store/constant-store.d.ts.map +1 -0
  80. package/dist/constants/store/constant-store.js +367 -0
  81. package/dist/constants/store/constant-store.js.map +1 -0
  82. package/dist/constants/types.d.ts +423 -0
  83. package/dist/constants/types.d.ts.map +1 -0
  84. package/dist/constants/types.js +43 -0
  85. package/dist/constants/types.js.map +1 -0
  86. package/dist/constraints/store/constraint-store.d.ts.map +1 -1
  87. package/dist/constraints/store/constraint-store.js +37 -2
  88. package/dist/constraints/store/constraint-store.js.map +1 -1
  89. package/dist/environment/env-scanner.d.ts +53 -0
  90. package/dist/environment/env-scanner.d.ts.map +1 -0
  91. package/dist/environment/env-scanner.js +290 -0
  92. package/dist/environment/env-scanner.js.map +1 -0
  93. package/dist/environment/env-store.d.ts +70 -0
  94. package/dist/environment/env-store.d.ts.map +1 -0
  95. package/dist/environment/env-store.js +201 -0
  96. package/dist/environment/env-store.js.map +1 -0
  97. package/dist/environment/extractors/base-env-extractor.d.ts +56 -0
  98. package/dist/environment/extractors/base-env-extractor.d.ts.map +1 -0
  99. package/dist/environment/extractors/base-env-extractor.js +74 -0
  100. package/dist/environment/extractors/base-env-extractor.js.map +1 -0
  101. package/dist/environment/extractors/csharp-env-extractor.d.ts +49 -0
  102. package/dist/environment/extractors/csharp-env-extractor.d.ts.map +1 -0
  103. package/dist/environment/extractors/csharp-env-extractor.js +240 -0
  104. package/dist/environment/extractors/csharp-env-extractor.js.map +1 -0
  105. package/dist/environment/extractors/go-env-extractor.d.ts +53 -0
  106. package/dist/environment/extractors/go-env-extractor.d.ts.map +1 -0
  107. package/dist/environment/extractors/go-env-extractor.js +267 -0
  108. package/dist/environment/extractors/go-env-extractor.js.map +1 -0
  109. package/dist/environment/extractors/index.d.ts +13 -0
  110. package/dist/environment/extractors/index.d.ts.map +1 -0
  111. package/dist/environment/extractors/index.js +13 -0
  112. package/dist/environment/extractors/index.js.map +1 -0
  113. package/dist/environment/extractors/java-env-extractor.d.ts +58 -0
  114. package/dist/environment/extractors/java-env-extractor.d.ts.map +1 -0
  115. package/dist/environment/extractors/java-env-extractor.js +219 -0
  116. package/dist/environment/extractors/java-env-extractor.js.map +1 -0
  117. package/dist/environment/extractors/php-env-extractor.d.ts +58 -0
  118. package/dist/environment/extractors/php-env-extractor.d.ts.map +1 -0
  119. package/dist/environment/extractors/php-env-extractor.js +231 -0
  120. package/dist/environment/extractors/php-env-extractor.js.map +1 -0
  121. package/dist/environment/extractors/python-env-extractor.d.ts +50 -0
  122. package/dist/environment/extractors/python-env-extractor.d.ts.map +1 -0
  123. package/dist/environment/extractors/python-env-extractor.js +219 -0
  124. package/dist/environment/extractors/python-env-extractor.js.map +1 -0
  125. package/dist/environment/extractors/typescript-env-extractor.d.ts +54 -0
  126. package/dist/environment/extractors/typescript-env-extractor.d.ts.map +1 -0
  127. package/dist/environment/extractors/typescript-env-extractor.js +228 -0
  128. package/dist/environment/extractors/typescript-env-extractor.js.map +1 -0
  129. package/dist/environment/index.d.ts +11 -0
  130. package/dist/environment/index.d.ts.map +1 -0
  131. package/dist/environment/index.js +15 -0
  132. package/dist/environment/index.js.map +1 -0
  133. package/dist/environment/types.d.ts +145 -0
  134. package/dist/environment/types.d.ts.map +1 -0
  135. package/dist/environment/types.js +84 -0
  136. package/dist/environment/types.js.map +1 -0
  137. package/dist/index.d.ts +4 -0
  138. package/dist/index.d.ts.map +1 -1
  139. package/dist/index.js +40 -0
  140. package/dist/index.js.map +1 -1
  141. package/package.json +13 -13
@@ -0,0 +1,228 @@
1
+ /**
2
+ * TypeScript/JavaScript Environment Variable Extractor
3
+ *
4
+ * Extracts environment variable access patterns from TypeScript/JavaScript.
5
+ *
6
+ * Supports:
7
+ * - process.env.VAR_NAME
8
+ * - process.env['VAR_NAME']
9
+ * - import.meta.env.VAR_NAME
10
+ * - dotenv config patterns
11
+ * - Vite/Next.js env patterns
12
+ */
13
+ import { BaseEnvExtractor } from './base-env-extractor.js';
14
+ /**
15
+ * TypeScript/JavaScript environment variable extractor
16
+ */
17
+ export class TypeScriptEnvExtractor extends BaseEnvExtractor {
18
+ language = 'typescript';
19
+ extensions = ['.ts', '.tsx', '.js', '.jsx', '.mts', '.cts', '.mjs', '.cjs'];
20
+ /**
21
+ * Extract environment variable access from TypeScript/JavaScript source
22
+ */
23
+ extract(source, filePath) {
24
+ const result = this.createEmptyResult(filePath);
25
+ // Determine actual language
26
+ if (filePath.endsWith('.js') || filePath.endsWith('.jsx') ||
27
+ filePath.endsWith('.mjs') || filePath.endsWith('.cjs')) {
28
+ result.language = 'javascript';
29
+ }
30
+ try {
31
+ // Extract process.env patterns
32
+ this.extractProcessEnv(source, filePath, result);
33
+ // Extract import.meta.env patterns (Vite)
34
+ this.extractImportMetaEnv(source, filePath, result);
35
+ // Extract dotenv patterns
36
+ this.extractDotenvPatterns(source, filePath, result);
37
+ // Extract config() patterns (e.g., from config libraries)
38
+ this.extractConfigPatterns(source, filePath, result);
39
+ }
40
+ catch (error) {
41
+ result.errors.push(error instanceof Error ? error.message : 'Unknown parse error');
42
+ }
43
+ return result;
44
+ }
45
+ /**
46
+ * Extract process.env.VAR_NAME and process.env['VAR_NAME'] patterns
47
+ */
48
+ extractProcessEnv(source, filePath, result) {
49
+ // Pattern: process.env.VAR_NAME
50
+ const dotPattern = /process\.env\.([A-Z_][A-Z0-9_]*)/g;
51
+ let match;
52
+ while ((match = dotPattern.exec(source)) !== null) {
53
+ const varName = match[1];
54
+ if (!varName)
55
+ continue;
56
+ const pos = this.getPosition(source, match.index);
57
+ const context = this.getContext(source, match.index);
58
+ const { hasDefault, defaultValue, isRequired } = this.detectDefault(source, match.index, match[0].length);
59
+ result.accessPoints.push(this.createAccessPoint({
60
+ varName,
61
+ method: 'process.env',
62
+ file: filePath,
63
+ line: pos.line,
64
+ column: pos.column,
65
+ context,
66
+ hasDefault,
67
+ defaultValue,
68
+ isRequired,
69
+ }));
70
+ }
71
+ // Pattern: process.env['VAR_NAME'] or process.env["VAR_NAME"]
72
+ const bracketPattern = /process\.env\[['"]([A-Z_][A-Z0-9_]*)['"]\]/g;
73
+ while ((match = bracketPattern.exec(source)) !== null) {
74
+ const varName = match[1];
75
+ if (!varName)
76
+ continue;
77
+ const pos = this.getPosition(source, match.index);
78
+ const context = this.getContext(source, match.index);
79
+ const { hasDefault, defaultValue, isRequired } = this.detectDefault(source, match.index, match[0].length);
80
+ // Avoid duplicates
81
+ const exists = result.accessPoints.some(ap => ap.line === pos.line && ap.varName === varName);
82
+ if (exists)
83
+ continue;
84
+ result.accessPoints.push(this.createAccessPoint({
85
+ varName,
86
+ method: 'process.env',
87
+ file: filePath,
88
+ line: pos.line,
89
+ column: pos.column,
90
+ context,
91
+ hasDefault,
92
+ defaultValue,
93
+ isRequired,
94
+ }));
95
+ }
96
+ }
97
+ /**
98
+ * Extract import.meta.env patterns (Vite, Astro)
99
+ */
100
+ extractImportMetaEnv(source, filePath, result) {
101
+ // Pattern: import.meta.env.VITE_VAR_NAME
102
+ const pattern = /import\.meta\.env\.([A-Z_][A-Z0-9_]*)/g;
103
+ let match;
104
+ while ((match = pattern.exec(source)) !== null) {
105
+ const varName = match[1];
106
+ if (!varName)
107
+ continue;
108
+ const pos = this.getPosition(source, match.index);
109
+ const context = this.getContext(source, match.index);
110
+ const { hasDefault, defaultValue, isRequired } = this.detectDefault(source, match.index, match[0].length);
111
+ result.accessPoints.push(this.createAccessPoint({
112
+ varName,
113
+ method: 'import.meta.env',
114
+ file: filePath,
115
+ line: pos.line,
116
+ column: pos.column,
117
+ context,
118
+ hasDefault,
119
+ defaultValue,
120
+ isRequired,
121
+ }));
122
+ }
123
+ }
124
+ /**
125
+ * Extract dotenv config patterns
126
+ */
127
+ extractDotenvPatterns(source, filePath, result) {
128
+ // Pattern: dotenv.config() or require('dotenv').config()
129
+ const configPattern = /(?:dotenv|require\(['"]dotenv['"]\))\.config\(/g;
130
+ let match;
131
+ while ((match = configPattern.exec(source)) !== null) {
132
+ const pos = this.getPosition(source, match.index);
133
+ const context = this.getContext(source, match.index);
134
+ // This is a config initialization, not a variable access
135
+ // But we track it for completeness
136
+ result.accessPoints.push(this.createAccessPoint({
137
+ varName: '__DOTENV_CONFIG__',
138
+ method: 'dotenv',
139
+ file: filePath,
140
+ line: pos.line,
141
+ column: pos.column,
142
+ context,
143
+ hasDefault: true,
144
+ isRequired: false,
145
+ confidence: 0.7,
146
+ }));
147
+ }
148
+ }
149
+ /**
150
+ * Extract config() patterns from config libraries
151
+ */
152
+ extractConfigPatterns(source, filePath, result) {
153
+ // Pattern: config.get('VAR_NAME') or config('VAR_NAME')
154
+ const patterns = [
155
+ /config\.get\(['"]([A-Za-z_][A-Za-z0-9_.]*)['"]\)/g,
156
+ /config\(['"]([A-Za-z_][A-Za-z0-9_.]*)['"]\)/g,
157
+ /getConfig\(['"]([A-Za-z_][A-Za-z0-9_.]*)['"]\)/g,
158
+ ];
159
+ for (const pattern of patterns) {
160
+ let match;
161
+ while ((match = pattern.exec(source)) !== null) {
162
+ const varName = match[1];
163
+ if (!varName)
164
+ continue;
165
+ const pos = this.getPosition(source, match.index);
166
+ const context = this.getContext(source, match.index);
167
+ result.accessPoints.push(this.createAccessPoint({
168
+ varName,
169
+ method: 'config',
170
+ file: filePath,
171
+ line: pos.line,
172
+ column: pos.column,
173
+ context,
174
+ hasDefault: false,
175
+ isRequired: true,
176
+ confidence: 0.8,
177
+ }));
178
+ }
179
+ }
180
+ }
181
+ /**
182
+ * Detect if a default value is provided
183
+ */
184
+ detectDefault(source, matchIndex, matchLength) {
185
+ // Look for patterns like:
186
+ // process.env.VAR || 'default'
187
+ // process.env.VAR ?? 'default'
188
+ // process.env.VAR || defaultValue
189
+ const afterMatch = source.slice(matchIndex + matchLength, matchIndex + matchLength + 100);
190
+ // Check for || or ?? followed by a value
191
+ const defaultMatch = afterMatch.match(/^\s*(?:\|\||[\?]{2})\s*(['"`]([^'"`]*?)['"`]|[a-zA-Z_][a-zA-Z0-9_]*|\d+)/);
192
+ if (defaultMatch) {
193
+ const defaultValue = defaultMatch[2] ?? defaultMatch[1];
194
+ return {
195
+ hasDefault: true,
196
+ defaultValue,
197
+ isRequired: false,
198
+ };
199
+ }
200
+ // Check for ternary with throw
201
+ const throwMatch = afterMatch.match(/^\s*\?\s*[^:]+\s*:\s*(?:throw|process\.exit)/);
202
+ if (throwMatch) {
203
+ return { hasDefault: false, isRequired: true };
204
+ }
205
+ // Check if wrapped in required() or similar
206
+ const beforeMatch = source.slice(Math.max(0, matchIndex - 50), matchIndex);
207
+ const requiredMatch = beforeMatch.match(/(?:required|mustHave|assert)\s*\(\s*$/);
208
+ if (requiredMatch) {
209
+ return { hasDefault: false, isRequired: true };
210
+ }
211
+ return { hasDefault: false, isRequired: false };
212
+ }
213
+ /**
214
+ * Get context around a match
215
+ */
216
+ getContext(source, index) {
217
+ const start = Math.max(0, index - 20);
218
+ const end = Math.min(source.length, index + 80);
219
+ return source.slice(start, end).replace(/\n/g, ' ').trim();
220
+ }
221
+ }
222
+ /**
223
+ * Create a TypeScript environment extractor
224
+ */
225
+ export function createTypeScriptEnvExtractor() {
226
+ return new TypeScriptEnvExtractor();
227
+ }
228
+ //# sourceMappingURL=typescript-env-extractor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typescript-env-extractor.js","sourceRoot":"","sources":["../../../src/environment/extractors/typescript-env-extractor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Environment Variable Detection Module
3
+ *
4
+ * Provides detection and tracking of environment variable access patterns
5
+ * across all supported languages.
6
+ */
7
+ export * from './types.js';
8
+ export { EnvScanner, createEnvScanner, type EnvScannerConfig } from './env-scanner.js';
9
+ export { EnvStore, createEnvStore } from './env-store.js';
10
+ export { BaseEnvExtractor, TypeScriptEnvExtractor, createTypeScriptEnvExtractor, PythonEnvExtractor, createPythonEnvExtractor, JavaEnvExtractor, createJavaEnvExtractor, CSharpEnvExtractor, createCSharpEnvExtractor, PhpEnvExtractor, createPhpEnvExtractor, GoEnvExtractor, createGoEnvExtractor, } from './extractors/index.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/environment/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGvF,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,EACf,qBAAqB,EACrB,cAAc,EACd,oBAAoB,GACrB,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Environment Variable Detection Module
3
+ *
4
+ * Provides detection and tracking of environment variable access patterns
5
+ * across all supported languages.
6
+ */
7
+ // Types
8
+ export * from './types.js';
9
+ // Scanner
10
+ export { EnvScanner, createEnvScanner } from './env-scanner.js';
11
+ // Store
12
+ export { EnvStore, createEnvStore } from './env-store.js';
13
+ // Extractors
14
+ export { BaseEnvExtractor, TypeScriptEnvExtractor, createTypeScriptEnvExtractor, PythonEnvExtractor, createPythonEnvExtractor, JavaEnvExtractor, createJavaEnvExtractor, CSharpEnvExtractor, createCSharpEnvExtractor, PhpEnvExtractor, createPhpEnvExtractor, GoEnvExtractor, createGoEnvExtractor, } from './extractors/index.js';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/environment/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,UAAU;AACV,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAyB,MAAM,kBAAkB,CAAC;AAEvF,QAAQ;AACR,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE1D,aAAa;AACb,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,EAClB,wBAAwB,EACxB,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,EACf,qBAAqB,EACrB,cAAc,EACd,oBAAoB,GACrB,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,145 @@
1
+ /**
2
+ * Environment Variable Access Types
3
+ *
4
+ * Types for tracking environment variable and configuration access patterns.
5
+ * Enables answering: "What config/env vars does this code access?"
6
+ */
7
+ /**
8
+ * Supported languages for environment extraction
9
+ */
10
+ export type EnvLanguage = 'typescript' | 'javascript' | 'python' | 'java' | 'csharp' | 'php' | 'go';
11
+ /**
12
+ * Environment access method
13
+ */
14
+ export type EnvAccessMethod = 'process.env' | 'import.meta.env' | 'dotenv' | 'config' | 'os.environ' | 'os.getenv' | 'dotenv' | 'pydantic-settings' | 'System.getenv' | 'System.getProperty' | 'Environment' | '@Value' | '@ConfigurationProperties' | 'Environment.GetEnvironmentVariable' | 'IConfiguration' | 'ConfigurationManager' | 'appsettings' | 'getenv' | '$_ENV' | '$_SERVER' | 'env()' | 'config()' | 'os.Getenv' | 'os.LookupEnv' | 'viper' | 'envconfig' | 'unknown';
15
+ /**
16
+ * Environment variable sensitivity classification
17
+ */
18
+ export type EnvSensitivity = 'secret' | 'credential' | 'config' | 'unknown';
19
+ /**
20
+ * An environment variable access point in code
21
+ */
22
+ export interface EnvAccessPoint {
23
+ /** Unique identifier */
24
+ id: string;
25
+ /** Variable name being accessed (e.g., "DATABASE_URL", "API_KEY") */
26
+ varName: string;
27
+ /** Access method used */
28
+ method: EnvAccessMethod;
29
+ /** Source file */
30
+ file: string;
31
+ /** Line number */
32
+ line: number;
33
+ /** Column number */
34
+ column: number;
35
+ /** Surrounding code context */
36
+ context: string;
37
+ /** Language */
38
+ language: EnvLanguage;
39
+ /** Sensitivity classification */
40
+ sensitivity: EnvSensitivity;
41
+ /** Detection confidence (0-1) */
42
+ confidence: number;
43
+ /** Whether a default value is provided */
44
+ hasDefault: boolean;
45
+ /** Default value if detectable */
46
+ defaultValue?: string | undefined;
47
+ /** Whether this is required (no default, throws if missing) */
48
+ isRequired: boolean;
49
+ /** Function/method containing this access */
50
+ containingFunction?: string | undefined;
51
+ }
52
+ /**
53
+ * Environment variable information
54
+ */
55
+ export interface EnvVarInfo {
56
+ /** Variable name */
57
+ name: string;
58
+ /** Sensitivity classification */
59
+ sensitivity: EnvSensitivity;
60
+ /** All access points for this variable */
61
+ accessedBy: EnvAccessPoint[];
62
+ /** Files that access this variable */
63
+ files: string[];
64
+ /** Whether any access has a default */
65
+ hasDefault: boolean;
66
+ /** Whether any access requires the variable */
67
+ isRequired: boolean;
68
+ }
69
+ /**
70
+ * File environment access information
71
+ */
72
+ export interface FileEnvInfo {
73
+ /** File path */
74
+ file: string;
75
+ /** Variables accessed from this file */
76
+ variables: string[];
77
+ /** All access points in this file */
78
+ accessPoints: EnvAccessPoint[];
79
+ /** Sensitive variables accessed */
80
+ sensitiveVars: string[];
81
+ }
82
+ /**
83
+ * Complete environment access map
84
+ */
85
+ export interface EnvAccessMap {
86
+ /** Schema version */
87
+ version: '1.0';
88
+ /** Generation timestamp */
89
+ generatedAt: string;
90
+ /** Project root */
91
+ projectRoot: string;
92
+ /** Variable-centric access information */
93
+ variables: Record<string, EnvVarInfo>;
94
+ /** All access points indexed by ID */
95
+ accessPoints: Record<string, EnvAccessPoint>;
96
+ /** Statistics */
97
+ stats: {
98
+ totalVariables: number;
99
+ totalAccessPoints: number;
100
+ secretVariables: number;
101
+ credentialVariables: number;
102
+ configVariables: number;
103
+ byLanguage: Record<string, number>;
104
+ byMethod: Record<string, number>;
105
+ };
106
+ }
107
+ /**
108
+ * Result of extracting environment access from a single file
109
+ */
110
+ export interface EnvExtractionResult {
111
+ file: string;
112
+ language: EnvLanguage;
113
+ accessPoints: EnvAccessPoint[];
114
+ errors: string[];
115
+ }
116
+ /**
117
+ * Environment store configuration
118
+ */
119
+ export interface EnvStoreConfig {
120
+ rootDir: string;
121
+ }
122
+ /**
123
+ * Environment scan result
124
+ */
125
+ export interface EnvScanResult {
126
+ /** Discovered access map */
127
+ accessMap: EnvAccessMap;
128
+ /** Scan statistics */
129
+ stats: {
130
+ filesScanned: number;
131
+ variablesFound: number;
132
+ accessPointsFound: number;
133
+ secretsFound: number;
134
+ scanDurationMs: number;
135
+ };
136
+ }
137
+ /**
138
+ * Patterns for detecting sensitive environment variables
139
+ */
140
+ export declare const SENSITIVE_VAR_PATTERNS: Record<EnvSensitivity, RegExp[]>;
141
+ /**
142
+ * Classify environment variable sensitivity
143
+ */
144
+ export declare function classifyEnvSensitivity(varName: string): EnvSensitivity;
145
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/environment/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Environment Variable Access Types
3
+ *
4
+ * Types for tracking environment variable and configuration access patterns.
5
+ * Enables answering: "What config/env vars does this code access?"
6
+ */
7
+ // ============================================================================
8
+ // Sensitivity Detection
9
+ // ============================================================================
10
+ /**
11
+ * Patterns for detecting sensitive environment variables
12
+ */
13
+ export const SENSITIVE_VAR_PATTERNS = {
14
+ secret: [
15
+ /api[_-]?key/i,
16
+ /secret/i,
17
+ /token/i,
18
+ /password/i,
19
+ /passwd/i,
20
+ /private[_-]?key/i,
21
+ /auth[_-]?key/i,
22
+ /access[_-]?key/i,
23
+ /signing[_-]?key/i,
24
+ /encryption[_-]?key/i,
25
+ /jwt[_-]?secret/i,
26
+ /session[_-]?secret/i,
27
+ /webhook[_-]?secret/i,
28
+ /stripe[_-]?secret/i,
29
+ /aws[_-]?secret/i,
30
+ ],
31
+ credential: [
32
+ /database[_-]?url/i,
33
+ /db[_-]?url/i,
34
+ /connection[_-]?string/i,
35
+ /redis[_-]?url/i,
36
+ /mongo[_-]?uri/i,
37
+ /postgres[_-]?url/i,
38
+ /mysql[_-]?url/i,
39
+ /supabase[_-]?url/i,
40
+ /smtp[_-]?/i,
41
+ /mail[_-]?/i,
42
+ /s3[_-]?/i,
43
+ /aws[_-]?access/i,
44
+ ],
45
+ config: [
46
+ /port/i,
47
+ /host/i,
48
+ /url/i,
49
+ /env/i,
50
+ /node[_-]?env/i,
51
+ /debug/i,
52
+ /log[_-]?level/i,
53
+ /feature[_-]?/i,
54
+ /enable[_-]?/i,
55
+ /disable[_-]?/i,
56
+ /timeout/i,
57
+ /limit/i,
58
+ /max[_-]?/i,
59
+ /min[_-]?/i,
60
+ ],
61
+ unknown: [],
62
+ };
63
+ /**
64
+ * Classify environment variable sensitivity
65
+ */
66
+ export function classifyEnvSensitivity(varName) {
67
+ // Check secret patterns first (highest priority)
68
+ for (const pattern of SENSITIVE_VAR_PATTERNS.secret) {
69
+ if (pattern.test(varName))
70
+ return 'secret';
71
+ }
72
+ // Check credential patterns
73
+ for (const pattern of SENSITIVE_VAR_PATTERNS.credential) {
74
+ if (pattern.test(varName))
75
+ return 'credential';
76
+ }
77
+ // Check config patterns
78
+ for (const pattern of SENSITIVE_VAR_PATTERNS.config) {
79
+ if (pattern.test(varName))
80
+ return 'config';
81
+ }
82
+ return 'unknown';
83
+ }
84
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/environment/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmMH,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAqC;IACtE,MAAM,EAAE;QACN,cAAc;QACd,SAAS;QACT,QAAQ;QACR,WAAW;QACX,SAAS;QACT,kBAAkB;QAClB,eAAe;QACf,iBAAiB;QACjB,kBAAkB;QAClB,qBAAqB;QACrB,iBAAiB;QACjB,qBAAqB;QACrB,qBAAqB;QACrB,oBAAoB;QACpB,iBAAiB;KAClB;IACD,UAAU,EAAE;QACV,mBAAmB;QACnB,aAAa;QACb,wBAAwB;QACxB,gBAAgB;QAChB,gBAAgB;QAChB,mBAAmB;QACnB,gBAAgB;QAChB,mBAAmB;QACnB,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,iBAAiB;KAClB;IACD,MAAM,EAAE;QACN,OAAO;QACP,OAAO;QACP,MAAM;QACN,MAAM;QACN,eAAe;QACf,QAAQ;QACR,gBAAgB;QAChB,eAAe;QACf,cAAc;QACd,eAAe;QACf,UAAU;QACV,QAAQ;QACR,WAAW;QACX,WAAW;KACZ;IACD,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,iDAAiD;IACjD,KAAK,MAAM,OAAO,IAAI,sBAAsB,CAAC,MAAM,EAAE,CAAC;QACpD,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,QAAQ,CAAC;IAC7C,CAAC;IAED,4BAA4B;IAC5B,KAAK,MAAM,OAAO,IAAI,sBAAsB,CAAC,UAAU,EAAE,CAAC;QACxD,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,YAAY,CAAC;IACjD,CAAC;IAED,wBAAwB;IACxB,KAAK,MAAM,OAAO,IAAI,sBAAsB,CAAC,MAAM,EAAE,CAAC;QACpD,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,QAAQ,CAAC;IAC7C,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -80,4 +80,8 @@ export { WpfAnalyzer, createWpfAnalyzer, XamlHybridExtractor, createXamlHybridEx
80
80
  export type { WpfAnalyzerConfig, XamlExtractorConfig, ViewModelExtractorConfig, WpfAnalysisResult, WpfAnalysisStats, LinkingResult, UnresolvedBinding, LinkingStats, XamlElement, XamlBinding, XamlCommand, XamlFile, XamlResource, XamlResourceType, XamlExtractionResult, ExtractedBinding, ExtractedCommand, BindingMode, BindingSourceType, UpdateSourceTrigger, ViewModelAnalysis, ViewModelProperty, ViewModelCommand, DependencyPropertyInfo, DependencyPropertyCallback, ViewModelLink, CodeBehindLink, EventHandlerLink, NamedElementLink, DataContextResolution, DataContextStep, WpfNodeType, WpfCallGraphNode, WpfNodeMetadata, WpfEdgeType, WpfCallGraphEdge, WpfCallGraphIntegration, WpfCallGraphStats, DataFlowTrace, DataFlowStep, DataFlowStepType, DataFlowStepDetails, DataFlowAnalysisResult, SensitiveDataSummary, DataFlowStats, MvvmComplianceResult, MvvmViolation, MvvmViolationType, BindingError, BindingErrorType, BindingValidationResult, BindingWarning, BindingWarningType, BindingValidationStats, ResourceDictionary, ResourceResolution, ValueConverterInfo, ConverterUsage, ConverterMethodInfo, ValueConverterExtractionResult, DependencyPropertyExtractionResult, WpfProjectInfo, SourceLocation as WpfSourceLocation, WpfExtractionQuality, } from './wpf/index.js';
81
81
  export { GoAnalyzer, createGoAnalyzer, } from './go/index.js';
82
82
  export type { GoAnalyzerConfig, GoAnalysisResult, GoAnalysisStats, GoPackage, GoRoute, GoRoutesResult, GoErrorHandlingResult, GoErrorPattern, GoErrorIssue, GoSentinelError, GoCustomError, GoInterfacesResult, GoInterface, GoImplementation, GoDataAccessResult, GoGoroutinesResult, GoGoroutine, GoConcurrencyIssue, } from './go/index.js';
83
+ export { EnvScanner, createEnvScanner, EnvStore, createEnvStore, BaseEnvExtractor, TypeScriptEnvExtractor, createTypeScriptEnvExtractor, PythonEnvExtractor, createPythonEnvExtractor, JavaEnvExtractor, createJavaEnvExtractor, CSharpEnvExtractor, createCSharpEnvExtractor, PhpEnvExtractor, createPhpEnvExtractor, GoEnvExtractor, createGoEnvExtractor, classifyEnvSensitivity, SENSITIVE_VAR_PATTERNS, } from './environment/index.js';
84
+ export type { EnvLanguage, EnvAccessMethod, EnvSensitivity, EnvAccessPoint, EnvVarInfo, FileEnvInfo, EnvAccessMap, EnvExtractionResult, EnvStoreConfig, EnvScanResult, EnvScannerConfig, } from './environment/index.js';
85
+ export { ConstantStore, inferCategory, getCategoryDisplayName, getCategoryDescription, isSecuritySensitive, suggestConstantName, ConstantReferenceFinder, findAllReferences, DEFAULT_REFERENCE_FIND_CONFIG, MagicValueDetector, DEFAULT_MAGIC_DETECTOR_CONFIG, DeadConstantDetector, isLikelyDead, DEFAULT_DEAD_CONSTANT_CONFIG, ConsistencyAnalyzer, hasPotentialInconsistency, DEFAULT_CONSISTENCY_CONFIG, ConstantSecurityScanner, DEFAULT_SECURITY_SCAN_CONFIG, BaseConstantExtractor, BaseConstantRegexExtractor, TypeScriptConstantRegexExtractor, PythonConstantRegexExtractor, JavaConstantRegexExtractor, CSharpConstantRegexExtractor, PhpConstantRegexExtractor, GoConstantRegexExtractor, ConstantScannerAdapter, createConstantScanner, getConstantLanguage, hashContent, processConstantTask, createDefaultConstantQuality, ConstantCallGraphAdapter, createCallGraphAdapter, ConstantPatternAdapter, createPatternAdapter, severityToNumber, compareSeverity, } from './constants/index.js';
86
+ export type { ConstantExtraction, EnumExtraction, EnumMember, ConstantReference, FileConstantResult, ConstantExtractionQuality, ConstantFileShard, ConstantIndex, ConstantStats, ConstantLanguage, ConstantKind, ConstantCategory, IssueSeverity, MagicValue, PotentialSecret, DeadConstant, InconsistentConstant, ConstantStoreConfig, ReferenceFindConfig, ReferenceResult, MagicDetectorConfig, MagicDetectionResult, DeadConstantConfig, DeadConstantResult, ConsistencyConfig, ConsistencyResult, SecurityScanConfig, SecretPattern, SecurityScanResult, ConstantScannerConfig, ConstantScanResult, ConstantBatchScanResult, ConstantWorkerTask, ConstantWorkerResult, CallGraphAdapterConfig, CallGraphInterface, ConstantWithContext, ConstantImpactAnalysis, FunctionUsage, DataFlowPath, AffectedFunction as ConstantAffectedFunction, PatternAdapterConfig, ConstantPattern, ConstantPatternCategory, ConstantPatternResult, PatternLocation as ConstantPatternLocation, ManifestPattern as ConstantManifestPattern, } from './constants/index.js';
83
87
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -158,4 +158,44 @@ WpfCallGraphAdapter, createWpfCallGraphAdapter, WpfDataFlowTracer, createWpfData
158
158
  export {
159
159
  // Main analyzer
160
160
  GoAnalyzer, createGoAnalyzer, } from './go/index.js';
161
+ // ============================================================================
162
+ // Environment Variable Detection (Config access pattern tracking)
163
+ // ============================================================================
164
+ export {
165
+ // Scanner
166
+ EnvScanner, createEnvScanner,
167
+ // Store
168
+ EnvStore, createEnvStore,
169
+ // Extractors
170
+ BaseEnvExtractor, TypeScriptEnvExtractor, createTypeScriptEnvExtractor, PythonEnvExtractor, createPythonEnvExtractor, JavaEnvExtractor, createJavaEnvExtractor, CSharpEnvExtractor, createCSharpEnvExtractor, PhpEnvExtractor, createPhpEnvExtractor, GoEnvExtractor, createGoEnvExtractor,
171
+ // Utilities
172
+ classifyEnvSensitivity, SENSITIVE_VAR_PATTERNS, } from './environment/index.js';
173
+ // ============================================================================
174
+ // Constants Module (Constant/Enum extraction and tracking)
175
+ // ============================================================================
176
+ export {
177
+ // Store
178
+ ConstantStore,
179
+ // Analysis - Categorizer
180
+ inferCategory, getCategoryDisplayName, getCategoryDescription, isSecuritySensitive, suggestConstantName,
181
+ // Analysis - Reference Finder
182
+ ConstantReferenceFinder, findAllReferences, DEFAULT_REFERENCE_FIND_CONFIG,
183
+ // Analysis - Magic Value Detector
184
+ MagicValueDetector, DEFAULT_MAGIC_DETECTOR_CONFIG,
185
+ // Analysis - Dead Constant Detector
186
+ DeadConstantDetector, isLikelyDead, DEFAULT_DEAD_CONSTANT_CONFIG,
187
+ // Analysis - Consistency Analyzer
188
+ ConsistencyAnalyzer, hasPotentialInconsistency, DEFAULT_CONSISTENCY_CONFIG,
189
+ // Analysis - Security Scanner
190
+ ConstantSecurityScanner, DEFAULT_SECURITY_SCAN_CONFIG,
191
+ // Extractors - Base
192
+ BaseConstantExtractor, BaseConstantRegexExtractor,
193
+ // Extractors - Language-specific
194
+ TypeScriptConstantRegexExtractor, PythonConstantRegexExtractor, JavaConstantRegexExtractor, CSharpConstantRegexExtractor, PhpConstantRegexExtractor, GoConstantRegexExtractor,
195
+ // Integration - Scanner Adapter
196
+ ConstantScannerAdapter, createConstantScanner, getConstantLanguage, hashContent, processConstantTask, createDefaultConstantQuality,
197
+ // Integration - Call Graph Adapter
198
+ ConstantCallGraphAdapter, createCallGraphAdapter,
199
+ // Integration - Pattern Adapter
200
+ ConstantPatternAdapter, createPatternAdapter, severityToNumber, compareSeverity, } from './constants/index.js';
161
201
  //# sourceMappingURL=index.js.map