memento-mcp-server 1.16.2-a → 1.16.3-a

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 (166) hide show
  1. package/dist/domains/anchor/services/anchor/n-hop-search-service.d.ts.map +1 -1
  2. package/dist/domains/anchor/services/anchor/n-hop-search-service.js +4 -5
  3. package/dist/domains/anchor/services/anchor/n-hop-search-service.js.map +1 -1
  4. package/dist/domains/embedding/services/embedding-service.d.ts.map +1 -1
  5. package/dist/domains/embedding/services/embedding-service.js +5 -2
  6. package/dist/domains/embedding/services/embedding-service.js.map +1 -1
  7. package/dist/domains/embedding/services/gemini-embedding-service.d.ts.map +1 -1
  8. package/dist/domains/embedding/services/gemini-embedding-service.js +6 -3
  9. package/dist/domains/embedding/services/gemini-embedding-service.js.map +1 -1
  10. package/dist/domains/embedding/services/lightweight-embedding-service.d.ts.map +1 -1
  11. package/dist/domains/embedding/services/lightweight-embedding-service.js +4 -2
  12. package/dist/domains/embedding/services/lightweight-embedding-service.js.map +1 -1
  13. package/dist/domains/embedding/services/minilm-embedding-service.d.ts.map +1 -1
  14. package/dist/domains/embedding/services/minilm-embedding-service.js +6 -3
  15. package/dist/domains/embedding/services/minilm-embedding-service.js.map +1 -1
  16. package/dist/domains/embedding/services/openai-embedding-service.d.ts.map +1 -1
  17. package/dist/domains/embedding/services/openai-embedding-service.js +5 -2
  18. package/dist/domains/embedding/services/openai-embedding-service.js.map +1 -1
  19. package/dist/domains/embedding/services/unified-embedding-service.d.ts.map +1 -1
  20. package/dist/domains/embedding/services/unified-embedding-service.js +6 -3
  21. package/dist/domains/embedding/services/unified-embedding-service.js.map +1 -1
  22. package/dist/domains/forgetting/services/forgetting-policy-service.d.ts.map +1 -1
  23. package/dist/domains/forgetting/services/forgetting-policy-service.js +3 -1
  24. package/dist/domains/forgetting/services/forgetting-policy-service.js.map +1 -1
  25. package/dist/domains/memory/services/memory-embedding-service.d.ts +1 -0
  26. package/dist/domains/memory/services/memory-embedding-service.d.ts.map +1 -1
  27. package/dist/domains/memory/services/memory-embedding-service.js +43 -39
  28. package/dist/domains/memory/services/memory-embedding-service.js.map +1 -1
  29. package/dist/domains/memory/services/memory-neighbor-service.d.ts.map +1 -1
  30. package/dist/domains/memory/services/memory-neighbor-service.js +13 -4
  31. package/dist/domains/memory/services/memory-neighbor-service.js.map +1 -1
  32. package/dist/domains/memory/tools/convert-episodic-to-semantic-tool.js +5 -6
  33. package/dist/domains/memory/tools/convert-episodic-to-semantic-tool.js.map +1 -1
  34. package/dist/domains/memory/tools/forget-tool.d.ts.map +1 -1
  35. package/dist/domains/memory/tools/forget-tool.js +5 -2
  36. package/dist/domains/memory/tools/forget-tool.js.map +1 -1
  37. package/dist/domains/memory/tools/memory-injection-prompt.d.ts.map +1 -1
  38. package/dist/domains/memory/tools/memory-injection-prompt.js +3 -1
  39. package/dist/domains/memory/tools/memory-injection-prompt.js.map +1 -1
  40. package/dist/domains/memory/tools/pin-tool.d.ts.map +1 -1
  41. package/dist/domains/memory/tools/pin-tool.js +5 -2
  42. package/dist/domains/memory/tools/pin-tool.js.map +1 -1
  43. package/dist/domains/memory/tools/unpin-tool.d.ts.map +1 -1
  44. package/dist/domains/memory/tools/unpin-tool.js +5 -2
  45. package/dist/domains/memory/tools/unpin-tool.js.map +1 -1
  46. package/dist/domains/monitoring/services/error-logging-service.d.ts +5 -0
  47. package/dist/domains/monitoring/services/error-logging-service.d.ts.map +1 -1
  48. package/dist/domains/monitoring/services/error-logging-service.js +28 -10
  49. package/dist/domains/monitoring/services/error-logging-service.js.map +1 -1
  50. package/dist/domains/monitoring/services/performance-alert-service.d.ts.map +1 -1
  51. package/dist/domains/monitoring/services/performance-alert-service.js +5 -2
  52. package/dist/domains/monitoring/services/performance-alert-service.js.map +1 -1
  53. package/dist/domains/relation/services/relation-graph.d.ts.map +1 -1
  54. package/dist/domains/relation/services/relation-graph.js +3 -4
  55. package/dist/domains/relation/services/relation-graph.js.map +1 -1
  56. package/dist/domains/search/algorithms/hybrid-search-engine.d.ts.map +1 -1
  57. package/dist/domains/search/algorithms/hybrid-search-engine.js +15 -10
  58. package/dist/domains/search/algorithms/hybrid-search-engine.js.map +1 -1
  59. package/dist/domains/search/algorithms/search-engine.d.ts.map +1 -1
  60. package/dist/domains/search/algorithms/search-engine.js +8 -4
  61. package/dist/domains/search/algorithms/search-engine.js.map +1 -1
  62. package/dist/domains/search/algorithms/vector-search-engine-migration.d.ts.map +1 -1
  63. package/dist/domains/search/algorithms/vector-search-engine-migration.js +9 -4
  64. package/dist/domains/search/algorithms/vector-search-engine-migration.js.map +1 -1
  65. package/dist/domains/search/algorithms/vector-search-engine.d.ts +1 -0
  66. package/dist/domains/search/algorithms/vector-search-engine.d.ts.map +1 -1
  67. package/dist/domains/search/algorithms/vector-search-engine.js +25 -22
  68. package/dist/domains/search/algorithms/vector-search-engine.js.map +1 -1
  69. package/dist/domains/search/repositories/vector-performance.repository.d.ts.map +1 -1
  70. package/dist/domains/search/repositories/vector-performance.repository.js +3 -1
  71. package/dist/domains/search/repositories/vector-performance.repository.js.map +1 -1
  72. package/dist/domains/search/repositories/vector-search.repository.d.ts +1 -0
  73. package/dist/domains/search/repositories/vector-search.repository.d.ts.map +1 -1
  74. package/dist/domains/search/repositories/vector-search.repository.js +154 -149
  75. package/dist/domains/search/repositories/vector-search.repository.js.map +1 -1
  76. package/dist/domains/search/services/vector-search/vector-index-manager.d.ts.map +1 -1
  77. package/dist/domains/search/services/vector-search/vector-index-manager.js +7 -3
  78. package/dist/domains/search/services/vector-search/vector-index-manager.js.map +1 -1
  79. package/dist/domains/search/services/vector-search/vector-performance-tester.d.ts.map +1 -1
  80. package/dist/domains/search/services/vector-search/vector-performance-tester.js +3 -1
  81. package/dist/domains/search/services/vector-search/vector-performance-tester.js.map +1 -1
  82. package/dist/infrastructure/database/database/init.d.ts.map +1 -1
  83. package/dist/infrastructure/database/database/init.js +29 -7
  84. package/dist/infrastructure/database/database/init.js.map +1 -1
  85. package/dist/infrastructure/database/database/migrate.d.ts.map +1 -1
  86. package/dist/infrastructure/database/database/migrate.js +5 -2
  87. package/dist/infrastructure/database/database/migrate.js.map +1 -1
  88. package/dist/infrastructure/database/database/migration/backup-manager.d.ts.map +1 -1
  89. package/dist/infrastructure/database/database/migration/backup-manager.js +11 -5
  90. package/dist/infrastructure/database/database/migration/backup-manager.js.map +1 -1
  91. package/dist/infrastructure/database/database/migration/migration-detector.d.ts.map +1 -1
  92. package/dist/infrastructure/database/database/migration/migration-detector.js +3 -1
  93. package/dist/infrastructure/database/database/migration/migration-detector.js.map +1 -1
  94. package/dist/infrastructure/database/database/migration/migration-logger.d.ts.map +1 -1
  95. package/dist/infrastructure/database/database/migration/migration-logger.js +5 -2
  96. package/dist/infrastructure/database/database/migration/migration-logger.js.map +1 -1
  97. package/dist/infrastructure/database/database/migration/migration-runner.d.ts.map +1 -1
  98. package/dist/infrastructure/database/database/migration/migration-runner.js +24 -13
  99. package/dist/infrastructure/database/database/migration/migration-runner.js.map +1 -1
  100. package/dist/infrastructure/database/database/migration/schema-version-manager.d.ts.map +1 -1
  101. package/dist/infrastructure/database/database/migration/schema-version-manager.js +7 -3
  102. package/dist/infrastructure/database/database/migration/schema-version-manager.js.map +1 -1
  103. package/dist/infrastructure/database/database-optimizer.d.ts.map +1 -1
  104. package/dist/infrastructure/database/database-optimizer.js +7 -6
  105. package/dist/infrastructure/database/database-optimizer.js.map +1 -1
  106. package/dist/infrastructure/database/migration-history-service.d.ts.map +1 -1
  107. package/dist/infrastructure/database/migration-history-service.js +3 -1
  108. package/dist/infrastructure/database/migration-history-service.js.map +1 -1
  109. package/dist/infrastructure/logging/triple-extraction-logger.d.ts +6 -0
  110. package/dist/infrastructure/logging/triple-extraction-logger.d.ts.map +1 -1
  111. package/dist/infrastructure/logging/triple-extraction-logger.js +50 -12
  112. package/dist/infrastructure/logging/triple-extraction-logger.js.map +1 -1
  113. package/dist/infrastructure/scheduler/batch-scheduler.d.ts.map +1 -1
  114. package/dist/infrastructure/scheduler/batch-scheduler.js +5 -2
  115. package/dist/infrastructure/scheduler/batch-scheduler.js.map +1 -1
  116. package/dist/infrastructure/scheduler/file-logger.d.ts +4 -1
  117. package/dist/infrastructure/scheduler/file-logger.d.ts.map +1 -1
  118. package/dist/infrastructure/scheduler/file-logger.js +46 -16
  119. package/dist/infrastructure/scheduler/file-logger.js.map +1 -1
  120. package/dist/scripts/check-migration-status.d.ts.map +1 -1
  121. package/dist/scripts/check-migration-status.js +19 -6
  122. package/dist/scripts/check-migration-status.js.map +1 -1
  123. package/dist/services/quality-assurance/quality-recorder.js +2 -2
  124. package/dist/services/quality-assurance/quality-recorder.js.map +1 -1
  125. package/dist/services/quality-assurance/quality-threshold-manager.js +1 -1
  126. package/dist/services/quality-assurance/quality-threshold-manager.js.map +1 -1
  127. package/dist/shared/config/environment.d.ts.map +1 -1
  128. package/dist/shared/config/environment.js +3 -1
  129. package/dist/shared/config/environment.js.map +1 -1
  130. package/dist/shared/utils/fts5-migration-status.d.ts.map +1 -1
  131. package/dist/shared/utils/fts5-migration-status.js +6 -2
  132. package/dist/shared/utils/fts5-migration-status.js.map +1 -1
  133. package/dist/shared/utils/logger.d.ts.map +1 -1
  134. package/dist/shared/utils/logger.js +15 -2
  135. package/dist/shared/utils/logger.js.map +1 -1
  136. package/dist/shared/utils/path-validator.d.ts +27 -0
  137. package/dist/shared/utils/path-validator.d.ts.map +1 -0
  138. package/dist/shared/utils/path-validator.js +166 -0
  139. package/dist/shared/utils/path-validator.js.map +1 -0
  140. package/dist/shared/utils/pii-masker.d.ts +31 -0
  141. package/dist/shared/utils/pii-masker.d.ts.map +1 -1
  142. package/dist/shared/utils/pii-masker.js +99 -0
  143. package/dist/shared/utils/pii-masker.js.map +1 -1
  144. package/dist/shared/utils/procedural-memory-extractor.d.ts.map +1 -1
  145. package/dist/shared/utils/procedural-memory-extractor.js +39 -33
  146. package/dist/shared/utils/procedural-memory-extractor.js.map +1 -1
  147. package/dist/shared/utils/prompt-template-loader.d.ts +6 -0
  148. package/dist/shared/utils/prompt-template-loader.d.ts.map +1 -1
  149. package/dist/shared/utils/prompt-template-loader.js +20 -8
  150. package/dist/shared/utils/prompt-template-loader.js.map +1 -1
  151. package/dist/shared/utils/reflection-notes-merge.d.ts.map +1 -1
  152. package/dist/shared/utils/reflection-notes-merge.js +5 -4
  153. package/dist/shared/utils/reflection-notes-merge.js.map +1 -1
  154. package/dist/shared/utils/sql-security-validator.d.ts +25 -0
  155. package/dist/shared/utils/sql-security-validator.d.ts.map +1 -0
  156. package/dist/shared/utils/sql-security-validator.js +67 -0
  157. package/dist/shared/utils/sql-security-validator.js.map +1 -0
  158. package/dist/shared/utils/write-coalescing.d.ts.map +1 -1
  159. package/dist/shared/utils/write-coalescing.js +7 -3
  160. package/dist/shared/utils/write-coalescing.js.map +1 -1
  161. package/package.json +2 -1
  162. package/scripts/backup-daily.bat +10 -2
  163. package/scripts/backup-embeddings.js +22 -2
  164. package/scripts/check-path-traversal.ts +370 -0
  165. package/scripts/check-pii-masking.ts +360 -0
  166. package/scripts/check-sql-injection.ts +610 -0
