🔴 P0 — anet hub start 在 preview 阶段拉错版本号导致静默挂掉
复现
npm i -g @sleep2agi/agent-network@preview
anet hub start
# → "Starting CommHub Server on port 9200..."
# → 15s 后 "❌ Server failed to start. Check the bunx output above for the real error."
# → 但 stdio: "pipe" 把 bunx 错误吞了, 用户看不见真实原因
Root cause
agent-network/bin/cli.ts:61 在 commit df50f11 把 PINNED_SERVER_VERSION 改成了 "0.8.4", 但 npm 上 commhub-server 实际只有 0.8.4-preview.0 (带 -preview.0 后缀, 见 commit a214df1 preview publish)。
CLI 拼出 bunx --bun @sleep2agi/commhub-server@0.8.4 → npm 404 → bunx 退出 → /health 15s 等不到 → 报 "failed to start"。
npm view @sleep2agi/commhub-server@0.8.4
# npm error code E404
# npm error 404 No match found for version 0.8.4
Why this was missed
Preview 阶段 commhub-server 必带 -preview.N 后缀, 但 agent-network 这次 PINNED bump 直接写了 clean version (按 latest 阶段的格式)。Release-gate 没有 npm view @<pkg>@<PINNED> 验证步骤。
Fix
Option A (推荐): 出 agent-network@2.2.10-preview.1, 把 PINNED_SERVER_VERSION 改回 "0.8.4-preview.0"。等 commhub-server@0.8.4 clean publish 之后 (Method B Phase 2), 再 bump preview.2 改回 "0.8.4"。
Option B: 直接把 commhub-server@0.8.4-preview.0 的内容 clean republish 为 0.8.4 (no suffix), 这样现有 agent-network preview 就能工作。但违反 Method B 的「latest 必从 preview→clean 双阶段」流程。
倾向 Option A 因为它符合 Method B SOP。
Parallel UX fix
anet hub start 内部 spawn("bunx", ..., { stdio: "pipe" }) 把 bunx stderr 吞了, 失败时报错说 "Check the bunx output above" 但用户看不到任何输出。
- 应改为
stdio: "inherit" (让 bunx 直接打到终端), 或者
- 捕获 stderr 到 buffer, 失败时 echo 给用户
Release-gate 加 PINNED 验证
Bump PINNED_SERVER_VERSION 的 commit, push 前必跑:
npm view @sleep2agi/commhub-server@<新值> version
# 返回 200 + 正确版本号 = OK
# 返回 404 = abort, format mismatch
进 release-ops playbook。
Triggering event
2026-05-27 北京 21:13 Vincent UAT #194 from-name fix, anet hub start --host 0.0.0.0 + anet hub start (无 flag) 都报 "failed", 用 bunx --bun @sleep2agi/commhub-server@preview --port 9200 直跑成功。我源码 grep + npm view 找到根因 ~3min。
Owner
通信工程马 (release-ops + CLI owner)
Author
通信龙
🤖 报告人: 通信龙
🔴 P0 —
anet hub start在 preview 阶段拉错版本号导致静默挂掉复现
Root cause
agent-network/bin/cli.ts:61在 commitdf50f11把PINNED_SERVER_VERSION改成了"0.8.4", 但 npm 上 commhub-server 实际只有0.8.4-preview.0(带-preview.0后缀, 见 commita214df1preview publish)。CLI 拼出
bunx --bun @sleep2agi/commhub-server@0.8.4→ npm 404 → bunx 退出 → /health 15s 等不到 → 报 "failed to start"。Why this was missed
Preview 阶段 commhub-server 必带
-preview.N后缀, 但 agent-network 这次 PINNED bump 直接写了 clean version (按 latest 阶段的格式)。Release-gate 没有npm view @<pkg>@<PINNED>验证步骤。Fix
Option A (推荐): 出
agent-network@2.2.10-preview.1, 把PINNED_SERVER_VERSION改回"0.8.4-preview.0"。等 commhub-server@0.8.4 clean publish 之后 (Method B Phase 2), 再 bump preview.2 改回"0.8.4"。Option B: 直接把 commhub-server@0.8.4-preview.0 的内容 clean republish 为
0.8.4(no suffix), 这样现有 agent-network preview 就能工作。但违反 Method B 的「latest 必从 preview→clean 双阶段」流程。倾向 Option A 因为它符合 Method B SOP。
Parallel UX fix
anet hub start内部spawn("bunx", ..., { stdio: "pipe" })把 bunx stderr 吞了, 失败时报错说 "Check the bunx output above" 但用户看不到任何输出。stdio: "inherit"(让 bunx 直接打到终端), 或者Release-gate 加 PINNED 验证
Bump
PINNED_SERVER_VERSION的 commit, push 前必跑:进 release-ops playbook。
Triggering event
2026-05-27 北京 21:13 Vincent UAT #194 from-name fix,
anet hub start --host 0.0.0.0+anet hub start(无 flag) 都报 "failed", 用bunx --bun @sleep2agi/commhub-server@preview --port 9200直跑成功。我源码 grep + npm view 找到根因 ~3min。Owner
通信工程马 (release-ops + CLI owner)
Author
通信龙
🤖 报告人: 通信龙