feat: M1.1 完成 + M1.2 启动 — 全量更新

M1.1 收尾:
- 24项 P0/P1/P2 bug 修复 (Rust 107 tests + Flutter 15 tests)
- Flutter App v0.3: cupertino_icons 修复, 单元测试, 调试面板, APK 52.6MB
- 示例插件完善: manifest.json + 请求/响应示范 + 7个测试
- API 文档重写 (以 routes.rs 为唯一权威)
- MILESTONES.md 更新至 100%

M1.2 启动:
- P0: 插件管理 API 闭环 (handle_manager_message Custom 分支 + broadcast_plugin_states)
- ServiceManager 集成测试 8/8 (tests/m1_2_service_manager.rs)
- M1.2 测试计划 (docs/M1.2_TEST_PLAN.md, 18个E2E场景)
- 动态插件系统: auto_rollback + version_manager GC + 路径穿越防护

总计: Rust 115/115 测试, Flutter 15/15 测试, 零 warning

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
showen
2026-03-14 18:12:42 +08:00
parent 8ed9cb2d9d
commit d30c111c71
68 changed files with 8115 additions and 1201 deletions

View File

@@ -0,0 +1,80 @@
# ShowenV2 — 提交历史归档
> 当前状态和待办事项见 `CLAUDE.md`。本文件存放完整提交历史,供参考。
## Phase 1: 骨架 + 功能迁移 (提交 1-11)
| # | 提交 | 内容 | 负责人 |
|---|------|------|--------|
| 1 | `23f4d46` | 项目骨架Cargo.toml, core/ 骨架, plugins/ 空桩 | CEO |
| 2 | `3751c23` | 团队制度:末位淘汰 + 灵魂保存机制 | CEO |
| 3 | `311e4ba` | CEO 灵魂文件 + souls/ 目录 | CEO |
| 4 | `3654af5` | config验证 + StateMachine + WifiPlugin + ScreenPlugin | 全员 |
| 5 | `650d98c` | 全员灵魂文件解锁 + 沟通板 | CEO |
| 6 | `8ed9c93` | BLE/WiFi 状态回传 + WebSocket 编译修复 | 全员 |
| 7 | `45c0a8d` | Video 单元测试 + on_video_completed 逻辑修复 | 全员 |
| 8 | `404196f` | 插件架构审查报告 | 王思远 |
| 9 | `6048831` | 新旧功能差异分析 | 李明哲 |
| 10 | `5af7fc1` | core 集成测试 + bug修复 + API文档重写 + HTTP兼容路由 | CEO+全员 |
| 11 | `4edbd34` | ConfigReloadRequest 闭环P0消除| CEO |
## 第四轮 Opus 团队 (提交 12-17)
| # | 提交 | 内容 | 负责人 |
|---|------|------|--------|
| 12 | `9daf65d` | 暂停时释放防息屏锁 | 赵雨薇 |
| 13 | `6ca5992` | /api/playlist 快照语义 | 李思琪 |
| 14 | `e45573f` | FreeMode 状态随机游走 | 张明远 |
| 15 | `7091008` | BLE GATT notify 落地验证 | 王浩然 |
| 16 | `c48340d` | 插件依赖回归测试 (7 tests) | 周雅婷 |
| 17 | `ff9c6a9` | QA Release 编译与质量报告 | 林晓峰 |
## M1.1 + 动态插件 (提交 18-20)
| # | 提交 | 内容 | 负责人 |
|---|------|------|--------|
| 18 | `7135f28` | 动态插件系统 6 阶段完成 | 全员 |
| 19 | `1863efb` | 修正 `souls/README.md` 团队成员信息 | CEO |
| 20 | `99ee789` | 插件自测机制capabilities + self_test + 3阶段启动 | 全员 |
## DevicePlugin 阶段一 (提交 21-25)
| # | 提交 | 内容 | 负责人 |
|---|------|------|--------|
| 21 | `db48437` | 组织升级:公司统一规范 + inbox 消息系统 | PM 刘建国 |
| 22 | `4d1b830` | Task1: Message enum 扩展 (7个设备类型) | 张明远 |
| 23 | `584f65b` | Task2: DevicePlugin 骨架 + Backend trait | 王思远 |
| 24 | `05235f5` | Task3: Linux ARM64 Backend 实现 | 赵雨薇 |
| 25 | `1827310` | Task4: 7个集成测试 (MockBackend) | 李思琪 |
## DevicePlugin 阶段二 — ScreenPlugin 迁移 (提交 26-30)
| # | 提交 | 内容 | 负责人 |
|---|------|------|--------|
| 26 | `48d1eeb` | plugin-sdk 同步 Device 类型 | 李思琪 |
| 27 | `f060519` | Task1: DeviceCommand 添加 SetCursorVisible | 张明远 |
| 28 | `5310a92` | Task2: LinuxArm64Backend 添加光标控制 | 赵雨薇 |
| 29 | `bf41c45` | Task3: ScreenPlugin 重构为 thin wrapper | 赵雨薇 |
| 30 | `be08c63` | Task4: 新增 4 个光标控制集成测试 | 李思琪 |
## 关键决策记录
1. Rust edition 2018 — 兼容 ARM stable toolchain
2. std::sync::mpsc 消息传递 — VideoPlugin 阻塞线程
3. BLE 双连接修复 — conn_server 回调 + conn_client 同步注册
4. Message Clone — 支持 Broadcast
5. 团队通过文件沟通 — TEAM_CHAT.md + souls/ 持久化
6. kilo 调用 — `kilo run -m openai/gpt-5.4 --auto --dir <dir>`,不用 `-f`
7. 动态插件 C FFI + JSON 序列化
8. ctx-based SendCallback — 替代 thread_local
9. 3阶段启动 — init → test → start
10. DevicePlugin 统一硬件抽象 — Backend trait 多平台适配
## Phase 1 第一轮绩效
| 成员 | 质量 | 完成度 | 效率 | 协作 | 总分 |
|------|------|--------|------|------|------|
| 张明远 | 8 | 8 | 8 | 8 | **8** |
| 李思琪 | 8 | 8 | 8 | 8 | **8** |
| 王浩然 | 8 | 8 | 8 | 8 | **8** |
| 赵雨薇 | 8 | 8 | 8 | 8 | **8** |