Files
xiaomihome/miot/MIGRATION_PLAN.md
4566704 3a44cb9e6a feat: 初始化小米 IoT (MIoT) 智能家居 Go 库
- 实现 MIoT 客户端核心功能(MQTT 连接、设备管理、属性读写)
- 支持云端 API 调用与局域网设备发现(mDNS)
- 集成国际化(i18n)多语言支持
- 添加 MIoT 设备规约解析器(spec_parser)
- 包含单元测试与使用示例
2026-06-28 22:05:49 +08:00

112 lines
4.9 KiB
Markdown
Raw Permalink 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.
# Go-MIoT 移植计划
> Python → Go 移植项目总索引 | R1✅ R2✅ R3✅
>
> 最后更新:2026-06-28
## 文件对照表
| 优先级 | Python 文件 | Go 文件 | 状态 | 子文档 |
|--------|------------|---------|------|--------|
| 🔴 P0 | `miot_error.py` (4815) | `miot_error.go` | ✅ 完成 | [07-miot-err.md](./migration/07-miot-err.md) |
| 🔴 P0 | `const.py` (6255) | `const.go` | ✅ 完成 | [08-miot-constant.md](./migration/08-miot-constant.md) |
| 🔴 P0 | `common.py` (7405) | `common.go` | ✅ 完成 | [06-miot-utils.md](./migration/06-miot-utils.md) |
| 🔴 P0 | `miot_storage.py` (31991) | `miot_storage.go` | ✅ 完成 | [05-miot-storage.md](./migration/05-miot-storage.md) |
| 🔴 P0 | `miot_cloud.py` (33922) | `miot_cloud.go` | ✅ 完成 | [03-miot-cloud.md](./migration/03-miot-cloud.md) |
| 🔴 P0 | `miot_client.py` (88963) | `miot_client.go` | ✅ 完成 | [01-miot-client.md](./migration/01-miot-client.md) |
| 🔴 P0 | `miot_device.py` (61669) | `miot_device.go` | ✅ 完成 | [02-miot-device.md](./migration/02-miot-device.md) |
| 🟡 P1 | `miot_spec.py` (67020) | `spec_parser.go` | ✅ 完成 | [09-miot-spec.md](./migration/09-miot-spec.md) |
| 🟡 P1 | `miot_mips.py` (61399) | `mips_client.go` | ✅ 完成 | [10-miot-mips.md](./migration/10-miot-mips.md) |
| 🟡 P1 | `miot_network.py` (14941) | `miot_network.go` | ✅ 完成 | - |
| 🟢 P2 | `miot_mdns.py` (10951) | `miot_mdns.go` | ✅ 完成 | [13-miot-mdns.md](./migration/13-miot-mdns.md) |
| 🟢 P2 | `miot_lan.py` (53181) | `miot_lan.go` | ✅ 完成 | [12-miot-lan.md](./migration/12-miot-lan.md) |
| 🟢 P3 | `miot_i18n.py` (4771) | `miot_i18n.go` | ✅ 完成 | - |
| 🟢 P3 | `web_pages.py` (3584) | `web_pages.go` | ✅ 完成 | - |
**说明**:
- 文件大小括号内为字节数
- OAuth 功能在 `miot_cloud.py` 的 `MIoTOauthClient` 类中(无独立文件)
- 无 `miot_entity.py`(已确认不存在于 Python 版本)
- 无 `miot_oauth.py`(已确认不存在于 Python 版本)
## 分批计划
### 第一批 (P0) — 基础架构 ✅
| 序号 | Python | Go | 状态 |
|------|--------|-----|------|
| 1 | `miot_error.py` | `miot_error.go` | ✅ |
| 2 | `const.py` | `const.go` | ✅ |
| 3 | `common.py` | `common.go` | ✅ |
| 4 | `miot_storage.py` | `miot_storage.go` | ✅ |
| 5 | `miot_cloud.py` | `miot_cloud.go` | ✅ |
| 6 | `miot_client.py` | `miot_client.go` | ✅ |
| 7 | `miot_device.py` | `miot_device.go` | ✅ |
审核 | [BATCH1_REVIEW.md](./BATCH1_REVIEW.md)
### 第二批 (P1) — 高级功能 ✅
| 序号 | Python | Go | 状态 |
|------|--------|-----|------|
| 8 | `miot_spec.py` | `spec_parser.go` | ✅ |
| 9 | `miot_mips.py` | `mips_client.go` | ✅ |
| 10 | `miot_network.py` | `miot_network.go` | ✅ |
审核 | [BATCH2_REVIEW.md](./BATCH2_REVIEW.md)
### 第三批 (P2) — LAN 控制 ✅
| 序号 | Python | Go | 状态 |
|------|--------|-----|------|
| 11 | `miot_mdns.py` | `miot_mdns.go` | ✅ |
| 12 | `miot_lan.py` | `miot_lan.go` | ✅ |
审核 | [BATCH3_REVIEW.md](./BATCH3_REVIEW.md)
### 第四批 (P3) — 附加功能 ✅
| 序号 | Python | Go | 状态 |
|------|--------|-----|------|
| 13 | `miot_i18n.py` | `miot_i18n.go` | ✅ |
| 14 | `web_pages.py` | `web_pages.go` | ✅ |
审核 | [BATCH4_REVIEW.md](./BATCH4_REVIEW.md)
## 进度跟踪
- [x] 第一批:基础架构 (7/7)
- [x] 第二批:高级功能 (3/3)
- [x] 第三批:LAN 控制 (2/2)
- [x] 第四批:附加功能 (2/2)
**总计:14/14 全部完成**
## 编译验证
```
go vet ./... → 无错误
go build ./... → 无错误
```
## 相关文档索引
```
go-miot/
├── MIGRATION_PLAN.md # 本文件(总索引)
├── BATCH1_TASKS.md # 第一批任务提示词
├── BATCH1_REVIEW.md # 第一批审核结果
├── BATCH2_TASKS.md # 第二批任务提示词
├── BATCH2_REVIEW.md # 第二批审核结果
├── BATCH3_TASKS.md # 第三批任务提示词
├── BATCH3_REVIEW.md # 第三批审核结果
├── BATCH4_TASKS.md # 第四批任务提示词
├── BATCH4_REVIEW.md # 第四批审核结果
├── ROUND2_PLAN.md # 第二轮审查计划(方法级对齐度)
├── ROUND2_TASKS.md # 第二轮任务提示词
├── ROUND2_REVIEW.md # 第二轮审核结果(14/14 ✅)
├── ROUND3_PLAN.md # 第三轮审查计划(MQTT 缓存同步)
├── ROUND3_TASKS.md # 第三轮任务提示词(10 项)
├── ROUND3_REVIEW.md # 第三轮审核结果(10/10 ✅)
├── EXAMPLES_PLAN.md # 示例计划(9个示例)
├── EXAMPLES_TASKS.md # 示例任务提示词
└── migration/ # 详细子文档
├── 01-~13-*.md (11个) # 第一轮子文档
└── R2-01~R2-14 (14个) # 第二轮子文档
```