9 Commits

Author SHA1 Message Date
xiangning
f932781040 feat(rag): 集成 Microsoft Extensions AI 框架并重构对话代理服务
- 引入 Microsoft.Extensions.AI.Abstractions 依赖包
- 重构 ChatAgentService 实现,支持多轮对话历史
- 更新 IAIChatAgent 接口,统一使用 ChatMessage 消息格式
- 优化流式输出处理逻辑,提升性能表现

feat(im): 增强即时通讯会话功能支持置顶备注免打扰

- 扩展会话 DTO,新增 IsPinned、IsMuted、OtherUserRemark 属性
- 扩展 ConversationParticipant 实体,新增置顶和备注相关字段
- 实现会话置顶功能,支持按置顶时间和最后消息时间排序
- 添加会话备注功能,私聊场景支持自定义备注名称
- 完善免打扰功能,支持用户级别静音设置

feat(file): 实现文件预览服务支持多种鉴权方式

- 新增文件预览端点,支持流式返回文件内容
- 实现三种鉴权方式:授权头、JWT令牌、内部签名
- 集成 KKFileView 预览服务,支持 Office 文档在线预览
- 优化文件访问安全控制,避免直接暴露 S3 链接

feat(rag): 增强 RAG 会话管理支持知识库关联

- 扩展会话创建功能,支持关联知识库
- 新增会话更新功能,支持重命名和切换知识库
- 优化会话 DTO 结构,支持知识库 ID 关联
- 实现知识库检索增强对话功能

feat(workflow): 废弃旧工作流定义接口迁移到图形化存储

- 标记旧的节点边操作端点为废弃状态
- 实现工作流定义图形化存储迁移
- 统一使用 JSON 格式作为单一事实源
- 优化工作流定义查询性能表现

chore(deps): 更新项目依赖包版本解决版本冲突问题

- 添加 Microsoft.Extensions.AI.Abstractions 依赖
- 显式声明 OpenAI 2.11.0 版本解决 CS1705 冲突
- 更新相关依赖包至兼容版本

fix(host): 修复文件预览响应包装中间件配置问题

- 添加文件预览接口到响应绕过前缀列表
- 避免文件流被 JSON 包装和内存缓冲影响性能
- 优化文件下载和预览的中间件处理逻辑

chore(im): 修复 IM 设计时数据库上下文工厂路径问题

- 优化 ImDbContextDesignTimeFactory 路径查找逻辑
- 修复数据库迁移时连接字符串获取问题
- 更新实体映射命名空间引用
2026-07-03 15:58:58 +08:00
xiangning
8f85a2d3c8 refactor(file): 移除bucket参数并使用默认桶解析器
- 移除AbortMultipartCommand中的BucketName参数
- 移除CompleteMultipartCommand中的BucketName参数
- 移除DeleteFileCommand中的BucketName参数
- 移除DownloadFileQuery中的BucketName参数
- 移除GetFileContentQuery中的BucketName参数
- 移除GetFilePreviewQuery中的BucketName参数
- 移除GetOfficePreviewQuery中的BucketName参数
- 移除InitMultipartCommand中的BucketName参数
- 在各处理器中注入IBucketResolver并获取默认桶
- 更新所有相关端点和请求模型移除bucket参数
- 修改测试代码适配参数变更
- 添加IM离线消息到平台通知中心的跨模块集成实现
2026-07-03 13:32:08 +08:00
xiangning
8e9fcb1b10 feat(platform): 添加头像URL解析服务支持预签名头像访问
- 注册IAvatarUrlResolver服务实现头像objectKey到预签名URL的实时转换
- 在GetCurrentUserQueryHandler中集成头像URL解析功能
- 在UpdateProfileCommandHandler中添加头像URL转换逻辑
- 创建IAvatarUrlResolver接口定义头像引用解析契约
- 实现InProcessAvatarUrlResolver通过MediatR委托file模块生成预签名URL
- 修复Swagger UI单文档场景下的自动加载问题
2026-07-03 10:17:09 +08:00
xiangning
0c654da0d7 feat: platform 模块添加 InitialCreate migration
- 生成 PlatformDbContext 的唯一 InitialCreate migration
- 含 users/roles/permissions/user_roles/role_permissions/refresh_tokens/menus/notifications 全部建表
- build 0/0
2026-07-03 08:51:11 +08:00
xiangning
ff895628e5 refactor: 拆分 platform 模块(Auth/Users/Roles/Permissions/Menus/Notifications 从 rag 独立)
- 新建 modules/platform 三层模块(Domain/Application/Infrastructure)
- 搬入 8 个实体(User/Role/Permission/UserRole/RolePermission/RefreshToken/Menu/Notification)
- 新建 PlatformDbContext(连 platform 库)+ 8 个 EF 配置 + SeedData
- 搬入 92 个 Application CQRS 文件 + 57 个 Host Endpoints
- RagDbContext 瘦身:只留 RAG 专属表(KnowledgeBase/Document/ChatMessage/Conversation)
- Handler 注入改为 PlatformDbContext
- appsettings 新增 DatabaseNames:Platform
- BuildFlowHostModule 注册 PlatformDbContext + DependsOn PlatformApplicationModule
- Conversation 实体去掉 User 导航(跨模块不直接引用实体)
- rag SeedData 清空(平台种子归 platform)
- 暂移除测 platform 功能的 Rag.Tests(后续建 platform 测试项目)
- build 0/0
2026-07-02 18:22:17 +08:00
xiangning
52383d83f3 style: 目录统一 PascalCase 驼峰
- build-flow.host → BuildFlow.Host(子目录也驼峰:Configuration/Endpoints/Hubs/Services)
- build-flow.shared → BuildFlow.Shared
- build-flow.slnx → BuildFlow.slnx
- 同步所有 slnx/ProjectReference/run-dev.sh/架构测试 路径
- 删 macOS 大小写残留重复目录(旧 BuildFlow.Host/BuildFlow.Shared 空壳)
- build 0/0
2026-07-02 17:52:39 +08:00
xiangning
6f8ff793c5 refactor: 目录名统一小写(BuildFlow.Host→build-flow.host,BuildFlow.Shared→build-flow.shared)
- src/BuildFlow.Host → src/build-flow.host
- src/shared/BuildFlow.Shared → src/shared/build-flow.shared
- 同步改 slnx/ProjectReference/run-dev.sh 路径
- csproj 文件名 + AssemblyName/RootNamespace 保持 PascalCase(.NET 规范)
- build 0/0
2026-07-02 17:41:57 +08:00
xiangning
3a245ff0df refactor: 清理 Host 冗余文件 + 归类散文件
- 删 Grpc/Protos 空目录(gRPC 已弃用,Host 用 InProcess)
- 删 Error.cs/ErrorResponse.cs(旧 FastEndpoints 错误格式,已统一用 Shared)
- 删 ValidationErrorResponse.cs(重复,实际用 Shared 版)
- 删 _SharedKernelAliases.cs(异常别名改为 GlobalUsings 直接 using)
- 删 tools/ 迁移脚本(不属项目)
- InProcessFileStorageClient/InProcessUserInfoService 归入 Services/
- GlobalUsings 补 BuildFlow.Shared.Domain.Exceptions
- Host 根目录只剩 5 个核心文件:Program/Module/GlobalUsings/AggregateExceptionHandler/appsettings
- build 0 警告 0 错误
2026-07-02 11:25:27 +08:00
xiangning
d738166261 feat: BuildFlow 后端初始化(.NET 10 模块化单体) 2026-07-02 10:54:23 +08:00