Repository navigation
Releases
Releases · weibaohui/hermes-loop
0.3.2 — turn/start abort 后台复盘不再带崩宿主(#7)
修复
turn/start 前台打断后台复盘时,agents.create 收到的父 signal 会在 dsh 内部留下一条未接管的 promise 链,以同一个 AbortError reject 后成为进程级 unhandledRejection,被宿主当 fatal load failure 直接 exit(1)(表现为整页跳安全模式)。
agents.create不再传父 signal:abort 改由 create 后登记的onAbort → agent.cancel({kind:'parent'})传导;abort 落在 create 期间(issue 的一两秒窗口)由signal.aborted检查当场补 cancel,复盘安静让位,对外行为不变。被打断的 create 会完整跑完(约 1s),换宿主进程不被带崩。notifySourceSession挂住session.append的异步 rejection:dsh 的Session.append返回 promise,会话句柄已关闭时原同步 try/catch 接不住,走同一条致命路径;现在降级为 warn。
回归测试
- create 期间 abort 的时序(断言不传 signal、agent 被当场 cancel、零 unhandledRejection canary)
session.append异步 reject 降级为 warn(零 unhandledRejection canary)
node --test:100 passed / 0 failed。
Full Changelog: v0.3.1...v0.3.2
v0.3.1 — 复盘结论解析抗内层围栏截断(#6)
Full Changelog: v0.3.0...v0.3.1
v0.3.0 — 面板技能内容查看
面板技能内容查看
沉淀记录、技能使用统计、Curator 表三处的技能名后面新增「查看」按钮,点击弹窗展示该技能的 SKILL.md 内容。
- 宿主新增只读接口
GET /hermes-loop/api/skill?name=:先查技能目录快照投影(项目级技能也可查看),再回退全局库直读;正文剥掉 frontmatter,description 单独一行展示 - 弹窗借鉴 skills-management 的详情实现:MarkdownText 渲染正文(原语缺席自动退回纯文本),backdrop / Esc / 关闭按钮均可关闭,中英文案齐备
- 安全:name 必须过 kebab-case 校验(防路径逃逸),技能不存在回 404,弹窗内原地提示
- 测试:新增 stripFrontmatter 纯函数与路由 200/400/404/快照投影用例,全套 94 个测试通过
v0.2.1 — 工作区记忆常开
Full Changelog: v0.2.0...v0.2.1
v0.2.0 — 工作区记忆
0.1.17
复盘 prompt / 记忆快照 / 收尾沉淀段跟随 DSH 语言设置
三处 model-facing 文案(复盘 prompt、收尾沉淀段、记忆快照)跟随 Settings → General → Language 落盘的 locale.preference:
- 未设置偏好时一律走
zh,与 0.1.16 逐字节一致(用已发布的@weibaohui/hermes-loop@0.1.16作对照包断言)。 - 语言切换经
settings/document-updated失效缓存,不重启下次 assemble 生效;记忆快照按会话首冻结。 zh一侧同样显式钉住产物语言(description/body/memory.text/rationale),避免模型顺着上下文语言写出错语言的 skill。
测试修复
- e2e 测试清理对
ENOTEMPTY重试,消除与 fire-and-forget activity 写入的竞态。 - i18n 快照测试改用
DSH_HOMEfixture,不再依赖开发者真实MEMORY.md(修 CI 干净环境失败)。
实际验证
- dsh 0.2.0-rc.2 真机:设置界面切换 zh↔en,三处文案与
language()解析器在不重启下同步切换。 - 单元测试 76/76 通过(含对照包逐字节断言);模拟 CI 干净环境(空 HOME)同样 76/76。