Skip to content

fix: 增量导入缺失的 Hermes 会话#642

Open
hanzckernel wants to merge 1 commit into
EKKOLearnAI:mainfrom
hanzckernel:fix/issue-285-incremental-session-sync
Open

fix: 增量导入缺失的 Hermes 会话#642
hanzckernel wants to merge 1 commit into
EKKOLearnAI:mainfrom
hanzckernel:fix/issue-285-incremental-session-sync

Conversation

@hanzckernel
Copy link
Copy Markdown
Collaborator

Web UI 启动同步现在按缺失会话增量补齐,而不是本地库已有任意会话就直接跳过。范围限定在当前 DB-backed 会话镜像路径;旧版 JSON-only 历史文件不在这个 PR 中扩展为 Chat 导入。

改动

  • 启动同步改为增量执行:本地会话库非空时仍会导入缺失的 Hermes 会话。
  • 同步来源覆盖 api_serverwebui,继续跳过内部 eph_* 会话。
  • 新导入会话使用 Hermes 原始 session id,重复启动不会生成重复会话。
  • 兼容旧版随机本地 id 导入:用 profile + source + started_at + last_active + title + preview 指纹识别已导入会话。
  • 导入失败时清理刚创建的本地会话行,避免部分导入后下次启动因 canonical id 已存在而无法重试。
  • createSession 支持保留导入来源,避免 webui 会话被写成 api_server

验证

  • npm test -- tests/server/session-sync.test.ts → 4 passed
  • npm test → 66 files passed;449 tests passed,2 skipped
  • npm run build → passed
  • git diff --check → passed
  • 独立代码 review → passed,无 blocker

关联

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant