3.9 KiB
3.9 KiB
Core 模块与 README 对齐进度报告
✅ 已完成的目录结构调整(2026-03-24)
1. connect/ 目录 ✅ 完全对齐
| README 规划 | 实际文件 | 状态 |
|---|---|---|
strategy.go |
✅ strategy.go |
✅ |
direct.go |
✅ direct.go |
✅ |
fake_tcp.go |
✅ fake_tcp.go |
✅ |
real_tcp.go |
✅ real_tcp.go |
✅ |
turn.go |
✅ turn.go |
✅ |
ice.go |
✅ ice.go |
✅ |
ws.go |
✅ ws.go |
✅ |
| - | ✅ turn_quic.go |
✅ 合理扩展 |
2. client/ 目录 ✅ 完全对齐
| README 规划 | 实际文件 | 状态 |
|---|---|---|
stun_client.go |
✅ stun_client.go |
✅ |
turn_client.go |
✅ turn_client.go |
✅ |
ws_client.go |
✅ ws_client.go |
✅ |
3. transport/ 目录 ⚠️ 部分对齐
| README 规划 | 实际文件 | 状态 |
|---|---|---|
bind_port.go |
✅ bind_port.go |
✅ |
relay.go |
✅ relay.go |
✅ 重构版 |
wgparse.go |
✅ wgparse.go |
✅ 新建 |
4. core/ 根目录 ⚠️ 部分对齐
| README 规划 | 实际文件 | 状态 |
|---|---|---|
core.go |
✅ core.go |
✅ |
engine.go |
✅ engine.go |
✅ 新建 |
bind.go |
✅ bind.go |
✅ 重命名(原 connection_manager.go) |
metrics.go |
✅ metrics.go |
✅ 新建 |
5. pool/ 目录 ✅ 已创建
| README 规划 | 实际文件 | 状态 |
|---|---|---|
connpool.go |
✅ connpool.go |
✅ 新建 |
❌ 待完成的代码重构
问题:core.go 引用了旧的 API
错误列表:
core\core.go:36:25: undefined: transport.Interceptor
core\core.go:78:34: undefined: connect.NewFakeTCPFactory
core\core.go:81:34: undefined: connect.NewRealTCPFactory
core\core.go:84:57: undefined: connect.TURNProtocolUDP
core\core.go:87:57: undefined: connect.TURNProtocolTCP
core\core.go:228:23: c.relay.Dial undefined
core\core.go:246:28: undefined: transport.NewInterceptor
core\core.go:247:10: c.relay.SetInterceptor undefined
需要修复的文件:
core/core.go- 更新为使用新的 APIcore/connect/fake_tcp.go- 确认工厂函数名core/connect/real_tcp.go- 确认工厂函数名core/connect/turn.go- 确认协议类型定义
📊 对齐进度
目录结构对齐:95% ✅
| 目录 | 进度 | 说明 |
|---|---|---|
connect/ |
✅ 100% | 所有文件已对齐 |
client/ |
✅ 100% | 所有文件已对齐 |
transport/ |
✅ 100% | 所有文件已创建 |
pool/ |
✅ 100% | 已创建 |
| 根目录 | ✅ 100% | engine.go, bind.go, metrics.go 已创建 |
代码重构对齐:70% ⏳
| 模块 | 进度 | 说明 |
|---|---|---|
connect/ |
✅ 100% | 工厂模式已完成 |
client/ |
✅ 100% | 协议客户端已完成 |
transport/ |
✅ 100% | Bind/Relay/WGParse 已完成 |
core.go |
⏳ 50% | 需要更新旧 API 引用 |
🔧 下一步行动
P0 - 立即修复(阻塞编译)
-
修复 core.go 中的 Interceptor 引用
// 删除或注释掉 // interceptor *transport.Interceptor -
修复工厂函数调用
// 检查正确的工厂函数名称 connect.NewFakeTCPFactory → ? connect.NewRealTCPFactory → ? -
修复 TURN 协议类型
connect.TURNProtocolUDP → ? connect.TURNProtocolTCP → ? -
修复 Relay.Dial 调用
c.relay.Dial → c.relay.DialPeer (或其他正确方法)
P1 - 后续优化
- 完善 turn.go 实现 - 调用 client/turn_client.go
- 验证 engine.go 集成 - 确保引擎正确启动
- 测试连接池 - 验证 connpool.go 的功能
- 添加单元测试 - 为新创建的文件添加测试
创建时间:2026-03-24 01:45
版本:v2.1.0
目录对齐:✅ 95% | 代码重构:⏳ 70%