( aiChatId: string, config: CompressionConfig, systemPrompt: string, llmAdapter: CompressionLlmAdapter, convManager: AIChatManager, logger?: CompressionLogger )
| 186 | } |
| 187 | |
| 188 | export async function manualCompress( |
| 189 | aiChatId: string, |
| 190 | config: CompressionConfig, |
| 191 | systemPrompt: string, |
| 192 | llmAdapter: CompressionLlmAdapter, |
| 193 | convManager: AIChatManager, |
| 194 | logger?: CompressionLogger |
| 195 | ): Promise<CompressionResult> { |
| 196 | const messageCount = convManager.getMessageCountAfterSummary(aiChatId) |
| 197 | if (messageCount < 5) { |
| 198 | return { compressed: false, reason: 'skipped_idempotent' } |
| 199 | } |
| 200 | |
| 201 | const overrideConfig = { ...config, enabled: true, tokenThresholdPercent: 0 } |
| 202 | return checkAndCompress(aiChatId, overrideConfig, systemPrompt, llmAdapter, convManager, logger) |
| 203 | } |
| 204 | |
| 205 | // ==================== Internal Helpers ==================== |
| 206 |
nothing calls this directly
no test coverage detected