Skip to content

[bug][P1] anet -v Components 段 strip -preview.N 后缀 (Vincent 6040 catch) #192

@s2agi

Description

@s2agi

Description

anet -v 输出 Components 段 strip preview/prerelease 后缀, 用户无法区分 latest vs preview install。

Repro

vansin@host:~/grok-build$ anet -v
anet v2.2.9-preview.1                     ← anet 主版本对的, 含 preview 后缀

Components:
  ✓ agent-node v2.4.6                     ← ❌ 应显 v2.4.6-preview.1

实际安装 (verify by npm ls -g @sleep2agi/agent-node):

@sleep2agi/agent-node@2.4.6-preview.1     ← 真实安装版本

Root cause

agent-network/bin/cli.tsN4() version parser regex:

/(?:^|[^0-9])v?(\d+)\.(\d+)\.(\d+)(?:[^0-9]|$)/

只 capture major.minor.patch 三段, -preview.N 后缀, 导致 display "v2.4.6" 实际是 "v2.4.6-preview.1"。

Why this matters

  1. 用户 install preview tag 后, anet -v 看不出来 (容易以为装的 latest)
  2. release-gate 检测脚本可能 false-pass (人工 / agent verify install path 时被误导)
  3. Vincent UAT 6040 实测 catch — "你确定这个对吗" 反应说明 UX 真造成困惑

Fix scope (estimate)

  • N4() regex 扩到 (\d+)\.(\d+)\.(\d+)(?:-[a-zA-Z0-9.]+)? capture optional prerelease
  • e1() display 函数把 prerelease 部分 append 进 version 字符串
  • ~5-10 LOC + 1-2 unit tests
  • Backward-compat: 现有 stable version display ("v2.4.5") 不变, preview install 才显 suffix

Priority

P1 — UX 真造成 release-gate verify 困惑, 但不阻塞功能 (install 是对的, 只是 display 误导)。

Owner

  • 工程马 (anet CLI lane, version display)
  • 通信龙 review

Acceptance

anet -v 装 preview 后显: agent-node v2.4.6-preview.1, 装 latest 后显: agent-node v2.4.5 (现有行为不变)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions