(contextData: ContextData)
| 458 | } |
| 459 | |
| 460 | private hashContext(contextData: ContextData): string { |
| 461 | const content = JSON.stringify({ |
| 462 | messageCount: contextData.layers.conversation.messages.length, |
| 463 | lastMessage: |
| 464 | contextData.layers.conversation.messages[ |
| 465 | contextData.layers.conversation.messages.length - 1 |
| 466 | ]?.id, |
| 467 | toolCallCount: contextData.layers.tool.recentCalls.length, |
| 468 | }); |
| 469 | |
| 470 | return crypto.createHash('md5').update(content).digest('hex'); |
| 471 | } |
| 472 | |
| 473 | private calculateRelevance(query: string, topics: string[]): number { |
| 474 | const queryLower = query.toLowerCase(); |
no test coverage detected