autosnippet
Version:
Extract code patterns into a knowledge base for AI coding assistants
61 lines (60 loc) • 1.6 kB
TypeScript
/**
* MemoryConsolidator — 记忆固化与冲突解决
*
* 从 PersistentMemory.js 提取的智能固化逻辑。
* 负责:
* - Extract-Update Consolidation (ADD / UPDATE / MERGE / NOOP)
* - Mem0 风格冲突解决 (矛盾检测 + 自动替换)
* - Legacy JSONL 迁移
*
* @module MemoryConsolidator
*/
import { MemoryStore } from './MemoryStore.js';
/** 候选记忆 (consolidate 入参) */
export interface CandidateMemory {
type?: string;
content: string;
source?: string;
importance?: number;
}
/** consolidate 返回统计 */
export interface ConsolidateStats {
added: number;
updated: number;
merged: number;
skipped: number;
replaced?: number;
}
/** consolidate 选项 */
export interface ConsolidateOptions {
bootstrapSession?: string;
}
/** Logger 接口 */
interface MemoryLogger {
info(msg: string): void;
warn?(msg: string): void;
debug?(msg: string): void;
}
export declare class MemoryConsolidator {
#private;
constructor(store: MemoryStore, opts?: {
logger?: MemoryLogger | null;
});
/**
* 智能固化: 先执行冲突检测 (Mem0 风格),再执行 ADD / UPDATE / MERGE / NOOP
*
* @returns }
*/
consolidate(candidateMemories: CandidateMemory[], { bootstrapSession }?: ConsolidateOptions): ConsolidateStats;
/**
* 从旧版 Memory.js JSONL 文件迁移数据到 SQLite
*
* @returns >}
*/
migrateFromLegacy(projectRoot: string): Promise<{
migrated: number;
skipped: number;
error?: string;
}>;
}
export {};