Files
ShowenV2/PROGRESS.md
showen becd200150 refactor: 整理项目文件夹结构 + 更新项目状态
- docs/: 团队流程文档 (10个md)
- .showen/: 管理状态文件 (CEO_BACKUP, RECOVERY, TEAM_CHAT, CEO_LOOP)
- 根目录只保留 README.md + PROGRESS.md
- 更新 RECOVERY.md/CEO_BACKUP.md/PROGRESS.md 反映自测机制完成
- 更新 souls/liu-jianguo.md 当前状态
2026-03-13 04:45:35 +08:00

6.4 KiB
Raw Blame History

ShowenV2 — 数字生命窗口平台

愿景

ShowenV2 不仅是全息宠物播放器,而是一个通用数字生命窗口平台

支持的显示模式:

  • 全息显示 — 半透镜 45° 伪全息(当前硬件)
  • VR — 头显输出(未来)
  • AR — 增强现实叠加(未来)
  • 直接屏幕 — 普通显示器/手机/平板

支持的内容类型:

  • 宠物动画 — 视频状态机驱动的虚拟宠物(当前核心)
  • 3D 模型 — 实时渲染 3D 角色/物体
  • 数字人 — AI 驱动的虚拟形象
  • AI 歌姬 — 人工歌姬/虚拟歌手
  • 未来内容 — 通过插件无限扩展

核心理念:平台不关心内容是什么,插件决定一切


项目信息

  • 旧项目: /home/showen/Showen/hologram_player_rust/ (单体全息宠物播放器)
  • 新项目: /home/showen/Showen/ShowenV2/
  • 架构: 跨平台插件内核 + 功能插件
  • 团队: CEO(Claude Opus 4.6) + 4名开发者(GPT-5.4 via kilo)

完成进度

已完成

# 提交 内容 负责人
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 9daf65d 暂停时释放防息屏锁 赵雨薇
13 6ca5992 /api/playlist 快照语义 李思琪
14 e45573f FreeMode 状态随机游走 张明远
15 7091008 BLE GATT notify 落地验证 王浩然
16 c48340d 插件依赖回归测试 (7 tests) 周雅婷
17 ff9c6a9 QA Release 编译与质量报告 林晓峰

实机运行验证 (CEO)

验证项 结果
配置路径修复 ../../../ (configs/ 子目录修正)
--validate 21 个视频路径全部有效
插件初始化 5/5 插件全部正常 start
HTTP API /api/status/api/playlist 正常返回 JSON
framebuffer 检测到 fb0 480x800
GTK backend SSH 环境无 DISPLAY 预期报错,实机 X session 无此问题

M1.1 完成

  • cargo check: 零 warning
  • cargo test: 59/59 通过
  • cargo build --release: 9.4MB ARM aarch64
  • 实机启动: 通过 (SSH 无 GTK 是预期限制)
  • 动态插件系统:6 阶段完成
  • 插件自测机制:已实现 (capabilities + self_test + init→test→start)

最新进展追加

# 提交 内容 负责人
18 7135f28 动态插件系统 6 阶段完成 全员
19 1863efb 修正 souls/README.md 团队成员信息 CEO
20 待提交 插件自测机制capabilities + self_test + 3阶段启动 全员

架构概览

┌─────────────────────────────────────────────────────┐
│                    main.rs                          │
│   加载配置 → 按平台注册插件 → ServiceManager.run()   │
├─────────────────────────────────────────────────────┤
│              core/ (跨平台内核,零业务逻辑)           │
│  ServiceManager  — 插件注册/生命周期/消息路由         │
│  Plugin trait    — 统一插件接口                      │
│  Message enum    — 类型安全的消息协议                │
│  Config          — 配置解析/验证(纯 serde         │
├─────────────────────────────────────────────────────┤
│      动态插件层 (FFI Loader / Runtime / Self-Test)   │
│  plugin_store/   — 动态插件存储、发现、版本载入       │
├─────────────────────────────────────────────────────┤
│              plugins/ (一切皆插件)                   │
│  video/  screen/  http/  ble/  wifi/                │
│  (未来: render/ avatar/ vr/ ar/ voice/ ai/ singer/) │
└─────────────────────────────────────────────────────┘

关键决策记录

  1. Rust edition 2018 — 兼容 ARM 设备 stable toolchain
  2. std::sync::mpsc 消息传递 — VideoPlugin 在阻塞线程运行
  3. BLE 双连接修复 — conn_server 处理回调, conn_client 同步注册
  4. Message Clone — 第二轮给 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 序列化 — 以稳定 ABI + JSON 边界承载跨语言插件交互
  8. ctx-based SendCallback — 用上下文回调替代 thread_local,消除线程绑定隐患
  9. 3阶段启动 — 插件生命周期统一为 init -> test -> start,先自检再对外服务

团队绩效 (Phase 1 第一轮)

成员 任务 质量 完成度 效率 协作 总分
张明远 config.rs 验证 8 8 8 8 8
李思琪 state_machine.rs 8 8 8 8 8
王浩然 wifi/mod.rs 8 8 8 8 8
赵雨薇 screen/mod.rs 8 8 8 8 8

当前质量快照

  • 测试总数:59
  • 测试结果:59/59 通过
  • 编译告警:0 warning
  • 当前里程碑:M1.1 完成