@@ -11,6 +11,7 @@ import { SearchRanking } from './search-ranking.js';
11
11
  import { mementoConfig } from '../../../shared/config/index.js';
12
12
  import { RelationGraph } from '../../relation/services/relation-graph.js';
13
13
  import { getRankingWeights } from '../../../shared/config/ranking-weights-loader.js';
14
+ import { PIIMasker } from '../../../shared/utils/pii-masker.js';
14
15
  // 검색 관련 상수
15
16
  /**
16
17
  * 개별 provider의 검색 작업이 지연되어 전체 검색 성능에 영향을 주지 않도록 제한합니다.
@@ -796,7 +797,8 @@ export class HybridSearchEngine {
796
797
  }
797
798
  }
798
799
  catch (error) {
799
- console.warn('⚠️ 저장된 임베딩 provider 감지 실패:', error);
800
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
801
+ console.warn('⚠️ 저장된 임베딩 provider 감지 실패:', maskedError.message);
800
802
  }
801
803
  // provider가 없는 경우 빈 배열을 반환하여 안정적인 동작을 보장합니다.
802
804
  const emptyStats = [];
@@ -936,6 +938,7 @@ export class HybridSearchEngine {
936
938
  return scores;
937
939
  }
938
940
  try {
941
+ // SQL Injection 방지: placeholders는 이미 ? 플레이스홀더로 구성되어 있어 안전함
939
942
  const placeholders = memoryIds.map(() => '?').join(',');
940
943
  const sql = `SELECT id, consolidation_score FROM memory_item WHERE id IN (${placeholders})`;
941
944
  const results = db.prepare(sql).all(...memoryIds);
@@ -947,7 +950,8 @@ export class HybridSearchEngine {
947
950
  }
948
951
  catch (error) {
949
952
  // 에러 발생 시 빈 Map 반환 (기존 finalScore 유지)
950
- console.warn('⚠️ Consolidation Score 조회 실패:', error);
953
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
954
+ console.warn('⚠️ Consolidation Score 조회 실패:', maskedError.message);
951
955
  }
952
956
  return scores;
953
957
  }
@@ -968,13 +972,12 @@ export class HybridSearchEngine {
968
972
  return matches;
969
973
  }
970
974
  try {
975
+ // SQL Injection 방지: placeholders는 이미 ? 플레이스홀더로 구성되어 있어 안전함
971
976
  const placeholders = memoryIds.map(() => '?').join(',');
972
- const sql = `
973
- SELECT id, workflow_name, skill_name, trigger_conditions
974
- FROM memory_item
975
- WHERE id IN (${placeholders})
976
- AND (workflow_name IS NOT NULL OR skill_name IS NOT NULL OR trigger_conditions IS NOT NULL)
977
- `;
977
+ const sql = `SELECT id, workflow_name, skill_name, trigger_conditions ` +
978
+ `FROM memory_item ` +
979
+ `WHERE id IN (${placeholders}) ` +
980
+ `AND (workflow_name IS NOT NULL OR skill_name IS NOT NULL OR trigger_conditions IS NOT NULL)`;
978
981
  const results = db.prepare(sql).all(...memoryIds);
979
982
  // 쿼리와 필터 정보 추출
980
983
  const queryText = query?.query?.toLowerCase() || '';
@@ -1089,7 +1092,8 @@ export class HybridSearchEngine {
1089
1092
  }
1090
1093
  catch (error) {
1091
1094
  // 에러 발생 시 빈 Map 반환 (procedural memory boost 없음)
1092
- console.warn('⚠️ Procedural Memory 매칭 정보 조회 실패:', error);
1095
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
1096
+ console.warn('⚠️ Procedural Memory 매칭 정보 조회 실패:', maskedError.message);
1093
1097
  }
1094
1098
  return matches;
1095
1099
  }
@@ -1132,7 +1136,8 @@ export class HybridSearchEngine {
1132
1136
  }
1133
1137
  catch (error) {
1134
1138
  // 에러 발생 시 빈 Map 반환 (관계 가중치 없이 진행)
1135
- console.warn('⚠️ 관계 가중치 계산 실패:', error);
1139
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
1140
+ console.warn('⚠️ 관계 가중치 계산 실패:', maskedError.message);
1136
1141
  }
1137
1142
  return { weights, relations };
1138
1143
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hybrid-search-engine.js","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hybrid-search-engine.js","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-engine.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"search-engine.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/search-engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAO9F,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAGD,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAgB;;IAM/B;;;OAGG;IACG,MAAM,CACV,EAAE,EAAE,GAAG,EACP,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC;QAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IA4LpF;;;OAGG;IACH,OAAO,CAAC,aAAa;IAyBrB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAoBvB;;OAEG;IACH,OAAO,CAAC,WAAW;IAUnB;;OAEG;YACW,YAAY;IAK1B;;;OAGG;IACH,OAAO,CAAC,YAAY;IAuGpB;;;OAGG;YACW,qBAAqB;IAqCnC;;;;;;OAMG;IACH,OAAO,CAAC,gCAAgC;IAuCxC;;;;;;;OAOG;IACH,OAAO,CAAC,mCAAmC;IAmB3C;;;OAGG;IACH,OAAO,CAAC,oBAAoB;CA2B7B"}
1
+ {"version":3,"file":"search-engine.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/search-engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAO9F,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAGD,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAgB;;IAM/B;;;OAGG;IACG,MAAM,CACV,EAAE,EAAE,GAAG,EACP,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC;QAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAgMpF;;;OAGG;IACH,OAAO,CAAC,aAAa;IAyBrB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAoBvB;;OAEG;IACH,OAAO,CAAC,WAAW;IAUnB;;OAEG;YACW,YAAY;IAK1B;;;OAGG;IACH,OAAO,CAAC,YAAY;IAuGpB;;;OAGG;YACW,qBAAqB;IAqCnC;;;;;;OAMG;IACH,OAAO,CAAC,gCAAgC;IAuCxC;;;;;;;OAOG;IACH,OAAO,CAAC,mCAAmC;IAmB3C;;;OAGG;IACH,OAAO,CAAC,oBAAoB;CA2B7B"}
@@ -68,6 +68,8 @@ export class SearchEngine {
68
68
  const reflectionNotesCondition = this.buildReflectionNotesSearchCondition(db, searchQuery);
69
69
  const reflectionNotesLike = reflectionNotesCondition ? ` OR ${reflectionNotesCondition}` : '';
70
70
  const reflectionNotesParams = reflectionNotesCondition ? [likeQuery] : [];
71
+ // SQL Injection 방지를 위해 템플릿 리터럴 대신 문자열 연결 사용
72
+ // reflectionNotesLike는 이미 ? 플레이스홀더를 포함하고 있어 안전함
71
73
  sql = `
72
74
  SELECT
73
75
  m.id, m.content, m.type, m.importance, m.created_at,
@@ -78,8 +80,7 @@ export class SearchEngine {
78
80
  m.privacy_scope, m.origin_source,
79
81
  0 as fts_rank
80
82
  FROM memory_item m
81
- WHERE m.content LIKE ? OR m.tags LIKE ? OR m.source LIKE ?${reflectionNotesLike}
82
- `;
83
+ WHERE m.content LIKE ? OR m.tags LIKE ? OR m.source LIKE ?` + reflectionNotesLike;
83
84
  params.push(likeQuery, likeQuery, likeQuery, ...reflectionNotesParams);
84
85
  }
85
86
  }
@@ -103,6 +104,7 @@ export class SearchEngine {
103
104
  const reflectionNotesCondition = this.buildReflectionNotesSearchCondition(db, searchQuery);
104
105
  const reflectionNotesLike = reflectionNotesCondition ? ` OR ${reflectionNotesCondition}` : '';
105
106
  const reflectionNotesParams = reflectionNotesCondition ? [likeQuery] : [];
107
+ // SQL Injection 방지: reflectionNotesLike는 이미 ? 플레이스홀더를 포함하고 있어 안전함
106
108
  sql += ` WHERE m.content LIKE ?${reflectionNotesLike}`;
107
109
  params.push(likeQuery, ...reflectionNotesParams);
108
110
  }
@@ -151,12 +153,14 @@ export class SearchEngine {
151
153
  params.push(filters.skill_name);
152
154
  }
153
155
  // WHERE 절 추가
156
+ // SQL Injection 방지: conditions는 이미 파라미터 바인딩(?)을 포함하고 있어 안전함
154
157
  if (conditions.length > 0) {
155
158
  const whereClause = sql.includes('WHERE') ? ' AND ' : ' WHERE ';
156
- sql += whereClause + conditions.join(' AND ');
159
+ sql += `${whereClause}${conditions.join(' AND ')}`;
157
160
  }
158
161
  // FTS5 랭킹을 고려하여 충분한 후보를 확보한 후 재랭킹하여 최종 결과의 품질을 보장합니다.
159
- sql += ` ORDER BY fts_rank DESC, m.created_at DESC LIMIT ?`;
162
+ // SQL Injection 방지: LIMIT 값은 파라미터 바인딩으로 전달됨
163
+ sql += ' ORDER BY fts_rank DESC, m.created_at DESC LIMIT ?';
160
164
  params.push(limit * 3); // FTS5 랭킹과 재랭킹 과정에서 일부 결과가 제외될 수 있으므로 충분한 후보를 확보합니다.
161
165
  // 구성된 쿼리를 실행하여 실제 검색 결과를 획득합니다.
162
166
  // 디버그 레벨로 로깅하여 기본적으로 비활성화 (LOG_LEVEL=debug일 때만 출력)
@@ -1 +1 @@
1
- {"version":3,"file":"search-engine.js","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/search-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-engine.js","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/search-engine.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"vector-search-engine-migration.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/vector-search-engine-migration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE;;;GAGG;AACH,qBAAa,2BAA2B;IACtC;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,kBAAkB,GAAG,4BAA4B;IAa3E;;;OAGG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,kBAAkB,GAAG,4BAA4B;CA2ClF;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,UAc/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;CA2D3B,CAAC;AAEF;;GAEG;AACH,qBAAa,kBAAkB;IAC7B;;OAEG;WACU,qBAAqB,CAChC,SAAS,EAAE,kBAAkB,EAC7B,SAAS,EAAE,4BAA4B,GACtC,OAAO,CAAC,OAAO,CAAC;IAgCnB;;OAEG;WACU,kBAAkB,CAC7B,SAAS,EAAE,kBAAkB,EAC7B,SAAS,EAAE,4BAA4B,EACvC,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC;QACT,cAAc,EAAE,GAAG,CAAC;QACpB,cAAc,EAAE,GAAG,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CAoBH"}
1
+ {"version":3,"file":"vector-search-engine-migration.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/vector-search-engine-migration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAGjE;;;GAGG;AACH,qBAAa,2BAA2B;IACtC;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,kBAAkB,GAAG,4BAA4B;IAa3E;;;OAGG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,kBAAkB,GAAG,4BAA4B;CA2ClF;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,UAc/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;CA6D3B,CAAC;AAEF;;GAEG;AACH,qBAAa,kBAAkB;IAC7B;;OAEG;WACU,qBAAqB,CAChC,SAAS,EAAE,kBAAkB,EAC7B,SAAS,EAAE,4BAA4B,GACtC,OAAO,CAAC,OAAO,CAAC;IAiCnB;;OAEG;WACU,kBAAkB,CAC7B,SAAS,EAAE,kBAAkB,EAC7B,SAAS,EAAE,4BAA4B,EACvC,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC;QACT,cAAc,EAAE,GAAG,CAAC;QACpB,cAAc,EAAE,GAAG,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CAqBH"}
@@ -3,6 +3,7 @@
3
3
  * 마이그레이션 가이드와 헬퍼를 제공하여 안전한 전환을 보장합니다.
4
4
  */
