Files
Nexus/docs/archive/audits/2026-06-04-line-walk/audit-bug-line-walk-2026-06-04-batch1.md
T
Nexus Deploy 0100ab2582 docs: consolidate archive, SSOT guide, and agent entry stubs
Move line-walk/delta/phase2/frontend audits and legacy memory into
docs/archive/, add functional development SSOT, thin AGENTS/CLAUDE stubs,
and regenerate changelog/audit indexes via consolidate_docs.py.
2026-06-04 23:01:03 +08:00

3.4 KiB
Raw Blame History

BUG 专项逐行走读 — Batch 12026-06-04

标准: docs/project/line-walk-audit-standard.md · 八类仅列 BUG

范围(5 文件,全文 Read

文件 N Read
server/api/install.py 719 1719
web/app/install.html 720 createAdmin/lock 段 + init
server/application/services/script_job_callback.py 110 1110
server/api/agent.py 360 1360
server/api/servers.py 1733 stats 228280 + list 165220

Step 3 规则扫描(BUG 相关)

文件 命中
install.py 守卫分支、lock/create-admin 时序
install.html 未检查 lock 响应
script_job_callback.py _aggregate_execution_status 空列表
agent.py 丢弃未知 server、指标解析
servers.py stats offline = total - online

Closure 表(BUG

文件 行号 判定 严重度 理由
install.html 691-694 FINDING P1 create-admin 成功后未检查 /lock;失败仍进 step5
install.py 648 FINDING P1 create-admin 与 lock 非原子;锁定前 install API 仍可被未认证调用
script_job_callback.py 17-36 FINDING P2 server_ids==[] 时直接 return "completed",忽略 results 中 pending
install.py 509-526 SAFE state 不写 db_pass(有意);刷新 step4 需重填密码属 UX
agent.py 154-180 SAFE 无 server_id / 未知 server 丢弃,设计如此
agent.py 86-94 SAFE 非数字指标跳过
servers.py 245-279 RISK/BUG P2 offline=total-online 与列表 Redis 覆盖逻辑在「从未装 Agent」服务器上可能偏差;非回归
servers.py 205-212 SAFE is_online 过滤后重算 total

FINDING 列表(8 字段)

BUG-06-04-01 · P1 · install.html:691-694

现象:管理员创建成功但 lock 503/400 时 UI 仍显示「安装完成」。

修复:检查 lock 响应;create-admin 返回 locked:true 时跳过二次 lock。

BUG-06-04-02 · P1 · install.py:648

现象create-admin 完成到 lock 之间,未认证客户端可再次 create-adminON DUPLICATE 改密)。

修复create-admin 末尾 _finalize_install_lock()lock 幂等 already_locked

BUG-06-04-03 · P2 · script_job_callback.py:32-33

现象server_ids JSON 损坏为空列表时,误标 completed

修复:空列表时扫描 results 是否仍有 phase=pending


Step 7 统计

install.py              2 FINDING(已修)
install.html            1 FINDING(已修)
script_job_callback.py  1 FINDING(已修)
agent.py                0
servers.py              01 项 P2 观察)

Step 8 DoD

  • 5 文件 Read 覆盖
  • Closure 全表
  • FINDING 含 文件:行号
  • 3 项 P1/P2 已落地修复

验证

ruff check server/api/install.py server/application/services/script_job_callback.py
pytest tests/test_security_unit.py tests/ -q --tb=no

Changelog: docs/changelog/2026-06-04-install-lock-atomic.md

下一批(BUG

  • server/application/services/sync_engine_v2.py
  • server/api/auth_service.py
  • server/background/schedule_runner.py
  • frontend/src/composables/terminal/useTerminalSessions.ts
  • server/infrastructure/redis/script_execution_store.py