memento-mcp-server 1.13.1-a4 → 1.14.0-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 (108) hide show
  1. package/dist/database/migration/migrations/007-procedural-memory-enhancement.sql +66 -0
  2. package/dist/database/schema.sql +9 -2
  3. package/dist/domains/memory/tools/recall-tool.d.ts +13 -0
  4. package/dist/domains/memory/tools/recall-tool.d.ts.map +1 -1
  5. package/dist/domains/memory/tools/recall-tool.js +160 -12
  6. package/dist/domains/memory/tools/recall-tool.js.map +1 -1
  7. package/dist/domains/memory/tools/remember-tool.d.ts +10 -0
  8. package/dist/domains/memory/tools/remember-tool.d.ts.map +1 -1
  9. package/dist/domains/memory/tools/remember-tool.js +264 -35
  10. package/dist/domains/memory/tools/remember-tool.js.map +1 -1
  11. package/dist/domains/relation/services/relation-quality-validator.d.ts.map +1 -1
  12. package/dist/domains/relation/services/relation-quality-validator.js +15 -10
  13. package/dist/domains/relation/services/relation-quality-validator.js.map +1 -1
  14. package/dist/domains/relation/services/rule-based-relation-extractor.d.ts.map +1 -1
  15. package/dist/domains/relation/services/rule-based-relation-extractor.js +18 -0
  16. package/dist/domains/relation/services/rule-based-relation-extractor.js.map +1 -1
  17. package/dist/domains/relation/tools/add-relation-tool.d.ts +3 -3
  18. package/dist/domains/relation/tools/add-relation-tool.js +2 -2
  19. package/dist/domains/relation/tools/add-relation-tool.js.map +1 -1
  20. package/dist/domains/relation/tools/get-relations-tool.d.ts +3 -3
  21. package/dist/domains/relation/tools/get-relations-tool.js +2 -2
  22. package/dist/domains/relation/tools/get-relations-tool.js.map +1 -1
  23. package/dist/domains/search/algorithms/hybrid-search-engine.d.ts +20 -0
  24. package/dist/domains/search/algorithms/hybrid-search-engine.d.ts.map +1 -1
  25. package/dist/domains/search/algorithms/hybrid-search-engine.js +168 -5
  26. package/dist/domains/search/algorithms/hybrid-search-engine.js.map +1 -1
  27. package/dist/domains/search/algorithms/search-engine.d.ts.map +1 -1
  28. package/dist/domains/search/algorithms/search-engine.js +37 -17
  29. package/dist/domains/search/algorithms/search-engine.js.map +1 -1
  30. package/dist/domains/search/algorithms/search-ranking.d.ts +15 -2
  31. package/dist/domains/search/algorithms/search-ranking.d.ts.map +1 -1
  32. package/dist/domains/search/algorithms/search-ranking.js +46 -15
  33. package/dist/domains/search/algorithms/search-ranking.js.map +1 -1
  34. package/dist/domains/search/repositories/vector-search.repository.d.ts.map +1 -1
  35. package/dist/domains/search/repositories/vector-search.repository.js +180 -89
  36. package/dist/domains/search/repositories/vector-search.repository.js.map +1 -1
  37. package/dist/infrastructure/database/database/migration/migrations/007-procedural-memory-enhancement.d.ts +63 -0
  38. package/dist/infrastructure/database/database/migration/migrations/007-procedural-memory-enhancement.d.ts.map +1 -0
  39. package/dist/infrastructure/database/database/migration/migrations/007-procedural-memory-enhancement.js +257 -0
  40. package/dist/infrastructure/database/database/migration/migrations/007-procedural-memory-enhancement.js.map +1 -0
  41. package/dist/infrastructure/reflexion-worker.d.ts +18 -0
  42. package/dist/infrastructure/reflexion-worker.d.ts.map +1 -1
  43. package/dist/infrastructure/reflexion-worker.js +216 -0
  44. package/dist/infrastructure/reflexion-worker.js.map +1 -1
  45. package/dist/infrastructure/scheduler/batch-scheduler.d.ts +51 -8
  46. package/dist/infrastructure/scheduler/batch-scheduler.d.ts.map +1 -1
  47. package/dist/infrastructure/scheduler/batch-scheduler.js +299 -205
  48. package/dist/infrastructure/scheduler/batch-scheduler.js.map +1 -1
  49. package/dist/infrastructure/scheduler/file-logger.d.ts +82 -0
  50. package/dist/infrastructure/scheduler/file-logger.d.ts.map +1 -0
  51. package/dist/infrastructure/scheduler/file-logger.js +133 -0
  52. package/dist/infrastructure/scheduler/file-logger.js.map +1 -0
  53. package/dist/infrastructure/scheduler/health-checker.d.ts +54 -0
  54. package/dist/infrastructure/scheduler/health-checker.d.ts.map +1 -0
  55. package/dist/infrastructure/scheduler/health-checker.js +96 -0
  56. package/dist/infrastructure/scheduler/health-checker.js.map +1 -0
  57. package/dist/infrastructure/scheduler/job-queue.d.ts +85 -0
  58. package/dist/infrastructure/scheduler/job-queue.d.ts.map +1 -0
  59. package/dist/infrastructure/scheduler/job-queue.js +125 -0
  60. package/dist/infrastructure/scheduler/job-queue.js.map +1 -0
  61. package/dist/infrastructure/scheduler/relation-validator-executor.d.ts +37 -0
  62. package/dist/infrastructure/scheduler/relation-validator-executor.d.ts.map +1 -0
  63. package/dist/infrastructure/scheduler/relation-validator-executor.js +120 -0
  64. package/dist/infrastructure/scheduler/relation-validator-executor.js.map +1 -0
  65. package/dist/infrastructure/scheduler/retry-manager.d.ts +62 -0
  66. package/dist/infrastructure/scheduler/retry-manager.d.ts.map +1 -0
  67. package/dist/infrastructure/scheduler/retry-manager.js +91 -0
  68. package/dist/infrastructure/scheduler/retry-manager.js.map +1 -0
  69. package/dist/npm-client/utils.d.ts.map +1 -1
  70. package/dist/npm-client/utils.js +2 -1
  71. package/dist/npm-client/utils.js.map +1 -1
  72. package/dist/server/http-server.d.ts.map +1 -1
  73. package/dist/server/http-server.js +15 -17
  74. package/dist/server/http-server.js.map +1 -1
  75. package/dist/services/anchor-manager.d.ts.map +1 -1
  76. package/dist/services/anchor-manager.js.map +1 -1
  77. package/dist/shared/types/index.d.ts +36 -0
  78. package/dist/shared/types/index.d.ts.map +1 -1
  79. package/dist/shared/types/index.js.map +1 -1
  80. package/dist/shared/types/relation.d.ts +1 -1
  81. package/dist/shared/types/relation.d.ts.map +1 -1
  82. package/dist/shared/types/relation.js +7 -4
  83. package/dist/shared/types/relation.js.map +1 -1
  84. package/dist/shared/utils/database.d.ts.map +1 -1
  85. package/dist/shared/utils/database.js +9 -2
  86. package/dist/shared/utils/database.js.map +1 -1
  87. package/dist/shared/utils/procedural-memory-extractor.d.ts +108 -0
  88. package/dist/shared/utils/procedural-memory-extractor.d.ts.map +1 -0
  89. package/dist/shared/utils/procedural-memory-extractor.js +581 -0
  90. package/dist/shared/utils/procedural-memory-extractor.js.map +1 -0
  91. package/dist/shared/utils/relation-type-converter.d.ts +52 -0
  92. package/dist/shared/utils/relation-type-converter.d.ts.map +1 -0
  93. package/dist/shared/utils/relation-type-converter.js +106 -0
  94. package/dist/shared/utils/relation-type-converter.js.map +1 -0
  95. package/dist/shared/utils/type-param-validator.d.ts +31 -0
  96. package/dist/shared/utils/type-param-validator.d.ts.map +1 -1
  97. package/dist/shared/utils/type-param-validator.js +90 -2
  98. package/dist/shared/utils/type-param-validator.js.map +1 -1
  99. package/dist/tools/base-tool.d.ts.map +1 -1
  100. package/dist/tools/types.d.ts +4 -0
  101. package/dist/tools/types.d.ts.map +1 -1
  102. package/dist/tools/types.js +5 -0
  103. package/dist/tools/types.js.map +1 -1
  104. package/dist/workers/consolidation-score-worker.d.ts.map +1 -1
  105. package/dist/workers/consolidation-score-worker.js +0 -2
  106. package/dist/workers/consolidation-score-worker.js.map +1 -1
  107. package/package.json +3 -3
  108. package/scripts/auto-setup.js +1 -1