5
5
  import { VectorSearchEngineRefactored } from './vector-search-engine-refactored';
6
+ import { PIIMasker } from '../../../shared/utils/pii-masker.js';
6
7
  /**
7
8
  * 기존 VectorSearchEngine에서 새로운 VectorSearchEngineRefactored로 안전하게 전환합니다.
8
9
  * 마이그레이션 헬퍼를 제공하여 데이터 손실 없이 점진적 전환을 지원합니다.
@@ -126,14 +127,16 @@ const results = await engine.search(queryVector, options, provider);
126
127
  try {
127
128
  const results = await engine.search(queryVector);
128
129
  } catch (error) {
129
- console.error('검색 실패:', error);
130
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
131
+ console.error('검색 실패:', maskedError.message);
130
132
  }
131
133
 
132
134
  // 새로운 (동일한 에러 처리)
133
135
  try {
134
136
  const results = await engine.search(queryVector);
135
137
  } catch (error) {
136
- console.error('검색 실패:', error);
138
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
139
+ console.error('검색 실패:', maskedError.message);
137
140
  }
138
141
  `
139
142
  }
@@ -169,7 +172,8 @@ export class MigrationValidator {
169
172
  return true;
170
173
  }
171
174
  catch (error) {
172
- console.error('❌ 호환성 검증 실패:', error);
175
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
176
+ console.error('❌ 호환성 검증 실패:', maskedError.message);
173
177
  return false;
174
178
  }
175
179
  }
@@ -190,7 +194,8 @@ export class MigrationValidator {
190
194
  };
191
195
  }
192
196
  catch (error) {
193
- console.error('❌ 성능 비교 실패:', error);
197
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
198
+ console.error('❌ 성능 비교 실패:', maskedError.message);
194
199
  throw error;
195
200
  }
196
201
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vector-search-engine-migration.js","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/vector-search-engine-migration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vector-search-engine-migration.js","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/vector-search-engine-migration.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,7 @@ export declare class VectorSearchEngine {
41
41
  /**
42
42
  * 각 임베딩 provider별로 다른 벡터 테이블을 사용하여 차원 불일치를 방지합니다.
43
43
  * provider에 따라 적절한 테이블명을 반환하여 정확한 검색을 보장합니다.
44
+ * SQL Injection 방지를 위해 화이트리스트 기반 검증을 수행합니다.
44
45
  */
45
46
  private getVectorTableName;
46
47
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"vector-search-engine.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/vector-search-engine.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,EAAE,CAAkC;IAC5C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAO;IACzC,OAAO,CAAC,kBAAkB,CAKxB;IACF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAO;IACxC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAM;;IAMnC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI;IAMvC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAoE5B;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAiCjC;;OAEG;YACW,yBAAyB;IAqBvC;;;OAGG;IACG,MAAM,CACV,WAAW,EAAE,MAAM,EAAE,EACrB,OAAO,GAAE,mBAAwB,EACjC,QAAQ,GAAE,MAAgB,GACzB,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAqIhC;;;OAGG;IACG,YAAY,CAChB,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,mBAAwB,EACjC,QAAQ,GAAE,MAAgB,GACzB,OAAO,CAAC,kBAAkB,EAAE,CAAC;IA+IhC;;;OAGG;IACH,cAAc,IAAI,iBAAiB;IAgDnC;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAkBtC;;;OAGG;IACG,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,UAAU,GAAE,MAAW,GAAG,OAAO,CAAC;QAC7E,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IAwCF;;OAEG;IACH,aAAa,CAAC,QAAQ,GAAE,MAAgB,GAAG,MAAM;IAIjD;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,qBAAqB;CAG9B;AAKD,wBAAgB,qBAAqB,IAAI,kBAAkB,CAK1D;AAED,wBAAgB,wBAAwB,IAAI,kBAAkB,CAE7D;AAED,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C"}
1
+ {"version":3,"file":"vector-search-engine.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/vector-search-engine.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAKtC,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,EAAE,CAAkC;IAC5C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAO;IACzC,OAAO,CAAC,kBAAkB,CAKxB;IACF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAO;IACxC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAM;;IAMnC;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI;IAMvC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAsE5B;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAkCjC;;OAEG;YACW,yBAAyB;IAsBvC;;;OAGG;IACG,MAAM,CACV,WAAW,EAAE,MAAM,EAAE,EACrB,OAAO,GAAE,mBAAwB,EACjC,QAAQ,GAAE,MAAgB,GACzB,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAsIhC;;;OAGG;IACG,YAAY,CAChB,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,mBAAwB,EACjC,QAAQ,GAAE,MAAgB,GACzB,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAgJhC;;;OAGG;IACH,cAAc,IAAI,iBAAiB;IAiDnC;;;OAGG;IACG,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAmBtC;;;OAGG;IACG,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,UAAU,GAAE,MAAW,GAAG,OAAO,CAAC;QAC7E,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IAyCF;;OAEG;IACH,aAAa,CAAC,QAAQ,GAAE,MAAgB,GAAG,MAAM;IAIjD;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,qBAAqB;CAG9B;AAKD,wBAAgB,qBAAqB,IAAI,kBAAkB,CAK1D;AAED,wBAAgB,wBAAwB,IAAI,kBAAkB,CAE7D;AAED,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C"}
@@ -4,6 +4,9 @@
4
4
  * Memento MCP Server의 핵심 벡터 검색 컴포넌트로서 의미 기반 검색 기능을 제공합니다.
