dsh-mneme v0.3.0 — 记忆基因
🧬 v0.3.0 — 记忆基因(Structured Memory)
dsh-mneme 从「文本仓库」进化为「结构化知识库」——实体(Gene)+ 属性(Base)+ 时间轴(Timeline)。
新增
- 三张新表:
entities(基因)/entity_attrs(碱基对)/entity_relations(序列关系)+ 索引,幂等迁移 - valid_until 时间轴:新属性写入→旧行失效;查询当前 =
valid_until IS NULL,历史可追溯 - LLM 实体抽取器(
src/entities/extractor.js):JSON 抽取 + resolveEntity 去重 + 属性时间轴写入,全程 fail-safe - entity:/attr: 前缀搜索:entity_attrs 精确命中(score=1.0)> 关键词提及(0.7),attr: 支持属性过滤
- autoDream 增强:update 决策自动建立 supersedes 自引用;merge 迁移 loser 实体属性到 keeper
- 配置:
entityExtractionEnabled(默认 false,开关隔离)/entityExtractionModel/entityExtractionMaxEntities/entityExtractionMaxAttrs/entitySearchEnabled
设计原则
- 开关哲学:默认关闭,v0.2.x 行为完全一致
- 向后兼容:memories 表不变,三表通过 memory_id 外键关联
- Fail-safe:抽取失败降级纯文本存储,不阻塞写入
- 审计优先:属性变更不覆盖历史,valid_until 保留完整时间轴
测试
- 新增 31 个测试(
test/entities.test.js):Schema/实体 CRUD/时间轴/抽取器/搜索/autoDream/Fail-safe - 404 / 404 全绿,stress 全绿
- 文档:
docs/ENTITIES.md+ README 更新