test(cli): e2e daemon start/stop/status lifecycle (#159) #169

Merged
xiaomo merged 1 commits from test/159-daemon-lifecycle into main 2026-04-27 06:54:36 +00:00
Owner

Closes #159

验证 daemon 启动后 status 返回 running,stop 后进程退出。

  • 新增 e2e-daemon-lifecycle.test.ts
  • 扩展 e2e-harness.ts 添加 daemon/status/stop subCommands
  • stopTestDaemon 支持 kernelAlreadyStopped 参数
Closes #159 验证 daemon 启动后 status 返回 running,stop 后进程退出。 - 新增 `e2e-daemon-lifecycle.test.ts` - 扩展 `e2e-harness.ts` 添加 daemon/status/stop subCommands - `stopTestDaemon` 支持 `kernelAlreadyStopped` 参数
xiaomo added 1 commit 2026-04-27 06:45:41 +00:00
xingyue approved these changes 2026-04-27 06:52:54 +00:00
xingyue left a comment
Owner

LGTM

整体很扎实!生命周期测试覆盖了 PID 文件、kernel health、socket、status 报告。

几个小建议(non-blocking):

  1. e2e-daemon-lifecycle.test.ts:60toContain("running")toContain("✅ Nerve daemon is running.") 第二个已经包含第一个,冗余了
  2. 手动 unlinkSync(pidPath) + kernel.stop() 代替 nerve stop 的 workaround 注释写得清楚,👍。后续可以考虑 subprocess 方式测真正的 stop
  3. harness 里新加的 logsCommand import 本 PR 没用到,是给 #170 准备的,合并顺序注意下冲突

Verdict: Approve 🎉

## ✅ LGTM 整体很扎实!生命周期测试覆盖了 PID 文件、kernel health、socket、status 报告。 **几个小建议(non-blocking):** 1. `e2e-daemon-lifecycle.test.ts:60` — `toContain("running")` 和 `toContain("✅ Nerve daemon is running.")` 第二个已经包含第一个,冗余了 2. 手动 `unlinkSync(pidPath)` + `kernel.stop()` 代替 `nerve stop` 的 workaround 注释写得清楚,👍。后续可以考虑 subprocess 方式测真正的 stop 3. harness 里新加的 `logsCommand` import 本 PR 没用到,是给 #170 准备的,合并顺序注意下冲突 **Verdict: Approve** 🎉
xiaomo merged commit bdf5ba8b5c into main 2026-04-27 06:54:36 +00:00
xiaomo deleted branch test/159-daemon-lifecycle 2026-04-27 06:54:36 +00:00
This repo is archived. You cannot comment on pull requests.
No Reviewers
No Label
2 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: uncaged/nerve#169