agentic-qe 1.6.1 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/.claude/skills/sherlock-review/SKILL.md +786 -0
  2. package/CHANGELOG.md +651 -0
  3. package/README.md +52 -8
  4. package/dist/agents/BaseAgent.d.ts +30 -10
  5. package/dist/agents/BaseAgent.d.ts.map +1 -1
  6. package/dist/agents/BaseAgent.js +115 -43
  7. package/dist/agents/BaseAgent.js.map +1 -1
  8. package/dist/agents/CoverageAnalyzerAgent.js +2 -2
  9. package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
  10. package/dist/agents/FleetCommanderAgent.d.ts +16 -0
  11. package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
  12. package/dist/agents/FleetCommanderAgent.js +35 -20
  13. package/dist/agents/FleetCommanderAgent.js.map +1 -1
  14. package/dist/agents/LearningAgent.d.ts +2 -2
  15. package/dist/agents/LearningAgent.d.ts.map +1 -1
  16. package/dist/agents/LearningAgent.js +4 -4
  17. package/dist/agents/LearningAgent.js.map +1 -1
  18. package/dist/agents/TestExecutorAgent.d.ts +9 -0
  19. package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
  20. package/dist/agents/TestExecutorAgent.js +60 -0
  21. package/dist/agents/TestExecutorAgent.js.map +1 -1
  22. package/dist/agents/examples/batchAnalyze.d.ts +252 -0
  23. package/dist/agents/examples/batchAnalyze.d.ts.map +1 -0
  24. package/dist/agents/examples/batchAnalyze.js +259 -0
  25. package/dist/agents/examples/batchAnalyze.js.map +1 -0
  26. package/dist/agents/examples/batchGenerate.d.ts +153 -0
  27. package/dist/agents/examples/batchGenerate.d.ts.map +1 -0
  28. package/dist/agents/examples/batchGenerate.js +166 -0
  29. package/dist/agents/examples/batchGenerate.js.map +1 -0
  30. package/dist/agents/generateWithPII.d.ts +128 -0
  31. package/dist/agents/generateWithPII.d.ts.map +1 -0
  32. package/dist/agents/generateWithPII.js +175 -0
  33. package/dist/agents/generateWithPII.js.map +1 -0
  34. package/dist/agents/index.d.ts.map +1 -1
  35. package/dist/agents/index.js +0 -2
  36. package/dist/agents/index.js.map +1 -1
  37. package/dist/agents/lifecycle/AgentLifecycleManager.d.ts +5 -0
  38. package/dist/agents/lifecycle/AgentLifecycleManager.d.ts.map +1 -1
  39. package/dist/agents/lifecycle/AgentLifecycleManager.js +10 -0
  40. package/dist/agents/lifecycle/AgentLifecycleManager.js.map +1 -1
  41. package/dist/cli/commands/agentdb/learn.d.ts.map +1 -1
  42. package/dist/cli/commands/agentdb/learn.js +190 -71
  43. package/dist/cli/commands/agentdb/learn.js.map +1 -1
  44. package/dist/cli/commands/debug/agent.d.ts.map +1 -1
  45. package/dist/cli/commands/debug/agent.js +40 -13
  46. package/dist/cli/commands/debug/agent.js.map +1 -1
  47. package/dist/cli/commands/debug/diagnostics.js +38 -11
  48. package/dist/cli/commands/debug/diagnostics.js.map +1 -1
  49. package/dist/cli/commands/debug/health-check.js +47 -12
  50. package/dist/cli/commands/debug/health-check.js.map +1 -1
  51. package/dist/cli/commands/debug/profile.js +7 -7
  52. package/dist/cli/commands/debug/profile.js.map +1 -1
  53. package/dist/cli/commands/debug/trace.js +4 -4
  54. package/dist/cli/commands/debug/trace.js.map +1 -1
  55. package/dist/cli/commands/debug/troubleshoot.js +41 -27
  56. package/dist/cli/commands/debug/troubleshoot.js.map +1 -1
  57. package/dist/cli/commands/init.d.ts +6 -3
  58. package/dist/cli/commands/init.d.ts.map +1 -1
  59. package/dist/cli/commands/init.js +71 -54
  60. package/dist/cli/commands/init.js.map +1 -1
  61. package/dist/cli/commands/learn/index.d.ts +4 -0
  62. package/dist/cli/commands/learn/index.d.ts.map +1 -1
  63. package/dist/cli/commands/learn/index.js +57 -0
  64. package/dist/cli/commands/learn/index.js.map +1 -1
  65. package/dist/cli/commands/test/clean.d.ts.map +1 -1
  66. package/dist/cli/commands/test/clean.js +26 -9
  67. package/dist/cli/commands/test/clean.js.map +1 -1
  68. package/dist/cli/commands/test/debug.js +6 -7
  69. package/dist/cli/commands/test/debug.js.map +1 -1
  70. package/dist/cli/commands/test/diff.js +4 -37
  71. package/dist/cli/commands/test/diff.js.map +1 -1
  72. package/dist/cli/commands/test/profile.js +7 -40
  73. package/dist/cli/commands/test/profile.js.map +1 -1
  74. package/dist/cli/commands/test/trace.js +4 -37
  75. package/dist/cli/commands/test/trace.js.map +1 -1
  76. package/dist/cli/index.js +14 -0
  77. package/dist/cli/index.js.map +1 -1
  78. package/dist/core/ArtifactWorkflow.d.ts +4 -0
  79. package/dist/core/ArtifactWorkflow.d.ts.map +1 -1
  80. package/dist/core/ArtifactWorkflow.js +34 -13
  81. package/dist/core/ArtifactWorkflow.js.map +1 -1
  82. package/dist/core/coordination/BlackboardCoordination.d.ts +4 -0
  83. package/dist/core/coordination/BlackboardCoordination.d.ts.map +1 -1
  84. package/dist/core/coordination/BlackboardCoordination.js +28 -22
  85. package/dist/core/coordination/BlackboardCoordination.js.map +1 -1
  86. package/dist/core/coordination/ConsensusGating.d.ts +4 -0
  87. package/dist/core/coordination/ConsensusGating.d.ts.map +1 -1
  88. package/dist/core/coordination/ConsensusGating.js +25 -18
  89. package/dist/core/coordination/ConsensusGating.js.map +1 -1
  90. package/dist/core/memory/AgentDBManager.d.ts +5 -0
  91. package/dist/core/memory/AgentDBManager.d.ts.map +1 -1
  92. package/dist/core/memory/AgentDBManager.js +19 -1
  93. package/dist/core/memory/AgentDBManager.js.map +1 -1
  94. package/dist/core/memory/AgentDBService.d.ts.map +1 -1
  95. package/dist/core/memory/AgentDBService.js +6 -3
  96. package/dist/core/memory/AgentDBService.js.map +1 -1
  97. package/dist/core/memory/RealAgentDBAdapter.d.ts +8 -0
  98. package/dist/core/memory/RealAgentDBAdapter.d.ts.map +1 -1
  99. package/dist/core/memory/RealAgentDBAdapter.js +74 -17
  100. package/dist/core/memory/RealAgentDBAdapter.js.map +1 -1
  101. package/dist/core/memory/ReasoningBankAdapter.d.ts +4 -0
  102. package/dist/core/memory/ReasoningBankAdapter.d.ts.map +1 -1
  103. package/dist/core/memory/ReasoningBankAdapter.js +20 -0
  104. package/dist/core/memory/ReasoningBankAdapter.js.map +1 -1
  105. package/dist/core/memory/SwarmMemoryManager.d.ts +8 -0
  106. package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
  107. package/dist/core/memory/SwarmMemoryManager.js +33 -0
  108. package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
  109. package/dist/learning/ImprovementLoop.js +2 -2
  110. package/dist/learning/ImprovementLoop.js.map +1 -1
  111. package/dist/learning/LearningEngine.d.ts +11 -7
  112. package/dist/learning/LearningEngine.d.ts.map +1 -1
  113. package/dist/learning/LearningEngine.js +157 -73
  114. package/dist/learning/LearningEngine.js.map +1 -1
  115. package/dist/learning/StateExtractor.d.ts +1 -1
  116. package/dist/learning/StateExtractor.d.ts.map +1 -1
  117. package/dist/learning/StateExtractor.js +62 -13
  118. package/dist/learning/StateExtractor.js.map +1 -1
  119. package/dist/mcp/handlers/filtered/coverage-analyzer-filtered.d.ts +83 -0
  120. package/dist/mcp/handlers/filtered/coverage-analyzer-filtered.d.ts.map +1 -0
  121. package/dist/mcp/handlers/filtered/coverage-analyzer-filtered.js +130 -0
  122. package/dist/mcp/handlers/filtered/coverage-analyzer-filtered.js.map +1 -0
  123. package/dist/mcp/handlers/filtered/flaky-detector-filtered.d.ts +58 -0
  124. package/dist/mcp/handlers/filtered/flaky-detector-filtered.d.ts.map +1 -0
  125. package/dist/mcp/handlers/filtered/flaky-detector-filtered.js +84 -0
  126. package/dist/mcp/handlers/filtered/flaky-detector-filtered.js.map +1 -0
  127. package/dist/mcp/handlers/filtered/index.d.ts +47 -0
  128. package/dist/mcp/handlers/filtered/index.d.ts.map +1 -0
  129. package/dist/mcp/handlers/filtered/index.js +63 -0
  130. package/dist/mcp/handlers/filtered/index.js.map +1 -0
  131. package/dist/mcp/handlers/filtered/performance-tester-filtered.d.ts +57 -0
  132. package/dist/mcp/handlers/filtered/performance-tester-filtered.d.ts.map +1 -0
  133. package/dist/mcp/handlers/filtered/performance-tester-filtered.js +83 -0
  134. package/dist/mcp/handlers/filtered/performance-tester-filtered.js.map +1 -0
  135. package/dist/mcp/handlers/filtered/quality-assessor-filtered.d.ts +57 -0
  136. package/dist/mcp/handlers/filtered/quality-assessor-filtered.d.ts.map +1 -0
  137. package/dist/mcp/handlers/filtered/quality-assessor-filtered.js +93 -0
  138. package/dist/mcp/handlers/filtered/quality-assessor-filtered.js.map +1 -0
  139. package/dist/mcp/handlers/filtered/security-scanner-filtered.d.ts +54 -0
  140. package/dist/mcp/handlers/filtered/security-scanner-filtered.d.ts.map +1 -0
  141. package/dist/mcp/handlers/filtered/security-scanner-filtered.js +73 -0
  142. package/dist/mcp/handlers/filtered/security-scanner-filtered.js.map +1 -0
  143. package/dist/mcp/handlers/filtered/test-executor-filtered.d.ts +61 -0
  144. package/dist/mcp/handlers/filtered/test-executor-filtered.d.ts.map +1 -0
  145. package/dist/mcp/handlers/filtered/test-executor-filtered.js +117 -0
  146. package/dist/mcp/handlers/filtered/test-executor-filtered.js.map +1 -0
  147. package/dist/mcp/handlers/phase2/Phase2Tools.js +2 -2
  148. package/dist/mcp/handlers/phase2/Phase2Tools.js.map +1 -1
  149. package/dist/mcp/tools/deprecated.d.ts +8 -8
  150. package/dist/scripts/backup-helper.d.ts +64 -0
  151. package/dist/scripts/backup-helper.d.ts.map +1 -0
  152. package/dist/scripts/backup-helper.js +251 -0
  153. package/dist/scripts/backup-helper.js.map +1 -0
  154. package/dist/scripts/migrate-with-backup.d.ts +15 -0
  155. package/dist/scripts/migrate-with-backup.d.ts.map +1 -0
  156. package/dist/scripts/migrate-with-backup.js +194 -0
  157. package/dist/scripts/migrate-with-backup.js.map +1 -0
  158. package/dist/security/pii-tokenization.d.ts +216 -0
  159. package/dist/security/pii-tokenization.d.ts.map +1 -0
  160. package/dist/security/pii-tokenization.js +325 -0
  161. package/dist/security/pii-tokenization.js.map +1 -0
  162. package/dist/utils/Config.d.ts.map +1 -1
  163. package/dist/utils/Config.js +14 -5
  164. package/dist/utils/Config.js.map +1 -1
  165. package/dist/utils/Database.d.ts.map +1 -1
  166. package/dist/utils/Database.js +5 -2
  167. package/dist/utils/Database.js.map +1 -1
  168. package/dist/utils/EmbeddingGenerator.d.ts +35 -0
  169. package/dist/utils/EmbeddingGenerator.d.ts.map +1 -0
  170. package/dist/utils/EmbeddingGenerator.js +72 -0
  171. package/dist/utils/EmbeddingGenerator.js.map +1 -0
  172. package/dist/utils/Logger.d.ts +1 -1
  173. package/dist/utils/Logger.d.ts.map +1 -1
  174. package/dist/utils/Logger.js +4 -4
  175. package/dist/utils/Logger.js.map +1 -1
  176. package/dist/utils/SecurityScanner.js +1 -1
  177. package/dist/utils/SecurityScanner.js.map +1 -1
  178. package/dist/utils/batch-operations.d.ts +215 -0
  179. package/dist/utils/batch-operations.d.ts.map +1 -0
  180. package/dist/utils/batch-operations.js +266 -0
  181. package/dist/utils/batch-operations.js.map +1 -0
  182. package/dist/utils/filtering.d.ts +180 -0
  183. package/dist/utils/filtering.d.ts.map +1 -0
  184. package/dist/utils/filtering.js +288 -0
  185. package/dist/utils/filtering.js.map +1 -0
  186. package/dist/utils/prompt-cache-examples.d.ts +111 -0
  187. package/dist/utils/prompt-cache-examples.d.ts.map +1 -0
  188. package/dist/utils/prompt-cache-examples.js +416 -0
  189. package/dist/utils/prompt-cache-examples.js.map +1 -0
  190. package/dist/utils/prompt-cache.d.ts +305 -0
  191. package/dist/utils/prompt-cache.d.ts.map +1 -0
  192. package/dist/utils/prompt-cache.js +448 -0
  193. package/dist/utils/prompt-cache.js.map +1 -0
  194. package/package.json +6 -3