@@ -115,6 +115,24 @@ const RELATION_KEYWORD_PATTERNS = {
115
115
  keywords: ['component of', 'element of', 'constituent of'],
116
116
  weight: 0.7
117
117
  }
118
+ ],
119
+ VERSION_OF: [
120
+ {
121
+ keywords: ['버전', '개정', '수정', '업데이트', '개선', '변경'],
122
+ weight: 0.8
123
+ },
124
+ {
125
+ keywords: ['version of', 'revision of', 'update of', 'improvement of', 'variant of', 'modified version'],
126
+ weight: 0.8
127
+ },
128
+ {
129
+ keywords: ['개선된', '수정된', '업데이트된', '변경된'],
130
+ weight: 0.7
131
+ },
132
+ {
133
+ keywords: ['updated', 'revised', 'improved', 'modified', 'enhanced'],
134
+ weight: 0.7
135
+ }
118
136
  ]
119
137
  };
120
138
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"rule-based-relation-extractor.js","sourceRoot":"","sources":["../../../../src/domains/relation/services/rule-based-relation-extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rule-based-relation-extractor.js","sourceRoot":"","sources":["../../../../src/domains/relation/services/rule-based-relation-extractor.ts"],"names":[],"mappings":"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"}
@@ -8,17 +8,17 @@ import type { ToolContext, ToolResult } from '../../../tools/types.js';
8
8
  declare const AddRelationSchema: z.ZodObject<{
9
9
  source_id: z.ZodString;
10
10
  target_id: z.ZodString;
11
- relation_type: z.ZodEnum<["CAUSES", "DEPENDS_ON", "FOLLOWS", "CONTRASTS_WITH", "REFERENCES", "BELONGS_TO"]>;
11
+ relation_type: z.ZodEnum<["CAUSES", "DEPENDS_ON", "FOLLOWS", "CONTRASTS_WITH", "REFERENCES", "BELONGS_TO", "VERSION_OF"]>;
12
12
  confidence: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
13
13
  }, "strip", z.ZodTypeAny, {
14
14
  source_id: string;
15
15
  target_id: string;
16
- relation_type: "CAUSES" | "DEPENDS_ON" | "FOLLOWS" | "CONTRASTS_WITH" | "REFERENCES" | "BELONGS_TO";
16
+ relation_type: "CAUSES" | "DEPENDS_ON" | "FOLLOWS" | "CONTRASTS_WITH" | "REFERENCES" | "BELONGS_TO" | "VERSION_OF";
17
17
  confidence: number;
18
18
  }, {
19
19
  source_id: string;
20
20
  target_id: string;
21
- relation_type: "CAUSES" | "DEPENDS_ON" | "FOLLOWS" | "CONTRASTS_WITH" | "REFERENCES" | "BELONGS_TO";
21
+ relation_type: "CAUSES" | "DEPENDS_ON" | "FOLLOWS" | "CONTRASTS_WITH" | "REFERENCES" | "BELONGS_TO" | "VERSION_OF";
22
22
  confidence?: number | undefined;
23
23
  }>;
24
24
  export declare class AddRelationTool extends BaseTool {
@@ -9,7 +9,7 @@ import { RelationGraph } from '../services/relation-graph.js';
9
9
  const AddRelationSchema = z.object({
10
10
  source_id: z.string().min(1, 'source_id는 필수입니다'),
11
11
  target_id: z.string().min(1, 'target_id는 필수입니다'),
12
- relation_type: z.enum(['CAUSES', 'DEPENDS_ON', 'FOLLOWS', 'CONTRASTS_WITH', 'REFERENCES', 'BELONGS_TO']),
12
+ relation_type: z.enum(['CAUSES', 'DEPENDS_ON', 'FOLLOWS', 'CONTRASTS_WITH', 'REFERENCES', 'BELONGS_TO', 'VERSION_OF']),
13
13
  confidence: z.number().min(0).max(1).optional().default(0.7).describe('신뢰도 (0.0~1.0, 기본값: 0.7)')
14
14
  });
15
15
  export class AddRelationTool extends BaseTool {
@@ -27,7 +27,7 @@ export class AddRelationTool extends BaseTool {
27
27
  },
28
28
  relation_type: {
29
29
  type: 'string',
30
- enum: ['CAUSES', 'DEPENDS_ON', 'FOLLOWS', 'CONTRASTS_WITH', 'REFERENCES', 'BELONGS_TO'],
30
+ enum: ['CAUSES', 'DEPENDS_ON', 'FOLLOWS', 'CONTRASTS_WITH', 'REFERENCES', 'BELONGS_TO', 'VERSION_OF'],
31
31
  description: '관계 유형'
32
32
  },
33
33
  confidence: {
@@ -1 +1 @@
1
- {"version":3,"file":"add-relation-tool.js","sourceRoot":"","sources":["../../../../src/domains/relation/tools/add-relation-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-relation-tool.js","sourceRoot":"","sources":["../../../../src/domains/relation/tools/add-relation-tool.ts"],"names":[],"mappings":"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"}
@@ -7,17 +7,17 @@ import { BaseTool } from '../../../tools/base-tool.js';
7
7
  import type { ToolContext, ToolResult } from '../../../tools/types.js';
8
8
  declare const GetRelationsSchema: z.ZodObject<{
9
9
  memory_id: z.ZodString;
10
- relation_type: z.ZodOptional<z.ZodEnum<["CAUSES", "DEPENDS_ON", "FOLLOWS", "CONTRASTS_WITH", "REFERENCES", "BELONGS_TO"]>>;
10
+ relation_type: z.ZodOptional<z.ZodEnum<["CAUSES", "DEPENDS_ON", "FOLLOWS", "CONTRASTS_WITH", "REFERENCES", "BELONGS_TO", "VERSION_OF"]>>;
11
11
  category: z.ZodOptional<z.ZodEnum<["Causal", "Temporal", "Structural", "Semantic"]>>;
12
12
  direction: z.ZodDefault<z.ZodOptional<z.ZodEnum<["incoming", "outgoing", "both"]>>>;
13
13
  }, "strip", z.ZodTypeAny, {
14
14
  direction: "outgoing" | "incoming" | "both";
15
15
  memory_id: string;
16
- relation_type?: "CAUSES" | "DEPENDS_ON" | "FOLLOWS" | "CONTRASTS_WITH" | "REFERENCES" | "BELONGS_TO" | undefined;
16
+ relation_type?: "CAUSES" | "DEPENDS_ON" | "FOLLOWS" | "CONTRASTS_WITH" | "REFERENCES" | "BELONGS_TO" | "VERSION_OF" | undefined;
17
17
  category?: "Causal" | "Temporal" | "Structural" | "Semantic" | undefined;
18
18
  }, {
19
19
  memory_id: string;
20
- relation_type?: "CAUSES" | "DEPENDS_ON" | "FOLLOWS" | "CONTRASTS_WITH" | "REFERENCES" | "BELONGS_TO" | undefined;
20
+ relation_type?: "CAUSES" | "DEPENDS_ON" | "FOLLOWS" | "CONTRASTS_WITH" | "REFERENCES" | "BELONGS_TO" | "VERSION_OF" | undefined;
21
21
  direction?: "outgoing" | "incoming" | "both" | undefined;
22
22
  category?: "Causal" | "Temporal" | "Structural" | "Semantic" | undefined;
23
23
  }>;
@@ -9,7 +9,7 @@ import { RelationGraph } from '../services/relation-graph.js';
9
9
  import { RELATION_TYPE_CATEGORY_MAP, getRelationCategory } from '../../../shared/types/relation.js';
10
10
  const GetRelationsSchema = z.object({
11
11
  memory_id: z.string().min(1, 'memory_id는 필수입니다'),
12
- relation_type: z.enum(['CAUSES', 'DEPENDS_ON', 'FOLLOWS', 'CONTRASTS_WITH', 'REFERENCES', 'BELONGS_TO']).optional(),
12
+ relation_type: z.enum(['CAUSES', 'DEPENDS_ON', 'FOLLOWS', 'CONTRASTS_WITH', 'REFERENCES', 'BELONGS_TO', 'VERSION_OF']).optional(),
13
13
  category: z.enum(['Causal', 'Temporal', 'Structural', 'Semantic']).optional(),
14
14
  direction: z.enum(['incoming', 'outgoing', 'both']).optional().default('both')
15
15
  });
@@ -24,7 +24,7 @@ export class GetRelationsTool extends BaseTool {
24
24
  },
25
25
  relation_type: {
26
26
  type: 'string',
27
- enum: ['CAUSES', 'DEPENDS_ON', 'FOLLOWS', 'CONTRASTS_WITH', 'REFERENCES', 'BELONGS_TO'],
27
+ enum: ['CAUSES', 'DEPENDS_ON', 'FOLLOWS', 'CONTRASTS_WITH', 'REFERENCES', 'BELONGS_TO', 'VERSION_OF'],
28
28
  description: '관계 유형 필터 (선택)'
29
29
  },
30
30
  category: {
@@ -1 +1 @@
1
- {"version":3,"file":"get-relations-tool.js","sourceRoot":"","sources":["../../../../src/domains/relation/tools/get-relations-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-relations-tool.js","sourceRoot":"","sources":["../../../../src/domains/relation/tools/get-relations-tool.ts"],"names":[],"mappings":"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"}
@@ -107,6 +107,16 @@ export declare class SearchLogger implements ISearchLogger {
107
107
  */
108
108
  logExperiment(searchId: string, experimentId: string, variant: Record<string, any>): void;
109
109
  }
110
+ /**
111
+ * 구조화된 컨텍스트 정보
112
+ * PRD 요구사항: trigger_conditions와 매칭하기 위한 현재 컨텍스트
113
+ */
114
+ export interface TriggerContext {
115
+ tool_name?: string;
116
+ error_type?: string;
117
+ params?: Record<string, any>;
118
+ [key: string]: any;
119
+ }
110
120
  export interface HybridSearchQuery {
111
121
  query: string;
112
122
  filters?: MemorySearchFilters | undefined;
@@ -116,6 +126,8 @@ export interface HybridSearchQuery {
116
126
  includeRelations?: boolean;
117
127
  experiment_id?: string;
118
128
  provider_filter?: EmbeddingProvider[];
129
+ match_trigger_conditions?: boolean;
130
+ context?: TriggerContext;
119
131
  }
120
132
  export interface HybridSearchResult {
121
133
  id: string;
@@ -276,6 +288,14 @@ export declare class HybridSearchEngine {
276
288
  * 데이터베이스에서 consolidation_score 조회
277
289
  */
278
290
  private fetchConsolidationScores;
291
+ /**
292
+ * Procedural Memory 매칭 정보 조회
293
+ * workflow_name, skill_name, trigger_conditions 매칭 여부를 확인합니다.
294
+ *
295
+ * workflow_name과 skill_name은 쿼리/필터와의 실제 매칭을 수행합니다.
296
+ * trigger_conditions는 현재 컨텍스트(쿼리)와의 매칭을 수행합니다.
297
+ */
298
+ private fetchProceduralMemoryMatches;
279
299
  /**
280
300
  * 관계 가중치 계산 및 조회
281
301
  * 관계 정보도 함께 반환 (선택적)
@@ -1 +1 @@
1
- {"version":3,"file":"hybrid-search-engine.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hybrid-search-engine.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-engine.ts"],"names":[],"mappings":"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"}
@@ -304,7 +304,7 @@ export class HybridSearchEngine {
304
304
  // 벡터 유사도 검색을 실행하여 의미적으로 관련된 결과를 획득합니다.
305
305
  const vectorResults = await this.executeVectorSearch(db, query, searchId);
306
306
  // 텍스트와 벡터 검색 결과를 결합하고 통합 점수와 관계 가중치를 조회하여 최종 정렬합니다.
307
- const finalResults = await this.combineAndSortResults(textResults, vectorResults, weights, query.limit || 10, db, query.includeRelations || false);
307
+ const finalResults = await this.combineAndSortResults(textResults, vectorResults, weights, query.limit || 10, db, query.includeRelations || false, query);
308
308
  // 검색 통계를 업데이트하여 향후 가중치 조정에 활용합니다.
309
309
  this.updateSearchStats(query.query, textResults.length, vectorResults.length);
310
310
  const queryTime = this.calculateQueryTime(startTime);
@@ -841,7 +841,7 @@ export class HybridSearchEngine {
841
841
  throw new SearchError(SearchErrorType.EMBEDDING_GENERATION_FAILED, `임베딩 생성 중 오류가 발생했습니다 (provider: ${preferredProvider})`, error instanceof Error ? error : new Error(String(error)), { query, searchId, preferredProvider });
842
842
  }
843
843
  }
844
- async combineAndSortResults(textResults, vectorResults, weights, limit, db, includeRelations = false) {
844
+ async combineAndSortResults(textResults, vectorResults, weights, limit, db, includeRelations = false, query) {
845
845
  try {
846
846
  const combinedResults = this.resultCombiner.combine(textResults, vectorResults, weights.textWeight, weights.vectorWeight);
847
847
  // 관계 그래프와 통합 점수를 활용하여 더 정교한 관련성 평가를 수행합니다.
@@ -857,6 +857,8 @@ export class HybridSearchEngine {
857
857
  if (mementoConfig.consolidationScoreEnabled) {
858
858
  consolidationScores = this.fetchConsolidationScores(db, memoryIds);
859
859
  }
860
+ // Procedural Memory 특화 가중치를 위한 매칭 정보 조회
861
+ const proceduralMemoryMatches = this.fetchProceduralMemoryMatches(db, memoryIds, query);
860
862
  // 관계 가중치와 통합 점수를 반영하여 각 결과의 최종 점수를 재계산합니다.
861
863
  combinedResults.forEach(result => {
862
864
  const relationWeight = relationWeights.get(result.id);
@@ -875,23 +877,42 @@ export class HybridSearchEngine {
875
877
  }));
876
878
  }
877
879
  }
880
+ // Procedural Memory 매칭 정보 가져오기
881
+ const proceduralMatch = proceduralMemoryMatches.get(result.id);
878
882
  const consolidationScore = consolidationScores.get(result.id);
879
883
  if (consolidationScore !== undefined) {
880
884
  // 통합 점수가 있는 경우 더 정교한 점수 계산 방식을 사용하여 검색 품질을 향상시키기 위해
881
885
  result.consolidation_score = consolidationScore;
882
886
  const vectorSimilarity = result.vectorScore;
883
- result.finalScore = this.ranking.calculateFinalScoreWithConsolidation(vectorSimilarity, consolidationScore, 'balanced');
887
+ // Procedural Memory 특화 가중치를 포함한 SearchFeatures 구성
888
+ const features = {
889
+ relevance: vectorSimilarity,
890
+ recency: this.calculateRecency(result.created_at),
891
+ importance: result.importance || 0.5,
892
+ usage: this.calculateUsage(result.last_accessed),
893
+ relation_weight: relationWeight || 0,
894
+ duplication_penalty: 0,
895
+ consolidation_score: consolidationScore,
896
+ workflow_name_match: proceduralMatch?.workflow_name_match || false,
897
+ skill_name_match: proceduralMatch?.skill_name_match || false,
898
+ trigger_conditions_match: proceduralMatch?.trigger_conditions_match || false
899
+ };
900
+ // calculateFinalScoreWithConsolidation 대신 calculateFinalScore 사용 (procedural memory boost 포함)
901
+ result.finalScore = this.ranking.calculateFinalScore(features);
884
902
  }
885
903
  else {
886
904
  // 관계 가중치를 포함한 finalScore 재계산
887
- // SearchFeatures 구성
905
+ // SearchFeatures 구성 (Procedural Memory 특화 가중치 포함)
888
906
  const features = {
889
907
  relevance: result.vectorScore || result.textScore || 0,
890
908
  recency: this.calculateRecency(result.created_at),
891
909
  importance: result.importance || 0.5,
892
910
  usage: this.calculateUsage(result.last_accessed),
893
911
  relation_weight: relationWeight || 0, // relationWeight가 undefined면 0 사용
894
- duplication_penalty: 0 // 중복 패널티는 이미 결과 결합 시 처리됨
912
+ duplication_penalty: 0, // 중복 패널티는 이미 결과 결합 시 처리됨
913
+ workflow_name_match: proceduralMatch?.workflow_name_match || false,
914
+ skill_name_match: proceduralMatch?.skill_name_match || false,
915
+ trigger_conditions_match: proceduralMatch?.trigger_conditions_match || false
895
916
  };
896
917
  result.finalScore = this.ranking.calculateFinalScore(features);
897
918
  }
@@ -930,6 +951,148 @@ export class HybridSearchEngine {
930
951
  }
931
952
  return scores;
932
953
  }
954
+ /**
955
+ * Procedural Memory 매칭 정보 조회
956
+ * workflow_name, skill_name, trigger_conditions 매칭 여부를 확인합니다.
957
+ *
958
+ * workflow_name과 skill_name은 쿼리/필터와의 실제 매칭을 수행합니다.
959
+ * trigger_conditions는 현재 컨텍스트(쿼리)와의 매칭을 수행합니다.
960
+ */
961
+ fetchProceduralMemoryMatches(db, memoryIds, query) {
962
+ const matches = new Map();
963
+ if (memoryIds.length === 0) {
964
+ return matches;
965
+ }
966
+ // Mock 데이터베이스인 경우 빈 Map 반환 (테스트 환경에서 안전하게 처리)
967
+ if (!db || typeof db.prepare !== 'function') {
968
+ return matches;
969
+ }
970
+ try {
971
+ 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
+ `;
978
+ const results = db.prepare(sql).all(...memoryIds);
979
+ // 쿼리와 필터 정보 추출
980
+ const queryText = query?.query?.toLowerCase() || '';
981
+ const filterWorkflowName = query?.filters?.workflow_name?.toLowerCase();
982
+ const filterSkillName = query?.filters?.skill_name?.toLowerCase();
983
+ const matchTriggerConditions = query?.match_trigger_conditions ?? false;
984
+ results.forEach(row => {
985
+ // workflow_name 매칭: 필터 또는 쿼리와 매칭
986
+ // PRD: "매칭 시 가중치" - 실제 매칭이 있어야만 부스트 적용
987
+ let workflowMatch = false;
988
+ if (row.workflow_name) {
989
+ const workflowLower = row.workflow_name.toLowerCase();
990
+ if (filterWorkflowName) {
991
+ // 필터가 있으면 정확히 일치해야 함
992
+ workflowMatch = workflowLower === filterWorkflowName;
993
+ }
994
+ else if (queryText) {
995
+ // 쿼리가 있으면 부분 매칭
996
+ workflowMatch = workflowLower.includes(queryText) || queryText.includes(workflowLower);
997
+ }
998
+ // 쿼리와 필터가 모두 없으면 매칭하지 않음 (PRD: "매칭 시 가중치")
999
+ }
1000
+ // skill_name 매칭: 필터 또는 쿼리와 매칭
1001
+ // PRD: "매칭 시 가중치" - 실제 매칭이 있어야만 부스트 적용
1002
+ let skillMatch = false;
1003
+ if (row.skill_name) {
1004
+ const skillLower = row.skill_name.toLowerCase();
1005
+ if (filterSkillName) {
1006
+ // 필터가 있으면 정확히 일치해야 함
1007
+ skillMatch = skillLower === filterSkillName;
1008
+ }
1009
+ else if (queryText) {
1010
+ // 쿼리가 있으면 부분 매칭
1011
+ skillMatch = skillLower.includes(queryText) || queryText.includes(skillLower);
1012
+ }
1013
+ // 쿼리와 필터가 모두 없으면 매칭하지 않음 (PRD: "매칭 시 가중치")
1014
+ }
1015
+ // trigger_conditions 매칭: match_trigger_conditions 플래그에 따라 처리
1016
+ // PRD: match_trigger_conditions=false일 때는 부스트 적용하지 않음
1017
+ // PRD: 구조화된 컨텍스트(예: tool_name, error_type, params)와 JSON 매칭 요구
1018
+ let triggerMatch = false;
1019
+ if (matchTriggerConditions && row.trigger_conditions) {
1020
+ try {
1021
+ const parsed = typeof row.trigger_conditions === 'string'
1022
+ ? JSON.parse(row.trigger_conditions)
1023
+ : row.trigger_conditions;
1024
+ if (typeof parsed === 'object' && parsed !== null && !Array.isArray(parsed)) {
1025
+ const triggerContext = query?.context;
1026
+ // 구조화된 컨텍스트가 제공된 경우: 키-값 기반 정확 매칭
1027
+ // 모든 키-값 쌍이 매칭되어야 함 (첫 번째 키만 맞으면 통과하는 문제 수정)
1028
+ if (triggerContext && Object.keys(triggerContext).length > 0) {
1029
+ // trigger_conditions의 모든 키-값 쌍이 컨텍스트와 매칭되는지 확인
1030
+ let allKeysMatch = true;
1031
+ for (const [key, value] of Object.entries(parsed)) {
1032
+ const contextValue = triggerContext[key];
1033
+ // trigger_conditions에 있는 키가 컨텍스트에 없으면 매칭 실패
1034
+ if (contextValue === undefined) {
1035
+ allKeysMatch = false;
1036
+ break;
1037
+ }
1038
+ // 값이 객체인 경우 재귀적으로 비교
1039
+ if (typeof value === 'object' && typeof contextValue === 'object' && value !== null && contextValue !== null) {
1040
+ // 중첩 객체 매칭: context의 값이 trigger_conditions의 값과 부분적으로 일치하는지 확인
1041
+ const valueStr = JSON.stringify(value).toLowerCase();
1042
+ const contextStr = JSON.stringify(contextValue).toLowerCase();
1043
+ if (!(valueStr.includes(contextStr) || contextStr.includes(valueStr))) {
1044
+ // 하나라도 매칭되지 않으면 실패
1045
+ allKeysMatch = false;
1046
+ break;
1047
+ }
1048
+ }
1049
+ else {
1050
+ // 단순 값 매칭: 문자열로 변환하여 비교
1051
+ const valueStr = String(value).toLowerCase();
1052
+ const contextStr = String(contextValue).toLowerCase();
1053
+ if (!(valueStr === contextStr || valueStr.includes(contextStr) || contextStr.includes(valueStr))) {
1054
+ // 하나라도 매칭되지 않으면 실패
1055
+ allKeysMatch = false;
1056
+ break;
1057
+ }
1058
+ }
1059
+ }
1060
+ // 모든 키/값 쌍이 매칭되었을 때만 triggerMatch = true
1061
+ triggerMatch = allKeysMatch;
1062
+ }
1063
+ else if (queryText) {
1064
+ // 구조화된 컨텍스트가 없는 경우: 쿼리 텍스트 기반 매칭 (fallback)
1065
+ // 쿼리 텍스트가 trigger_conditions의 키와 값 모두와 매칭되는지 확인
1066
+ // 키 매칭: tool_name, error_type, params 등 구조화된 필드명과 매칭
1067
+ const triggerKeys = Object.keys(parsed).map(k => k.toLowerCase());
1068
+ const triggerValues = Object.values(parsed).map(v => String(v).toLowerCase());
1069
+ // 키 또는 값 중 하나라도 쿼리와 매칭되면 통과
1070
+ const keyMatch = triggerKeys.some(k => k.includes(queryText) || queryText.includes(k));
1071
+ const valueMatch = triggerValues.some(v => v.includes(queryText) || queryText.includes(v));
1072
+ triggerMatch = keyMatch || valueMatch;
1073
+ }
1074
+ // 쿼리와 컨텍스트가 모두 없으면 매칭하지 않음 (PRD: "매칭 시 가중치")
1075
+ }
1076
+ }
1077
+ catch (error) {
1078
+ // JSON 파싱 실패 시 매칭 실패로 처리
1079
+ triggerMatch = false;
1080
+ }
1081
+ }
1082
+ // match_trigger_conditions가 false이면 항상 false
1083
+ matches.set(row.id, {
1084
+ workflow_name_match: workflowMatch,
1085
+ skill_name_match: skillMatch,
1086
+ trigger_conditions_match: triggerMatch
1087
+ });
1088
+ });
1089
+ }
1090
+ catch (error) {
1091
+ // 에러 발생 시 빈 Map 반환 (procedural memory boost 없음)
1092
+ console.warn('⚠️ Procedural Memory 매칭 정보 조회 실패:', error);
1093
+ }
1094
+ return matches;
1095
+ }
933
1096
  /**
934
1097
  * 관계 가중치 계산 및 조회
935
1098
  * 관계 정보도 함께 반환 (선택적)