Files
bttoxin-pipeline/@fix_plan.md

86 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# BtToxin Pipeline 开发任务清单
## 当前阶段: CRISPR-Cas 模块开发 (P0)
### Phase 1: 基础设施与检测
- [x] **C1.1**: 创建 `crispr_cas` 目录结构 (scripts, docs, tests)
- [x] **C1.2**: 激活 `pixi.toml` 中的 `[feature.crispr]` 环境依赖
- [x] **C1.3**: 实现 `crispr_cas/scripts/detect_crispr.py` (CRISPRCasFinder 包装器)
- [x] **C1.4**: 编写检测模块单元测试 `tests/test_detect_crispr.py`
### Phase 2: 融合分析 (Fusion Analysis)
- [x] **C2.1**: 实现 `crispr_cas/scripts/fusion_analysis.py` (Spacer-Toxin 关联)
- [x] **C2.2**: 实现基因组位置映射逻辑
- [x] **C2.3**: 编写融合分析测试 `tests/test_fusion_analysis.py`
### Phase 3: 整合与可视化
- [x] **C3.1**: 修改 `bttoxin_shoter.py` 集成 CRISPR 评分参数
- [x] **C3.2**: 更新 `plot_shotter.py` 添加 CRISPR 可视化面板
- [x] **C3.3**: 更新 API 支持 CRISPR 参数输入 (Backend updated)
## 下一阶段: 前端 CRISPR 集成 (P0)
### Phase 4: 前端界面更新
- [x] **F4.1**: 在 `TaskSubmitView.vue` 添加 CRISPR 参数开关和权重滑块
- [x] **F4.2**: 更新 `TaskMonitorView.vue` 展示 CRISPR 分析状态
- [x] **F4.3**: 在结果页面展示 CRISPR 融合分析结果 (UI参数展示已完成结果展示待后端集成)
## 后续计划: 任务执行集成 (P1)
- [x] **E1.1**: 更新 `tasks.py` 调用 `detect_crispr.py`
- [x] **E1.2**: 更新 `tasks.py` 调用 `fusion_analysis.py`
- [x] **E1.3**: 更新 `bttoxin_shoter.py` 使用 CRISPR 结果 (Worker integration complete)
## 已完成 (上一阶段)
- [x] **2025-01-14**: Docker 部署修复与上线 (Traefik/Postgres/Redis)
- [x] **2025-01-14**: 后端国际化 (i18n)
- [x] **2025-01-14**: 文档更新 (AGENTS.md, DOCKER_DEPLOYMENT.md)
- [x] **2025-01-14**: 基础功能 (F1-F5, B1-B3)
## 参考文档
## 参考文档
- Shotter 算法原理: `docs/shotter_math_full_zh_typora.md`
- CRISPR 实现计划: `docs/CRISPR_IMPLEMENTATION_PLAN.md`
- UI/UX 设计计划: `docs/UI_UX_DESIGN_PLAN.md`
- 现有前端代码: `frontend/src/`
- Pixi 环境配置: `pixi.toml`
## 部署状态
### 当前状态 (2025-01-14)
- **Traefik**: ✅ Running (traefik:v3.5.3)
- **Domain**: ✅ Configured (bttiaw.hzau.edu.cn)
- **SSL/HTTPS**: ✅ Working (self-signed cert)
- **Routing**: ✅ Traefik routing to domain OK
- **Docker Build**: ✅ **SUCCESS** - Image built and service running
- **Health Check**: ✅ Passed (internal curl test)
### 部署问题 (已解决)
**Fixed**:
- Docker registry 401 error: Switched to `docker.m.daocloud.io`
- Frontend build errors: Fixed missing icons and types
- Backend dependencies: Added missing python packages
- Import errors: Fixed missing classes in backend models
### 部署步骤
**Standard Deployment**
```bash
# Build and start services
docker compose -f docker/compose/docker-compose.traefik.yml up -d --build
# View logs
docker logs -f bttoxin-pipeline
```
### 完整部署流程
Once registry issue is resolved:
1. Build production image: `docker build -f docker/dockerfiles/Dockerfile.traefik -t bttoxin-prod .`
2. Deploy with docker-compose: `docker-compose -f docker/compose/docker-compose.traefik.yml up -d`
3. Verify deployment: `curl -k https://bttiaw.hzau.edu.cn`
4. Check logs: `docker logs bttoxin-pipeline`