Files
SuperBizAgent-java/openspec/changes/phase-1-infrastructure/tasks.md
T
zhuyongxin 26aaf149d8 feat(phase1): 完成全局完善和基础设施文档
Task 6.1: 统一异常处理
- 创建 GlobalExceptionHandler:Spring 全局异常拦截器
  - SessionNotFoundException: 404 会话未找到
  - DocumentProcessException: 400 文档处理异常
  - MaxUploadSizeExceededException: 400 文件大小超限
  - IllegalArgumentException: 400 参数错误
  - Exception: 500 系统异常兜底
- 统一响应格式:Result<T> + HTTP 状态码

Task 6.2: Docker Compose 配置
- 创建 docker-compose.yml:本地开发环境一键启动
  - MySQL 8.0: 数据持久化,端口 3306
  - Redis 7: 会话缓存,端口 6379
  - Milvus Standalone: 向量索引,端口 19530
    - etcd: 元数据存储
    - MinIO: 对象存储
- 数据卷持久化:mysql-data, redis-data, milvus-data
- 健康检查:自动重启机制

Task 6.3: 更新 README.md
- 新增 Phase 1 专属章节:
  - 架构概览(已完成功能清单)
  - 本地开发环境(前置要求、快速开始)
  - 数据库迁移(Flyway 脚本说明)
  - API 文档(文档管理接口示例)
  - 项目结构(分层架构说明)
  - 待办事项(向量化索引、混合检索)
  - 技术决策(包名重构、文本格式、分块策略)

编译验证:BUILD SUCCESS

Progress: 31/33 tasks completed (94%)
2026-06-23 15:50:47 +08:00

53 lines
2.4 KiB
Markdown

# Phase 1 Infrastructure - Tasks
## 1. 数据库与依赖
- [x] 1.1 添加依赖到 pom.xml (spring-boot-starter-data-jpa, mysql-connector-j, flyway-core, spring-boot-starter-data-redis)
- [x] 1.2 创建 Flyway 迁移脚本 V001__create_diagnosis_record.sql
- [x] 1.3 创建 Flyway 迁移脚本 V002__create_case_library.sql
- [x] 1.4 创建 Flyway 迁移脚本 V003__create_api_document.sql
- [x] 1.5 配置 MySQL + Redis + Flyway (application.yml)
## 2. JPA 实体与 Repository
- [x] 2.1 创建 JPA 实体类 DiagnosisRecord
- [x] 2.2 创建 JPA 实体类 CaseLibrary
- [x] 2.3 创建 JPA 实体类 ApiDocument
- [x] 2.4 创建 DiagnosisRecordRepository 接口
- [x] 2.5 创建 CaseLibraryRepository 接口
- [x] 2.6 创建 ApiDocumentRepository 接口
- [x] 2.7 Repository 单元测试 (DiagnosisRecordRepositoryTest)
- [x] 2.8 Repository 单元测试 (CaseLibraryRepositoryTest)
- [x] 2.9 Repository 单元测试 (ApiDocumentRepositoryTest)
## 3. 会话管理
- [x] 3.1 创建 SessionManager 接口
- [x] 3.2 创建 SessionContext 数据类
- [x] 3.3 创建 ToolCall 数据类
- [x] 3.4 创建 RedisSessionManager 实现
- [x] 3.5 创建 SessionConfiguration 配置类
- [x] 3.6 Redis 会话管理单元测试 (RedisSessionManagerTest)
## 4. 代码结构重构
- [x] 4.1 包名重构 (org.example → com.superbiz.agent)
- [x] 4.2 分层结构优化 (controller/service/repository/domain/tool/config/exception)
- [x] 4.3 创建 DTO 类 (DiagnosisRequest, DiagnosisResponse, DocumentUploadRequest, DocumentQueryResponse, Result)
## 5. 文档管理服务
- [x] 5.1 创建 TextExtractor 服务 (仅支持 .md 和 .txt,其他格式通过外部转换服务)
- [x] 5.2 文档分块服务 (DocumentChunkService 已存在,已适配新 DTO)
- [x] 5.3 文档上传接口 (DocumentController#upload, DocumentManagementService#uploadDocument)
- [x] 5.4 文档查询接口 (DocumentController#query, DocumentService#queryDocuments)
- [x] 5.5 文档删除接口 (DocumentController#delete, DocumentService#deleteDocument)
- [ ] 5.6 混合检索工具 (DocumentSearchTool: 精确匹配 + 语义检索 + RRF 融合)
- [ ] 5.7 文档管理集成测试 (DocumentIntegrationTest)
## 6. 全局完善
- [x] 6.1 统一异常处理 (GlobalExceptionHandler, SessionNotFoundException, DocumentProcessException)
- [x] 6.2 Docker Compose 配置 (MySQL + Redis + Milvus)
- [x] 6.3 更新 README.md (Phase 1 安装说明与本地开发指南)