Initial commit

This commit is contained in:
2026-06-30 15:14:37 +08:00
commit 15dab96872
311 changed files with 95639 additions and 0 deletions
+283
View File
@@ -0,0 +1,283 @@
# MeshRay 项目问题修复总览
**最后更新**: 2026-03-24
**状态**: 🟢 进行中
**总体进度**: 0% (0/61)
---
## 📊 问题统计总览
| 优先级 | 数量 | 已完成 | 进行中 | 未开始 | 完成率 |
|--------|------|--------|--------|--------|--------|
| **P0 - 紧急** | 5 | 0 | 0 | 5 | 0% |
| **P1 - 高** | 6 | 0 | 0 | 6 | 0% |
| **P2 - 中** | 50+ | 0 | 0 | 50+ | 0% |
| **总计** | **61+** | **0** | **0** | **61+** | **0%** |
---
## 🔴 P0 - 必须立即修复(5 个)
### 安全问题(2 个)
| # | 问题 | 文件 | 状态 | 负责人 | 截止日期 |
|---|------|------|------|--------|----------|
| P0-1 | 使用 `math/rand` 生成密码 | `internal/service/user.go:18` | 🔴 TODO | @dev-a | 2026-03-27 |
| P0-2 | 固定模式生成加密密钥 | `internal/config/config.go:153` | 🔴 TODO | @dev-a | 2026-03-27 |
**影响**:
- 密码可被预测
- 所有实例使用相同加密密钥
**修复方案**:
- 使用 `crypto/rand` 替代 `math/rand`
- 每个实例启动时生成唯一密钥
---
### 跨平台兼容(1 个)
| # | 问题 | 文件 | 状态 | 负责人 | 截止日期 |
|---|------|------|------|--------|----------|
| P0-3 | Linux 特定命令,Windows/macOS不兼容 | `internal/ctr/wg.go:378,464` | 🔴 TODO | @dev-b | 2026-03-28 |
**影响**:
- Windows/macOS 无法运行
**修复方案**:
- 使用 build tag 分离平台特定代码
- 创建 `wg_linux.go`, `wg_windows.go`, `wg_darwin.go`
---
### 资源泄漏(2 个)
| # | 问题 | 文件 | 状态 | 负责人 | 截止日期 |
|---|------|------|------|--------|----------|
| P0-4 | TUN 设备创建后未保存引用 | `internal/ctr/wg.go:414-418` | 🔴 TODO | @dev-b | 2026-03-28 |
| P0-5 | wgDevice 未保存引用 | `internal/ctr/wg.go:433` | 🔴 TODO | @dev-b | 2026-03-28 |
**影响**:
- 长时间运行后资源耗尽
- 无法管理/关闭 WG设备
**修复方案**:
- 在 WGManager 中添加 map 保存引用
- Stop() 方法中统一关闭
---
## 🟠 P1 - 本迭代修复(6 个)
### 错误处理(3 个)
| # | 问题 | 文件 | 状态 | 负责人 | 截止日期 |
|---|------|------|------|--------|----------|
| P1-1 | ctr 初始化错误未返回 | `internal/api/server.go:168` | 🟡 TODO | @dev-a | 2026-04-01 |
| P1-2 | CreateNetwork 失败不回滚 | `internal/service/network.go:85-92` | 🟡 TODO | @dev-a | 2026-04-02 |
| P1-3 | AddPeer 错误只记录不处理 | `internal/service/device.go:115` | 🟡 TODO | @dev-a | 2026-04-01 |
**影响**:
- 错误被吞掉,导致后续问题
- 数据不一致
---
### 类型安全(1 个)
| # | 问题 | 文件 | 状态 | 负责人 | 截止日期 |
|---|------|------|------|--------|----------|
| P1-4 | 类型断言无检查 | `internal/service/ddns.go:187` | 🟡 TODO | @dev-b | 2026-04-01 |
**风险**: 可能 panic
---
### 安全配置(1 个)
| # | 问题 | 文件 | 状态 | 负责人 | 截止日期 |
|---|------|------|------|--------|----------|
| P1-5 | CORS 允许所有来源 `*` | `internal/api/middleware/auth.go:288` | 🟡 TODO | @dev-b | 2026-04-02 |
**风险**: CSRF 攻击
---
### 编译问题(1 个)
| # | 问题 | 文件 | 状态 | 负责人 | 截止日期 |
|---|------|------|------|--------|----------|
| P1-6 | Go 版本 `1.25.0` 不存在 | `go.mod` | 🟡 TODO | @dev-a | 2026-04-01 |
**影响**: 无法编译
---
## 🟡 P2 - 下迭代修复(50+ 个)
### 前端 API 未对接(30+ 个)
**模块分布**:
| 模块 | 文件数 | TODO 数 | 状态 | 负责人 |
|------|--------|---------|------|--------|
| Settings | 5 | 10+ | 🔴 TODO | @frontend-a |
| Monitor | 4 | 8+ | 🔴 TODO | @frontend-b |
| Networks | 6 | 12+ | 🔴 TODO | @frontend-a |
**预计完成**: Sprint 3-4 (2 周)
---
### 后端功能未完成(10+ 个)
| 功能 | 状态 | 优先级 | 预计工时 |
|------|------|--------|----------|
| DDNS 同步完整实现 | 🔴 TODO | 中 | 2 天 |
| MeshSeed 生成和解析 | 🔴 TODO | 中 | 1 天 |
| Watchdog 监控机制 | 🔴 TODO | 低 | 1 天 |
| 告警规则引擎 | 🔴 TODO | 低 | 2 天 |
| 审计日志导出 | 🔴 TODO | 低 | 1 天 |
---
### 并发安全(5+ 个)
| # | 问题 | 文件 | 状态 | 优先级 |
|---|------|------|------|--------|
| P2-1 | strategy.go channel 无锁保护 | `core/connect/strategy.go` | 🔴 TODO | 中 |
| P2-2 | wg.go 并发访问无锁 | `internal/ctr/wg.go` | 🔴 TODO | 中 |
---
### 依赖清理(4 个)
| # | 未使用的依赖 | 状态 | 优先级 |
|---|-------------|------|--------|
| P2-1 | github.com/some/unused v1.0.0 | 🔴 TODO | 低 |
---
## 📅 时间线
```mermaid
gantt
title MeshRay 问题修复时间线
dateFormat YYYY-MM-DD
section P0 紧急
安全修复 :active, p0a, 2026-03-24, 2d
跨平台兼容 :p0b, after p0a, 2d
资源管理修复 :p0c, after p0b, 1d
section P1 重要
错误处理完善 :p1a, after p0c, 2d
类型安全和CORS :p1b, after p0c, 2d
section P2 优化
前端 API 对接 :p2a, after p1a, 7d
后端功能完善 :p2b, after p1a, 5d
并发安全加固 :p2c, after p2a, 3d
```
---
## 🎯 里程碑
### M1: P0 修复完成(目标:2026-03-28
- [x] ~~安全漏洞修复~~
- [ ] 跨平台兼容
- [ ] 资源泄漏修复
### M2: P1 修复完成(目标:2026-04-02
- [ ] 错误处理完善
- [ ] 类型安全
- [ ] 安全配置
- [ ] 编译正常
### M3: P2 修复完成 50%(目标:2026-04-10
- [ ] 前端 API 对接 50%
- [ ] 核心功能完善
### M4: P2 全部完成(目标:2026-04-17
- [ ] 前端 API 对接 100%
- [ ] 所有功能完善
- [ ] 并发安全
- [ ] 依赖清理
---
## 📊 每日站会模板
```markdown
## YYYY-MM-DD 站会
### 昨日完成
- [姓名] 修复了 P0-X: [问题描述]
- [姓名] 完成了 P1-Y: [问题描述]
### 今日计划
- [姓名] 修复 P0-Z: [问题描述]
- [姓名] 开始 P2-A: [问题描述]
### 阻碍
- [需要讨论的问题]
### 决策
- [达成的共识]
```
---
## 🧪 测试要求
### P0 修复测试
- ✅ NIST 随机性测试
- ✅ 72 小时压力测试
- ✅ 跨平台编译测试
- ✅ 内存泄漏检测
### P1 修复测试
- ✅ 单元测试覆盖率 > 80%
- ✅ 集成测试通过
- ✅ 回归测试通过
### P2 修复测试
- ✅ 端到端测试
- ✅ 性能基准测试
- ✅ 并发 race detection
---
## 📝 相关文档
- [详细修复计划](./项目问题修复计划.md)
- [Issue 模板](../.github/ISSUE_TEMPLATE/templates.md)
- [Service 层架构详解](./Service 层架构详解.md)
- [Core 模块重构报告](./Core 模块重构完成报告_v3.0.md)
---
## 🔗 快速链接
### Gitea
- [Issues](https://git.zkcoi.com/zkcoi/meshray/issues)
- [Pull Requests](https://git.zkcoi.com/zkcoi/meshray/pulls)
- [Projects](https://git.zkcoi.com/zkcoi/meshray/projects)
### CI/CD
- [CI/CD](https://git.zkcoi.com/zkcoi/meshray/actions)
---
## 📞 联系方式
- **项目负责人**: @zkcoi
- **技术负责人**: @tech-lead
- **开发团队**: @dev-team
---
*最后更新*: 2026-03-24
*下次更新*: 每日站会后
*维护者*: MeshRay Team