Files
DataMate/memory/yesterday_changes.json
Jerry Yan 4765349fd7 feat(user-permission): 实现用户权限体系并修复所有问题
- 数据库层面:
  - 创建 RBAC 核心表(角色、菜单权限)
  - 扩展现有表支持数据共享
  - 初始化基础数据

- 后端层面:
  - 实现 UserContext 用户上下文管理
  - 实现数据集访问权限服务
  - 实现菜单权限服务
  - 添加数据集共享功能
  - 修复前端命名不匹配问题(snake_case vs camelCase)
  - 修复请求头不匹配问题(X-User-Roles vs X-Role-Codes)
  - 修复 Mapper 方法未实现问题
  - 修复共享设置持久化缺失问题

- 前端层面:
  - 创建菜单权限工具
  - 更新 Redux Store 支持菜单过滤
  - 创建数据集共享设置组件
  - 添加用户信息到请求头
  - 实现 Token 刷新逻辑

- 数据隔离:
  - 实现 MyBatis 查询权限检查
  - 实现数据文件访问控制

参考:
- Codex 生成的实施方案
- kimI-cli 实施结果
- Codex Review 审核报告

修复的问题:
1. 前端命名不匹配(is_shared -> isShared, shared_with -> sharedWith)
2. 请求头不匹配(X-User-Roles -> X-Role-Codes)
3. Mapper 方法未实现(添加 findFilesWithAccessCheck 等方法声明)
4. 共享设置持久化缺失(添加 isShared 和 sharedWith 字段到 UpdateDatasetRequest)
5. 用户上下文加载问题(实现 Token 刷新逻辑)
2026-02-04 05:31:26 +00:00

130 lines
4.7 KiB
JSON

{
"date": "2026-02-04",
"commits": [
{
"hash": "f381d641ab6472c95a5bfbb7950de0dbd6fdc4c7",
"message": "fix(upload): 修复流式上传中的文件名处理逻辑",
"author": "Jerry Yan",
"date": "2026-02-04 07:47:19 +0800"
},
{
"hash": "c8611d29ff75722e1881d17ce8241533e7078356",
"message": "feat(upload): 实现流式分割上传,优化大文件上传体验",
"author": "Jerry Yan",
"date": "2026-02-03 13:12:10 +0000"
},
{
"hash": "147beb1ec75b5a93dd1c3ab35134ee5e8e79fdef",
"message": "feat(annotation): 实现文本切片预生成功能",
"author": "Jerry Yan",
"date": "2026-02-03 12:59:29 +0000"
},
{
"hash": "699031dae72dad7a31806512d30aace591f9d49f",
"message": "fix: 修复编辑数据集时无法清除关联数据集的编译问题",
"author": "Jerry Yan",
"date": "2026-02-03 11:09:15 +0000"
},
{
"hash": "88b1383653d61eee663da6f47fbad63f23959e80",
"message": "fix: 恢复前端发送空字符串以支持清除关联数据集",
"author": "Jerry Yan",
"date": "2026-02-03 10:57:14 +0000"
},
{
"hash": "cc6415c4d9738a9dc10ac038cff45f8af2ff94b9",
"message": "fix: 修复编辑数据集时无法清除关联数据集的问题",
"author": "Jerry Yan",
"date": "2026-02-03 10:57:08 +0000"
},
{
"hash": "3d036c4cd69c5ec232a297835137ef3312f12c3c",
"message": "fix: 修复编辑数据集时无法清除关联数据集的问题",
"author": "Jerry Yan",
"date": "2026-02-03 09:35:09 +0000"
},
{
"hash": "2445235fd249f0ed4921932a49ed2960fbbbe014",
"message": "fix: 修复编辑数据集时清除关联数据集不生效的问题",
"author": "Jerry Yan",
"date": "2026-02-03 09:23:13 +0000"
},
{
"hash": "893e0a158027255d401df15ce520444898170f7e",
"message": "fix: 上传文件时任务中心立即显示",
"author": "Jerry Yan",
"date": "2026-02-03 09:14:40 +0000"
},
{
"hash": "05e6842fc8b2379586f02ba04edc9b9f6325f90e",
"message": "refactor(DataManagement): 移除不必要的数据集类型过滤逻辑",
"author": "Jerry Yan",
"date": "2026-02-03 13:33:12 +0800"
},
{
"hash": "da5b18e4231d5de5365ce2707ca68857347fca90",
"message": "feat(scripts): 添加 APT 缓存预装功能解决离线构建问题",
"author": "Jerry Yan",
"date": "2026-02-03 13:16:12 +0800"
},
{
"hash": "31629ab50b9d642f87272bdd0982a0f43f051ab0",
"message": "docs(offline): 更新离线构建文档添加传统构建方式和故障排查指南",
"author": "Jerry Yan",
"date": "2026-02-03 13:10:28 +0800"
}
],
"test_items": [
{
"message": "fix(upload): 修复流式上传中的文件名处理逻辑",
"hash": "f381d641ab6472c95a5bfbb7950de0dbd6fdc4c7",
"date": "2026-02-04 07:47:19 +0800"
},
{
"message": "feat(upload): 实现流式分割上传,优化大文件上传体验",
"hash": "c8611d29ff75722e1881d17ce8241533e7078356",
"date": "2026-02-03 13:12:10 +0000"
},
{
"message": "feat(annotation): 实现文本切片预生成功能",
"hash": "147beb1ec75b5a93dd1c3ab35134ee5e8e79fdef",
"date": "2026-02-03 12:59:29 +0000"
},
{
"message": "fix: 修复编辑数据集时无法清除关联数据集的编译问题",
"hash": "699031dae72dad7a31806512d30aace591f9d49f",
"date": "2026-02-03 11:09:15 +0000"
},
{
"message": "fix: 恢复前端发送空字符串以支持清除关联数据集",
"hash": "88b1383653d61eee663da6f47fbad63f23959e80",
"date": "2026-02-03 10:57:14 +0000"
},
{
"message": "fix: 修复编辑数据集时无法清除关联数据集的问题",
"hash": "cc6415c4d9738a9dc10ac038cff45f8af2ff94b9",
"date": "2026-02-03 10:57:08 +0000"
},
{
"message": "fix: 修复编辑数据集时无法清除关联数据集的问题",
"hash": "3d036c4cd69c5ec232a297835137ef3312f12c3c",
"date": "2026-02-03 09:35:09 +0000"
},
{
"message": "fix: 修复编辑数据集时清除关联数据集不生效的问题",
"hash": "2445235fd249f0ed4921932a49ed2960fbbbe014",
"date": "2026-02-03 09:23:13 +0000"
},
{
"message": "fix: 上传文件时任务中心立即显示",
"hash": "893e0a158027255d401df15ce520444898170f7e",
"date": "2026-02-03 09:14:40 +0000"
},
{
"message": "feat(scripts): 添加 APT 缓存预装功能解决离线构建问题",
"hash": "da5b18e4231d5de5365ce2707ca68857347fca90",
"date": "2026-02-03 13:16:12 +0800"
}
],
"generated_at": "2026-02-04T02:02:57.026025+00:00"
}