Files
Nexus/docs/changelog/2026-06-11-files-chmod-not-effective-fix.md
T
Nexus Agent 79105dcec8 fix(files): 改权限后列表不更新及 chown 连带失败
ETag 纳入权限指纹避免 304 旧数据;chmod/chown 分步执行;仅变更属主/属组时才提交 chown。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-11 18:12:57 +08:00

1.1 KiB
Raw Blame History

Changelog — 修复文件管理改权限不生效

日期2026-06-11

摘要

浏览目录 ETag 未包含权限/属主,chmod 后仍可能 304 返回旧列表;对话框默认附带 chown 导致 chmod && chown 整段失败。已拆分命令、仅在有变更时提交属主/属组,并扩展 ETag 指纹。

动机

用户反馈文件管理「改权限不生效」:接口可能成功但列表权限不变,或仅改 mode 时因 chown 失败而整体失败。

涉及文件

  • server/application/services/files_browse_service.py — ETag 含 permissions/owner/group
  • server/api/sync_v2.py — chmod/chown 分步执行
  • frontend/src/components/FilePermissionDialog.vue — 仅变更时提交 owner/group
  • frontend/src/stores/files.ts — 刷新后不再复用过期 etag
  • tests/test_files_browse_etag.py

迁移 / 重启

  • 需部署后端 + 前端

验证

pytest tests/test_files_browse_etag.py tests/test_file_permissions.py -q
cd frontend && npm run type-check

文件页修改权限 → 列表权限位立即更新;仅改八进制时不触发 chown。