main-update.test.ts and main-stop.test.ts start standalone workers on the default HTTP port 4701 and fail with EADDRINUSE beside other daemon test files

未关闭 适合新手
#1,417 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
78/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
活跃
技术栈
typescript
领域
backend, testing

调研方向

阅读 src/daemon/main-update.test.ts 和 src/daemon/main-stop.test.ts 中的 worker 设置和选项辅助函数,特别是 issue 指出的行。占用端口 4701 时运行列出的 Vitest 命令,以重现这些失败。更新测试配置,使这些 worker 不会争用默认端口,然后确认在该场景下两个测试都通过。

由索引模型根据 Issue 内容生成。

描述

bug:new

Two more daemon tests start a standalone worker with HTTP at the default 127.0.0.1:4701 (ADR 0046), so they fail with EADDRINUSE beside any other file that binds 4701:

  • src/daemon/main-update.test.ts:329: startChecked(off, { configOverrides: { update: { check: false } } }). ...overrides (line 62) replaces configOverrides, so STANDALONE_OFF is dropped.
  • src/daemon/main-stop.test.ts:692: options() (line 668) sets no configOverrides at all.

Holding 4701 with a plain listener and running pnpm exec vitest run --project unit src/daemon src/agent-device src/leasing src/gateway src/cli src/core:

FAIL src/daemon/main-stop.test.ts > startDaemon gateway uplink when the socket claim fails > never dials the gateway when the worker's socket is already claimed
FAIL src/daemon/main-update.test.ts > startDaemon version check > a daemon runs the version check at start without delaying ready, ...
Error: listen EADDRINUSE: address already in use 127.0.0.1:4701

Found while triaging #1414.

Written by an agent.

主要语言
TypeScript
星标
535
派生
21
平均合并
8 小时 58 分钟
30 天内合并 PR
472

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

callstackincubator/simlock 的其他 Issue

查看 callstackincubator/simlock 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。