@@ -0,0 +1,216 @@
1
+ /**
2
+ * PII Tokenization Layer
3
+ *
4
+ * Provides bidirectional tokenization/detokenization of Personally Identifiable Information (PII)
5
+ * for GDPR and CCPA compliance. Supports email, phone, SSN, credit card, and name detection.
6
+ *
7
+ * @module security/pii-tokenization
8
+ * @compliance GDPR Article 25 (Data Protection by Design), CCPA Section 1798.100
9
+ * @see docs/planning/mcp-improvement-plan-revised.md#CO-2
10
+ */
11
+ /**
12
+ * Bidirectional mapping for tokenized PII values
13
+ *
14
+ * @compliance GDPR Article 32 - Stores original values temporarily for detokenization,
15
+ * must be cleared after use to prevent data retention issues
16
+ */
17
+ export interface TokenizationMap {
18
+ /** Email addresses (RFC 5322 compliant) */
19
+ email: Map<string, string>;
20
+ /** Phone numbers (US E.164 format) */
21
+ phone: Map<string, string>;
22
+ /** Social Security Numbers (US format: XXX-XX-XXXX) */
23
+ ssn: Map<string, string>;
24
+ /** Credit card numbers (Luhn algorithm validation recommended) */
25
+ creditCard: Map<string, string>;
26
+ /** Personal names (First Last pattern, basic heuristic) */
27
+ name: Map<string, string>;
28
+ }
29
+ /**
30
+ * Result of tokenization operation with statistics
31
+ */
32
+ export interface TokenizationResult {
33
+ /** Content with PII replaced by tokens */
34
+ tokenized: string;
35
+ /** Reverse mapping for detokenization (MUST be cleared after use) */
36
+ reverseMap: TokenizationMap;
37
+ /** Total count of PII instances found */
38
+ piiCount: number;
39
+ /** Breakdown by PII type for audit trail */
40
+ piiBreakdown: {
41
+ emails: number;
42
+ phones: number;
43
+ ssns: number;
44
+ creditCards: number;
45
+ names: number;
46
+ };
47
+ }
48
+ /**
49
+ * PIITokenizer - Secure PII detection and tokenization
50
+ *
51
+ * **IMPORTANT COMPLIANCE NOTES:**
52
+ *
53
+ * 1. **GDPR Article 25 (Data Protection by Design)**:
54
+ * - Tokenize PII BEFORE sending to LLM or storing in logs
55
+ * - Clear reverse map after detokenization to minimize data retention
56
+ *
57
+ * 2. **CCPA Section 1798.100 (Consumer Rights)**:
58
+ * - No PII sent to third-party systems (Anthropic API)
59
+ * - Tokenized version stored in databases/logs
60
+ * - Original PII only in final output files (user-controlled)
61
+ *
62
+ * 3. **PCI-DSS Requirement 3.4**:
63
+ * - Credit card numbers masked/tokenized in all non-production systems
64
+ * - No clear-text credit cards in logs or analytics
65
+ *
66
+ * 4. **HIPAA Privacy Rule** (if applicable):
67
+ * - SSN and name combinations constitute PHI
68
+ * - Must be de-identified before processing
69
+ *
70
+ * @example
71
+ * ```typescript
72
+ * const tokenizer = new PIITokenizer();
73
+ *
74
+ * // Tokenize test data
75
+ * const testCode = 'const email = "john.doe@example.com"; const ssn = "123-45-6789";';
76
+ * const { tokenized, reverseMap, piiCount } = tokenizer.tokenize(testCode);
77
+ *
78
+ * console.log(tokenized);
79
+ * // Output: 'const email = "[EMAIL_0]"; const ssn = "[SSN_0]";'
80
+ *
81
+ * // Store tokenized version in database (GDPR compliant)
82
+ * await db.storeTest({ code: tokenized });
83
+ *
84
+ * // Detokenize for file output (user-controlled)
85
+ * const finalCode = tokenizer.detokenize(tokenized, reverseMap);
86
+ * await fs.writeFile('test.ts', finalCode);
87
+ *
88
+ * // IMPORTANT: Clear reverse map after use
89
+ * tokenizer.clear();
90
+ * ```
91
+ */
92
+ export declare class PIITokenizer {
93
+ /**
94
+ * Reverse mapping for detokenization
95
+ *
96
+ * @private
97
+ * @compliance GDPR Article 32 - Must be cleared after use to prevent data retention
98
+ */
99
+ private reverseMap;
100
+ /**
101
+ * Regular expression patterns for PII detection
102
+ *
103
+ * @private
104
+ */
105
+ private readonly patterns;
106
+ /**
107
+ * Tokenize PII in test code, data files, or generated content
108
+ *
109
+ * **COMPLIANCE WORKFLOW:**
110
+ * 1. Detect PII using regex patterns
111
+ * 2. Replace with tokens ([EMAIL_0], [PHONE_1], etc.)
112
+ * 3. Store reverse map for detokenization
113
+ * 4. Return tokenized content safe for LLM processing
114
+ *
115
+ * @param content - Raw content that may contain PII
116
+ * @returns Tokenization result with statistics and reverse map
117
+ *
118
+ * @example
119
+ * ```typescript
120
+ * const tokenizer = new PIITokenizer();
121
+ * const result = tokenizer.tokenize(`
122
+ * const user = {
123
+ * name: "John Doe",
124
+ * email: "john.doe@example.com",
125
+ * phone: "+1-555-123-4567",
126
+ * ssn: "123-45-6789"
127
+ * };
128
+ * `);
129
+ *
130
+ * console.log(result.piiCount); // 4
131
+ * console.log(result.piiBreakdown);
132
+ * // { emails: 1, phones: 1, ssns: 1, creditCards: 0, names: 1 }
133
+ * ```
134
+ */
135
+ tokenize(content: string): TokenizationResult;
136
+ /**
137
+ * Reverse tokenization to restore original PII
138
+ *
139
+ * **COMPLIANCE WARNING:**
140
+ * - Only use for final file output (user-controlled)
141
+ * - NEVER store detokenized content in logs or databases
142
+ * - Call clear() immediately after use to minimize data retention
143
+ *
144
+ * @param tokenized - Content with PII tokens
145
+ * @param reverseMap - Tokenization map from tokenize() call
146
+ * @returns Original content with PII restored
147
+ *
148
+ * @example
149
+ * ```typescript
150
+ * const tokenizer = new PIITokenizer();
151
+ * const { tokenized, reverseMap } = tokenizer.tokenize('Email: john@example.com');
152
+ *
153
+ * // Store tokenized version (GDPR compliant)
154
+ * await db.storeTest({ code: tokenized });
155
+ *
156
+ * // Restore for file output
157
+ * const finalCode = tokenizer.detokenize(tokenized, reverseMap);
158
+ * await fs.writeFile('test.ts', finalCode);
159
+ *
160
+ * // IMPORTANT: Clear reverse map
161
+ * tokenizer.clear();
162
+ * ```
163
+ */
164
+ detokenize(tokenized: string, reverseMap: TokenizationMap): string;
165
+ /**
166
+ * Get PII statistics for audit trail
167
+ *
168
+ * **COMPLIANCE USE:**
169
+ * - Generate audit logs showing PII detection
170
+ * - Monitor for unexpected PII in generated content
171
+ * - Track compliance metrics over time
172
+ *
173
+ * @returns Breakdown of detected PII by type
174
+ *
175
+ * @example
176
+ * ```typescript
177
+ * const tokenizer = new PIITokenizer();
178
+ * tokenizer.tokenize('Email: john@example.com, Phone: 555-123-4567');
179
+ *
180
+ * const stats = tokenizer.getStats();
181
+ * console.log(stats);
182
+ * // { emails: 1, phones: 1, ssns: 0, creditCards: 0, names: 0, total: 2 }
183
+ *
184
+ * // Log for audit trail
185
+ * logger.info('PII detected in generated content', stats);
186
+ * ```
187
+ */
188
+ getStats(): Record<string, number>;
189
+ /**
190
+ * Clear reverse map to minimize data retention
191
+ *
192
+ * **COMPLIANCE REQUIREMENT:**
193
+ * - GDPR Article 5(1)(e) - Storage limitation principle
194
+ * - CCPA Section 1798.105 - Right to deletion
195
+ *
196
+ * MUST be called after detokenization to prevent storing PII longer than necessary.
197
+ *
198
+ * @example
199
+ * ```typescript
200
+ * const tokenizer = new PIITokenizer();
201
+ * const { tokenized, reverseMap } = tokenizer.tokenize(content);
202
+ *
203
+ * // Use tokenized content
204
+ * await processWithLLM(tokenized);
205
+ *
206
+ * // Detokenize for output
207
+ * const finalCode = tokenizer.detokenize(tokenized, reverseMap);
208
+ * await fs.writeFile('output.ts', finalCode);
209
+ *
210
+ * // CRITICAL: Clear reverse map
211
+ * tokenizer.clear(); // GDPR compliance
212
+ * ```
213
+ */
214
+ clear(): void;
215
+ }
216
+ //# sourceMappingURL=pii-tokenization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pii-tokenization.d.ts","sourceRoot":"","sources":["../../src/security/pii-tokenization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,2CAA2C;IAC3C,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE3B,sCAAsC;IACtC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE3B,uDAAuD;IACvD,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEzB,kEAAkE;IAClE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEhC,2DAA2D;IAC3D,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAElB,qEAAqE;IACrE,UAAU,EAAE,eAAe,CAAC;IAE5B,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IAEjB,4CAA4C;IAC5C,YAAY,EAAE;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,qBAAa,YAAY;IACvB;;;;;OAKG;IACH,OAAO,CAAC,UAAU,CAMhB;IAEF;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CA8CvB;IAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,kBAAkB;IAyE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,GAAG,MAAM;IAclE;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAgBlC;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,KAAK,IAAI,IAAI;CAOd"}
@@ -0,0 +1,325 @@
1
+ "use strict";
2
+ /**
3
+ * PII Tokenization Layer
4
+ *
5
+ * Provides bidirectional tokenization/detokenization of Personally Identifiable Information (PII)
6
+ * for GDPR and CCPA compliance. Supports email, phone, SSN, credit card, and name detection.
7
+ *
8
+ * @module security/pii-tokenization
9
+ * @compliance GDPR Article 25 (Data Protection by Design), CCPA Section 1798.100
10
+ * @see docs/planning/mcp-improvement-plan-revised.md#CO-2
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.PIITokenizer = void 0;
14
+ /**
15
+ * PIITokenizer - Secure PII detection and tokenization
16
+ *
17
+ * **IMPORTANT COMPLIANCE NOTES:**
18
+ *
19
+ * 1. **GDPR Article 25 (Data Protection by Design)**:
20
+ * - Tokenize PII BEFORE sending to LLM or storing in logs
21
+ * - Clear reverse map after detokenization to minimize data retention
22
+ *
23
+ * 2. **CCPA Section 1798.100 (Consumer Rights)**:
24
+ * - No PII sent to third-party systems (Anthropic API)
25
+ * - Tokenized version stored in databases/logs
26
+ * - Original PII only in final output files (user-controlled)
27
+ *
28
+ * 3. **PCI-DSS Requirement 3.4**:
29
+ * - Credit card numbers masked/tokenized in all non-production systems
30
+ * - No clear-text credit cards in logs or analytics
31
+ *
32
+ * 4. **HIPAA Privacy Rule** (if applicable):
33
+ * - SSN and name combinations constitute PHI
34
+ * - Must be de-identified before processing
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * const tokenizer = new PIITokenizer();
39
+ *
40
+ * // Tokenize test data
41
+ * const testCode = 'const email = "john.doe@example.com"; const ssn = "123-45-6789";';
42
+ * const { tokenized, reverseMap, piiCount } = tokenizer.tokenize(testCode);
43
+ *
44
+ * console.log(tokenized);
45
+ * // Output: 'const email = "[EMAIL_0]"; const ssn = "[SSN_0]";'
46
+ *
47
+ * // Store tokenized version in database (GDPR compliant)
48
+ * await db.storeTest({ code: tokenized });
49
+ *
50
+ * // Detokenize for file output (user-controlled)
51
+ * const finalCode = tokenizer.detokenize(tokenized, reverseMap);
52
+ * await fs.writeFile('test.ts', finalCode);
53
+ *
54
+ * // IMPORTANT: Clear reverse map after use
55
+ * tokenizer.clear();
56
+ * ```
57
+ */
58
+ class PIITokenizer {
59
+ constructor() {
60
+ /**
61
+ * Reverse mapping for detokenization
62
+ *
63
+ * @private
64
+ * @compliance GDPR Article 32 - Must be cleared after use to prevent data retention
65
+ */
66
+ this.reverseMap = {
67
+ email: new Map(),
68
+ phone: new Map(),
69
+ ssn: new Map(),
70
+ creditCard: new Map(),
71
+ name: new Map(),
72
+ };
73
+ /**
74
+ * Regular expression patterns for PII detection
75
+ *
76
+ * @private
77
+ */
78
+ this.patterns = {
79
+ /**
80
+ * Email pattern (RFC 5322 simplified)
81
+ * Matches: john.doe@example.com, user+tag@domain.co.uk
82
+ *
83
+ * @compliance GDPR Article 4(1) - Email is personal data
84
+ */
85
+ email: /\b[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}\b/gi,
86
+ /**
87
+ * US Phone number pattern (E.164 and common formats)
88
+ * Matches: +1-555-123-4567, (555) 123-4567, 555.123.4567, 5551234567
89
+ *
90
+ * @compliance CCPA - Phone numbers are personal information
91
+ *
92
+ * Fixed: Removed \b (word boundary) which fails with parentheses
93
+ * Uses negative lookahead (?!\d) to prevent matching longer sequences
94
+ */
95
+ phone: /(?:\+1[-.]?)?[(]?([0-9]{3})[)]?[-.\s]?([0-9]{3})[-.\s]?([0-9]{4})(?!\d)/g,
96
+ /**
97
+ * US Social Security Number (XXX-XX-XXXX)
98
+ * Matches: 123-45-6789
99
+ *
100
+ * @compliance HIPAA Privacy Rule - SSN is Protected Health Information (PHI)
101
+ */
102
+ ssn: /\b\d{3}-\d{2}-\d{4}\b/g,
103
+ /**
104
+ * Credit Card Number (Visa, Mastercard, Amex, Discover)
105
+ * Matches: 1234-5678-9012-3456, 1234 5678 9012 3456, 1234567890123456
106
+ *
107
+ * @compliance PCI-DSS Requirement 3.4 - Must be masked/tokenized
108
+ */
109
+ creditCard: /\b(?:\d{4}[-\s]?){3}\d{4}\b/g,
110
+ /**
111
+ * Personal name (basic heuristic: First Last with capital letters)
112
+ * Matches: John Doe, Mary Jane
113
+ *
114
+ * WARNING: This is a basic pattern and may produce false positives
115
+ * (e.g., class names, constants). Only tokenizes names longer than 2 characters.
116
+ *
117
+ * @compliance GDPR Article 4(1) - Names are personal data
118
+ */
119
+ name: /\b([A-Z][a-z]+)\s+([A-Z][a-z]+)\b/g,
120
+ };
121
+ }
122
+ /**
123
+ * Tokenize PII in test code, data files, or generated content
124
+ *
125
+ * **COMPLIANCE WORKFLOW:**
126
+ * 1. Detect PII using regex patterns
127
+ * 2. Replace with tokens ([EMAIL_0], [PHONE_1], etc.)
128
+ * 3. Store reverse map for detokenization
129
+ * 4. Return tokenized content safe for LLM processing
130
+ *
131
+ * @param content - Raw content that may contain PII
132
+ * @returns Tokenization result with statistics and reverse map
133
+ *
134
+ * @example
135
+ * ```typescript
136
+ * const tokenizer = new PIITokenizer();
137
+ * const result = tokenizer.tokenize(`
138
+ * const user = {
139
+ * name: "John Doe",
140
+ * email: "john.doe@example.com",
141
+ * phone: "+1-555-123-4567",
142
+ * ssn: "123-45-6789"
143
+ * };
144
+ * `);
145
+ *
146
+ * console.log(result.piiCount); // 4
147
+ * console.log(result.piiBreakdown);
148
+ * // { emails: 1, phones: 1, ssns: 1, creditCards: 0, names: 1 }
149
+ * ```
150
+ */
151
+ tokenize(content) {
152
+ let tokenized = content;
153
+ const breakdown = {
154
+ emails: 0,
155
+ phones: 0,
156
+ ssns: 0,
157
+ creditCards: 0,
158
+ names: 0,
159
+ };
160
+ // IMPORTANT: Process patterns in order of specificity to avoid false matches
161
+ // 1. Credit cards first (most specific: 13-19 digits with separators)
162
+ // 2. SSNs second (specific: XXX-XX-XXXX format)
163
+ // 3. Phones third (less specific: 10 digits, can match parts of CC numbers)
164
+ // 4. Emails fourth
165
+ // 5. Names last (least specific, prone to false positives)
166
+ // Tokenize credit cards (BEFORE phones to prevent false matches)
167
+ tokenized = tokenized.replace(this.patterns.creditCard, (cc) => {
168
+ const token = `[CC_${this.reverseMap.creditCard.size}]`;
169
+ this.reverseMap.creditCard.set(token, cc);
170
+ breakdown.creditCards++;
171
+ return token;
172
+ });
173
+ // Tokenize SSNs
174
+ tokenized = tokenized.replace(this.patterns.ssn, (ssn) => {
175
+ const token = `[SSN_${this.reverseMap.ssn.size}]`;
176
+ this.reverseMap.ssn.set(token, ssn);
177
+ breakdown.ssns++;
178
+ return token;
179
+ });
180
+ // Tokenize phone numbers (US format) - AFTER credit cards
181
+ tokenized = tokenized.replace(this.patterns.phone, (phone) => {
182
+ const token = `[PHONE_${this.reverseMap.phone.size}]`;
183
+ this.reverseMap.phone.set(token, phone);
184
+ breakdown.phones++;
185
+ return token;
186
+ });
187
+ // Tokenize emails
188
+ tokenized = tokenized.replace(this.patterns.email, (email) => {
189
+ const token = `[EMAIL_${this.reverseMap.email.size}]`;
190
+ this.reverseMap.email.set(token, email);
191
+ breakdown.emails++;
192
+ return token;
193
+ });
194
+ // Tokenize names (with length filter to reduce false positives)
195
+ tokenized = tokenized.replace(this.patterns.name, (match, first, last) => {
196
+ // Only tokenize if both parts are longer than 2 characters
197
+ // This reduces false positives from code like "New User" or "Post Request"
198
+ if (first.length > 2 && last.length > 2) {
199
+ const token = `[NAME_${this.reverseMap.name.size}]`;
200
+ this.reverseMap.name.set(token, match);
201
+ breakdown.names++;
202
+ return token;
203
+ }
204
+ return match;
205
+ });
206
+ const piiCount = breakdown.emails + breakdown.phones + breakdown.ssns +
207
+ breakdown.creditCards + breakdown.names;
208
+ return {
209
+ tokenized,
210
+ reverseMap: this.reverseMap,
211
+ piiCount,
212
+ piiBreakdown: breakdown,
213
+ };
214
+ }
215
+ /**
216
+ * Reverse tokenization to restore original PII
217
+ *
218
+ * **COMPLIANCE WARNING:**
219
+ * - Only use for final file output (user-controlled)
220
+ * - NEVER store detokenized content in logs or databases
221
+ * - Call clear() immediately after use to minimize data retention
222
+ *
223
+ * @param tokenized - Content with PII tokens
224
+ * @param reverseMap - Tokenization map from tokenize() call
225
+ * @returns Original content with PII restored
226
+ *
227
+ * @example
228
+ * ```typescript
229
+ * const tokenizer = new PIITokenizer();
230
+ * const { tokenized, reverseMap } = tokenizer.tokenize('Email: john@example.com');
231
+ *
232
+ * // Store tokenized version (GDPR compliant)
233
+ * await db.storeTest({ code: tokenized });
234
+ *
235
+ * // Restore for file output
236
+ * const finalCode = tokenizer.detokenize(tokenized, reverseMap);
237
+ * await fs.writeFile('test.ts', finalCode);
238
+ *
239
+ * // IMPORTANT: Clear reverse map
240
+ * tokenizer.clear();
241
+ * ```
242
+ */
243
+ detokenize(tokenized, reverseMap) {
244
+ let detokenized = tokenized;
245
+ // Restore all PII types
246
+ for (const [type, map] of Object.entries(reverseMap)) {
247
+ for (const [token, original] of map.entries()) {
248
+ // Use split/join instead of replaceAll for ES2020 compatibility
249
+ detokenized = detokenized.split(token).join(original);
250
+ }
251
+ }
252
+ return detokenized;
253
+ }
254
+ /**
255
+ * Get PII statistics for audit trail
256
+ *
257
+ * **COMPLIANCE USE:**
258
+ * - Generate audit logs showing PII detection
259
+ * - Monitor for unexpected PII in generated content
260
+ * - Track compliance metrics over time
261
+ *
262
+ * @returns Breakdown of detected PII by type
263
+ *
264
+ * @example
265
+ * ```typescript
266
+ * const tokenizer = new PIITokenizer();
267
+ * tokenizer.tokenize('Email: john@example.com, Phone: 555-123-4567');
268
+ *
269
+ * const stats = tokenizer.getStats();
270
+ * console.log(stats);
271
+ * // { emails: 1, phones: 1, ssns: 0, creditCards: 0, names: 0, total: 2 }
272
+ *
273
+ * // Log for audit trail
274
+ * logger.info('PII detected in generated content', stats);
275
+ * ```
276
+ */
277
+ getStats() {
278
+ return {
279
+ emails: this.reverseMap.email.size,
280
+ phones: this.reverseMap.phone.size,
281
+ ssns: this.reverseMap.ssn.size,
282
+ creditCards: this.reverseMap.creditCard.size,
283
+ names: this.reverseMap.name.size,
284
+ total: this.reverseMap.email.size +
285
+ this.reverseMap.phone.size +
286
+ this.reverseMap.ssn.size +
287
+ this.reverseMap.creditCard.size +
288
+ this.reverseMap.name.size,
289
+ };
290
+ }
291
+ /**
292
+ * Clear reverse map to minimize data retention
293
+ *
294
+ * **COMPLIANCE REQUIREMENT:**
295
+ * - GDPR Article 5(1)(e) - Storage limitation principle
296
+ * - CCPA Section 1798.105 - Right to deletion
297
+ *
298
+ * MUST be called after detokenization to prevent storing PII longer than necessary.
299
+ *
300
+ * @example
301
+ * ```typescript
302
+ * const tokenizer = new PIITokenizer();
303
+ * const { tokenized, reverseMap } = tokenizer.tokenize(content);
304
+ *
305
+ * // Use tokenized content
306
+ * await processWithLLM(tokenized);
307
+ *
308
+ * // Detokenize for output
309
+ * const finalCode = tokenizer.detokenize(tokenized, reverseMap);
310
+ * await fs.writeFile('output.ts', finalCode);
311
+ *
312
+ * // CRITICAL: Clear reverse map
313
+ * tokenizer.clear(); // GDPR compliance
314
+ * ```
315
+ */
316
+ clear() {
317
+ this.reverseMap.email.clear();
318
+ this.reverseMap.phone.clear();
319
+ this.reverseMap.ssn.clear();
320
+ this.reverseMap.creditCard.clear();
321
+ this.reverseMap.name.clear();
322
+ }
323
+ }
324
+ exports.PIITokenizer = PIITokenizer;
325
+ //# sourceMappingURL=pii-tokenization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pii-tokenization.js","sourceRoot":"","sources":["../../src/security/pii-tokenization.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/utils/Config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE;QACL,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;IACF,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,OAAO,CAAC;QACd,SAAS,EAAE;YACT,QAAQ,EAAE,MAAM,CAAC;YACjB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;KACH,CAAC;IACF,QAAQ,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE;YACV,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;CACH;AAED,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuB;IAC9C,OAAO,CAAC,MAAM,CAAc;IAE5B,OAAO;IAIP;;OAEG;WACiB,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IA8FnE;;OAEG;WACW,WAAW,IAAI,MAAM;IAOnC;;OAEG;IACI,SAAS,IAAI,WAAW;IAI/B;;OAEG;IACI,cAAc;YA7Jf,MAAM;cACJ,MAAM;mBACD,MAAM;2BACE,MAAM;qBACZ,MAAM;;IA6JrB;;OAEG;IACI,eAAe,IAAI,WAAW,EAAE;IAIvC;;OAEG;IACI,iBAAiB,IAAI,cAAc;IAI1C;;OAEG;IACI,gBAAgB;eAzKd,MAAM;gBACL,MAAM;iBACL,MAAM,EAAE;;IA2KnB;;OAEG;IACI,YAAY;cA3KX,MAAM;cACN,MAAM;cACN,OAAO;mBACF;YACT,QAAQ,EAAE,MAAM,CAAC;YACjB,GAAG,EAAE,MAAM,CAAC;SACb;;IAyKH;;OAEG;IACI,iBAAiB;iBAzKb,MAAM;oBACH,MAAM;oBACN;YACV,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;SACnB;;IAwKH;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAoC3B;;OAEG;WACiB,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvF;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;CAsC9B"}
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../src/utils/Config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE;QACL,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;IACF,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,OAAO,CAAC;QACd,SAAS,EAAE;YACT,QAAQ,EAAE,MAAM,CAAC;YACjB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;KACH,CAAC;IACF,QAAQ,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE;YACV,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;CACH;AAED,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAuB;IAC9C,OAAO,CAAC,MAAM,CAAc;IAE5B,OAAO;IAIP;;OAEG;WACiB,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAiGnE;;OAEG;WACW,WAAW,IAAI,MAAM;IAOnC;;OAEG;IACI,SAAS,IAAI,WAAW;IAI/B;;OAEG;IACI,cAAc;YAhKf,MAAM;cACJ,MAAM;mBACD,MAAM;2BACE,MAAM;qBACZ,MAAM;;IAgKrB;;OAEG;IACI,eAAe,IAAI,WAAW,EAAE;IAIvC;;OAEG;IACI,iBAAiB,IAAI,cAAc;IAI1C;;OAEG;IACI,gBAAgB;eA5Kd,MAAM;gBACL,MAAM;iBACL,MAAM,EAAE;;IA8KnB;;OAEG;IACI,YAAY;cA9KX,MAAM;cACN,MAAM;cACN,OAAO;mBACF;YACT,QAAQ,EAAE,MAAM,CAAC;YACjB,GAAG,EAAE,MAAM,CAAC;SACb;;IA4KH;;OAEG;IACI,iBAAiB;iBA5Kb,MAAM;oBACH,MAAM;oBACN;YACV,SAAS,EAAE,MAAM,CAAC;YAClB,SAAS,EAAE,MAAM,CAAC;SACnB;;IA2KH;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,YAAY;IAoC3B;;OAEG;WACiB,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvF;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;CAsC9B"}
@@ -120,9 +120,10 @@ class Config {
120
120
  const configFilePath = configPath ||
121
121
  process.env.CONFIG_FILE ||
122
122
  (0, path_1.join)(process.cwd(), 'config', 'fleet.yaml');
123
- if ((0, fs_1.existsSync)(configFilePath)) {
123
+ try {
124
+ await fs_1.promises.access(configFilePath);
124
125
  try {
125
- const configFileContent = (0, fs_1.readFileSync)(configFilePath, 'utf8');
126
+ const configFileContent = await fs_1.promises.readFile(configFilePath, 'utf8');
126
127
  if (configFilePath.endsWith('.yaml') || configFilePath.endsWith('.yml')) {
127
128
  fileConfig = yaml_1.default.parse(configFileContent);
128
129
  }
@@ -134,6 +135,9 @@ class Config {
134
135
  console.warn(`Failed to load config file ${configFilePath}:`, error);
135
136
  }
136
137
  }
138
+ catch {
139
+ // Config file doesn't exist, skip loading
140
+ }
137
141
  // Merge configurations (file config overrides defaults, env vars override both)
138
142
  const mergedConfig = Config.mergeConfigs(defaultConfig, fileConfig);
139
143
  // Validate configuration
@@ -228,9 +232,14 @@ class Config {
228
232
  * Save configuration to file
229
233
  */
230
234
  static async save(config, filePath) {
231
- const fs = await Promise.resolve().then(() => __importStar(require('fs-extra')));
232
- await fs.ensureDir((0, path_1.dirname)(filePath));
233
- await fs.writeJson(filePath, config, { spaces: 2 });
235
+ const fsp = (await Promise.resolve().then(() => __importStar(require('fs')))).promises;
236
+ try {
237
+ await fsp.access((0, path_1.dirname)(filePath));
238
+ }
239
+ catch {
240
+ await fsp.mkdir((0, path_1.dirname)(filePath), { recursive: true });
241
+ }
242
+ await fsp.writeFile(filePath, JSON.stringify(config, null, 2), 'utf-8');
234
243
  }
235
244
  /**
236
245
  * Validate configuration
@@ -1 +1 @@
1
- {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../src/utils/Config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Config.js","sourceRoot":"","sources":["../../src/utils/Config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Database.d.ts","sourceRoot":"","sources":["../../src/utils/Database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Database.d.ts","sourceRoot":"","sources":["../../src/utils/Database.ts"],"names":[],"mappings":"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"}