Files
Nexus/docs/archive/audits/2026-06-04-line-walk/audit-bug-line-walk-2026-06-04-batch6.md
T
2026-07-08 22:31:31 +08:00

3.0 KiB
Raw Blame History

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

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

范围(5 文件,全文 Read

文件 N Read
server/api/auth_jwt.py 275 中间件 + _verify_token
server/application/services/auth_service.py refresh / Redis 196620
server/background/script_execution_flush.py 46 146
frontend/src/composables/files/useFilesBrowse.ts 272 ETag 流程
frontend/src/stores/files.ts 129 目录缓存

Step 3 规则扫描(BUG 相关)

文件 命中
auth_service.py refresh 重用、Redis 故障
auth_jwt.py token_version、公共路由
script_execution_flush.py Redis→MySQL 批量
useFilesBrowse.ts 304 / 本地 TTL 短路
files.ts etag 与 invalidate

Closure 表(BUG

文件 行号 判定 严重度 理由
auth_service.py 239-246 FINDING P1 已轮换 refresh 不在 Redis 时仅 401,不升 token_version,被盗旧 token 与合法新会话可并存
auth_service.py 597-598 FINDING P2 Redis 异常时 _check_refresh_token 曾返回 False,误拒合法刷新
useFilesBrowse.ts 187-195 FINDING P2 5s 内命中本地缓存直接 return,跳过后端 ETag,变更后仍显示旧列表
auth_jwt.py 217-226 SAFE tv 与 DB 严格比对
script_execution_flush.py 19-45 SAFE flush/stuck 分工清晰;update_status 内 commit
files.ts 85-98 SAFE invalidateCache 与 mutation 联动

FINDING 列表

BUG-06-04-13 · P1 · auth_service refresh 重用

现象:轮换后旧 refresh 重放仅返回 invalid,不注销其他设备。

修复membership is False_handle_refresh_token_reuse()token_version++ + 清空 Redis refresh set)。

BUG-06-04-14 · P2 · auth Redis 不可用

现象:Redis 异常与「令牌不在集合」同为 False。

修复_refresh_token_membership 返回 Optional[bool]Noneservice_unavailable

BUG-06-04-15 · P2 · useFilesBrowse 本地缓存短路

现象:有 fresh 缓存时不发 If-None-Match,服务端失效 ETag 后 UI 仍旧。

修复:缓存仅作乐观展示,始终继续条件请求。


Step 7 统计

auth_service.py           2 FINDING(已修)
useFilesBrowse.ts         1 FINDING(已修)
auth_jwt.py               0
script_execution_flush.py 0
files.ts                  0

Step 8 DoD

  • 5 文件覆盖
  • Closure 全表
  • 3 项已修 + pytest

验证

ruff check server/application/services/auth_service.py
pytest tests/test_auth_refresh_reuse.py tests/ -q --tb=no
cd frontend && npm run type-check

Changelog: docs/changelog/2026-06-04-bug-batch6-auth-files-etag.md

下一批 / 收尾

  • BUG 专项 Batch 1–6 汇总报告(可选)
  • 部署:重启 nexus + 前端构建