5
5
  */
6
6
  import Database from 'better-sqlite3';
7
+ import { VECTOR_SEARCH_CONFIG } from '../../../shared/config/vector-search.config.js';
8
+ import { validateTableName, getVectorTableName as getValidatedVectorTableName } from '../../../shared/utils/sql-security-validator.js';
9
+ import { PIIMasker } from '../../../shared/utils/pii-masker.js';
7
10
  export class VectorSearchEngine {
8
11
  db = null;
9
12
  isVecAvailable = false;
@@ -23,20 +26,10 @@ export class VectorSearchEngine {
23
26
  /**
24
27
  * 각 임베딩 provider별로 다른 벡터 테이블을 사용하여 차원 불일치를 방지합니다.
25
28
  * provider에 따라 적절한 테이블명을 반환하여 정확한 검색을 보장합니다.
29
+ * SQL Injection 방지를 위해 화이트리스트 기반 검증을 수행합니다.
26
30
  */
27
31
  getVectorTableName(provider) {
28
- switch (provider) {
29
- case 'tfidf':
30
- return 'memory_item_vec_tfidf';
31
- case 'minilm':
32
- return 'memory_item_vec_minilm';
33
- case 'openai':
34
- return 'memory_item_vec_openai';
35
- case 'gemini':
36
- return 'memory_item_vec_gemini';
37
- default:
38
- return 'memory_item_vec_tfidf'; // 알 수 없는 provider의 경우 기본 테이블을 사용하여 안정성을 보장합니다.
39
- }
32
+ return getValidatedVectorTableName(provider);
40
33
  }
41
34
  /**
42
35
  * 데이터베이스 연결을 설정하고 벡터 검색 기능의 사용 가능 여부를 확인합니다.
@@ -101,13 +94,15 @@ export class VectorSearchEngine {
101
94
  console.log('✅ VEC (Vector Search) 사용 가능');
102
95
  }
103
96
  catch (vecError) {
104
- console.warn('⚠️ VEC 함수를 사용할 없습니다:', vecError);
97
+ const maskedVecError = vecError instanceof Error ? PIIMasker.maskError(vecError) : { message: String(vecError), name: 'Error' };
98
+ console.warn('⚠️ VEC 함수를 사용할 수 없습니다:', maskedVecError.message);
105
99
  this.vecExtensionLoaded = false;
106
100
  this.isVecAvailable = false;
107
101
  }
108
102
  }
109
103
  catch (error) {
110
- console.error('❌ VEC 가용성 확인 실패:', error);
104
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
105
+ console.error('❌ VEC 가용성 확인 실패:', maskedError.message);
111
106
  this.isVecAvailable = false;
112
107
  this.vecExtensionLoaded = false;
113
108
  }
@@ -144,7 +139,8 @@ export class VectorSearchEngine {
144
139
  }
145
140
  }
146
141
  catch (error) {
147
- console.warn('⚠️ 임베딩 차원 정보를 불러오지 못했습니다:', error);
142
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
143
+ console.warn('⚠️ 임베딩 차원 정보를 불러오지 못했습니다:', maskedError.message);
148
144
  }
149
145
  }
150
146
  /**
@@ -165,7 +161,8 @@ export class VectorSearchEngine {
165
161
  return result?.dimensions ?? null;
166
162
  }
167
163
  catch (error) {
168
- console.warn(`⚠️ 저장된 임베딩 차원 조회 실패 (${provider}):`, error);
164
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
165
+ console.warn(`⚠️ 저장된 임베딩 차원 조회 실패 (${provider}):`, maskedError.message);
169
166
  return null;
170
167
  }
171
168
  }
@@ -285,7 +282,8 @@ export class VectorSearchEngine {
285
282
  return finalResults;
286
283
  }
287
284
  catch (error) {
288
- console.error('❌ 벡터 검색 실패:', error);
285
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
286
+ console.error('❌ 벡터 검색 실패:', maskedError.message);
289
287
  return [];
290
288
  }
291
289
  }
@@ -416,7 +414,8 @@ export class VectorSearchEngine {
416
414
  return normalizedResults;
417
415
  }
418
416
  catch (error) {
419
- console.error('❌ 하이브리드 검색 실패:', error);
417
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
418
+ console.error('❌ 하이브리드 검색 실패:', maskedError.message);
420
419
  return [];
421
420
  }
422
421
  }
@@ -460,7 +459,8 @@ export class VectorSearchEngine {
460
459
  };
461
460
  }
462
461
  catch (error) {
463
- console.error('❌ 인덱스 상태 확인 실패:', error);
462
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
463
+ console.error('❌ 인덱스 상태 확인 실패:', maskedError.message);
464
464
  return {
465
465
  available: false,
466
466
  tableExists: false,
@@ -486,7 +486,8 @@ export class VectorSearchEngine {
486
486
  return true;
487
487
  }
488
488
  catch (error) {
489
- console.error('❌ 벡터 인덱스 재구성 실패:', error);
489
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
490
+ console.error('❌ 벡터 인덱스 재구성 실패:', maskedError.message);
490
491
  return false;
491
492
  }
492
493
  }
@@ -512,7 +513,8 @@ export class VectorSearchEngine {
512
513
  successCount++;
513
514
  }
514
515
  catch (error) {
515
- console.warn(`⚠️ 성능 테스트 ${i + 1}회차 실패:`, error);
516
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
517
+ console.warn(`⚠️ 성능 테스트 ${i + 1}회차 실패:`, maskedError.message);
516
518
  times.push(0);
517
519
  }
518
520
  }
@@ -556,7 +558,8 @@ export class VectorSearchEngine {
556
558
  return Array.isArray(parsed) ? parsed : [];
557
559
  }
558
560
  catch (error) {
559
- console.warn('⚠️ 태그 JSON 파싱 실패, 배열로 대체합니다.', error);
561
+ const maskedError = error instanceof Error ? PIIMasker.maskError(error) : { message: String(error), name: 'Error' };
562
+ console.warn('⚠️ 태그 JSON 파싱 실패, 빈 배열로 대체합니다.', maskedError.message);
560
563
  return [];
561
564
  }
562
565
  }