Files
ShowenV2/COMMUNICATION.md
showen 0dcd96d0ff docs: 完善沟通和记录规范
新增 COMMUNICATION.md:
- 沟通方式详细说明(异步/实时/代码/文档)
- 记录规范和格式要求
- 必须记录的内容(技术决策、需求变更、架构调整、Bug、经验)
- 记录管理(位置、检索、归档)
- 沟通礼仪(提问技巧、回复规范、协作态度)
- 完整的沟通示例

更新 TEAM.md:
- 新增沟通方式和记录要求章节
- 明确异步沟通(推荐)和实时沟通(可选)
- 强调实时沟通后必须记录要点
- 详细的记录格式和规范

更新 TEAM_CHAT.md:
- 新增沟通方式说明
- 明确记录要求(必须记录 vs 可以不记录)
- 统一记录格式

核心原则:
- 扁平化沟通,但必须有记录
- 实时沟通后必须记录要点和决策
- 重要信息必须可追溯
- 知识通过记录沉淀和传承
2026-03-12 06:52:15 +08:00

336 lines
7.6 KiB
Markdown
Raw 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.
# ShowenV2 沟通和记录规范
## 沟通原则
### 核心理念
- **扁平化**: 员工之间直接沟通,不需要层层汇报
- **透明化**: 重要信息必须记录,所有人可见
- **可追溯**: 决策和讨论有据可查
- **知识沉淀**: 经验和方案通过记录传承
---
## 沟通方式
### 1. 异步沟通(推荐)
#### 工具
- **TEAM_CHAT.md** - 团队沟通主渠道
- **Git commit** - 代码变更说明
- **文档** - PRD、技术设计文档、API 文档
#### 适用场景
- 技术讨论和方案设计
- 需求澄清和变更
- 问题反馈和解决方案
- 经验分享和最佳实践
- 跨团队协作
#### 优点
- ✅ 自动记录,可追溯
- ✅ 可搜索,易查找
- ✅ 异步处理,不打断工作
- ✅ 深度思考,质量更高
#### 记录格式
```markdown
[时间] 发送者 → 接收者: 内容
示例:
[14:30] 李思琪(视频工程师) → 王浩然(网络工程师):
视频流传输性能问题已解决,采用零拷贝方案。
- 参考代码src/plugins/video/processor.rs:456
- 性能提升:从 30fps 提升到 60fps
- 关键技术tokio::fs::File + 流式传输
```
---
### 2. 实时沟通(可选)
#### 工具
- **kilo 命令** - 启动子任务进行实时协作
- **语音/视频会议** - 复杂问题讨论
- **屏幕共享** - 代码调试和演示
#### 适用场景
- 紧急问题需要快速解决
- 复杂技术方案需要深入讨论
- 头脑风暴和创意碰撞
- 代码调试和问题定位
#### 记录要求
**重要**:实时沟通后必须在 TEAM_CHAT.md 记录要点
```markdown
[时间] 会议记录 - [主题]
参与人:[人员列表]
讨论内容:
1. 问题描述
2. 讨论要点
3. 决策结果
4. 行动计划
```
---
### 3. 代码协作
#### 工具
- **Git commit message** - 代码变更说明
- **代码注释** - 复杂逻辑说明
- **Pull Request** - 代码审查和讨论
#### 记录要求
##### Commit Message 规范
```
<type>: <subject>
<body>
<footer>
```
**Type 类型**:
- `feat`: 新功能
- `fix`: Bug 修复
- `docs`: 文档更新
- `refactor`: 重构
- `perf`: 性能优化
- `test`: 测试
- `chore`: 构建/工具
**示例**:
```
feat: 实现插件动态注册机制
- 新增 ServiceManager::register_plugin() 方法
- 支持运行时加载插件
- 自动检查依赖关系
Closes #123
```
##### 代码注释规范
```rust
/// 公共 API 文档注释(三斜杠)
///
/// # Arguments
/// * `plugin` - 要注册的插件
///
/// # Returns
/// 成功返回 Ok(()),失败返回错误
///
/// # Examples
/// ```
/// manager.register_plugin(Box::new(MyPlugin::new()))?;
/// ```
pub fn register_plugin(&mut self, plugin: Box<dyn Plugin>) -> Result<()> {
// 实现细节注释(双斜杠)
// 为什么这样做,而不是做了什么
}
```
---
### 4. 文档协作
#### 工具
- **Markdown 文档** - PRD、技术设计、API 文档
- **Git** - 版本控制和变更追踪
#### 文档类型
- **PRD** - 产品需求文档
- **技术设计文档** - 架构和实现方案
- **API 文档** - 接口说明
- **用户文档** - 使用指南
- **开发文档** - 开发规范和流程
#### 记录要求
- 文档变更通过 Git 提交
- 重大变更在 TEAM_CHAT.md 通知相关人员
- 文档版本号和更新日期
---
## 记录规范
### 必须记录的内容
#### 技术决策
```markdown
[时间] 技术决策 - [主题]
决策人:[姓名]
背景:[为什么需要决策]
方案:
- 方案A[描述] - 优点/缺点
- 方案B[描述] - 优点/缺点
决策选择方案A
理由:[决策理由]
影响:[影响范围]
```
#### 需求变更
```markdown
[时间] 需求变更 - [功能名称]
提出人:[姓名]
原需求:[原来的需求]
新需求:[变更后的需求]
变更原因:[为什么变更]
影响评估:[对进度、架构的影响]
批准人:[CEO/产品总监]
```
#### 架构调整
```markdown
[时间] 架构调整 - [模块名称]
提出人:[姓名]
当前架构:[现状]
调整方案:[新方案]
调整原因:[为什么调整]
影响范围:[影响的模块]
迁移计划:[如何迁移]
```
#### Bug 和解决方案
```markdown
[时间] Bug 修复 - [Bug 描述]
发现人:[姓名]
严重程度P0/P1/P2/P3
复现步骤:[如何复现]
根因分析:[为什么出现]
解决方案:[如何修复]
代码位置:[文件:行号]
验证:[如何验证修复]
```
#### 经验教训
```markdown
[时间] 经验分享 - [主题]
分享人:[姓名]
场景:[遇到什么问题]
教训:[学到了什么]
最佳实践:[推荐做法]
避免:[不要这样做]
参考:[相关文档/代码]
```
---
### 可以不记录的内容
- ❌ 日常问候和闲聊
- ❌ 简单的代码语法问题(已在代码中解决)
- ❌ 已在文档中详细说明的内容
- ❌ 临时性的、不重要的讨论
---
## 记录管理
### 记录位置
- **TEAM_CHAT.md** - 日常沟通和协作
- **Git commit** - 代码变更
- **文档** - 正式的需求、设计、规范
- **灵魂文件** - 个人经验和技能
### 记录检索
- 使用 Git 搜索历史记录
- 使用文本搜索工具grep、ripgrep
- 按时间顺序浏览 TEAM_CHAT.md
### 记录归档
- 每月归档 TEAM_CHAT.md保留最近 3个月
- 重要决策整理到专门文档
- 经验教训更新到灵魂文件
---
## 沟通礼仪
### 提问技巧
- ✅ 描述清楚问题背景
- ✅ 说明已经尝试的方案
- ✅ 提供相关代码和日志
- ✅ @ 相关人员
- ❌ 不要问"在吗"
- ❌ 不要问"能帮我吗"
### 回复规范
- ✅ 及时回复24小时内
- ✅ 提供具体的解决方案
- ✅ 附上代码示例或文档链接
- ✅ 说明为什么这样做
- ❌ 不要只说"可以"或"不行"
### 协作态度
- ✅ 主动分享知识和经验
- ✅ 尊重他人的意见
- ✅ 建设性的反馈
- ✅ 承认错误,快速改进
- ❌ 不要指责和抱怨
---
## 示例
### 技术讨论示例
```markdown
[14:30] 李思琪 → 王浩然:
我在实现视频流传输时遇到性能瓶颈,帧率只能达到 30fps。
已尝试:
1. 减少内存拷贝 - 效果不明显
2. 使用 SIMD 优化 - 提升 10%
你在 HTTP 插件中是怎么处理大数据传输的?
[14:45] 王浩然 → 李思琪:
我用了零拷贝和流式传输,性能提升明显。
关键技术:
1. tokio::fs::File - 异步文件读取
2. warp::reply::Response::new() - 流式响应
3. 避免 Vec<u8> 缓冲 - 直接传输
参考代码src/plugins/http/routes.rs:234
建议你试试 opencv::Mat 的零拷贝接口。
[15:00] 李思琪 → 王浩然:
感谢!已采用你的方案,帧率提升到 60fps。
更新代码src/plugins/video/processor.rs:456
经验记录:避免不必要的内存拷贝是性能优化的关键。
```
### 跨团队协作示例
```markdown
[10:00] 张婉琳(产品) → 王思远(架构师):
Phase 2 插件市场需求已完成,需要你评审技术可行性。
文档PRD_PLUGIN_MARKET.md
关键需求:
1. 插件动态安装
2. 版本管理
3. 依赖检查
请在本周五前给出技术方案。
[10:30] 王思远(架构师) → 张婉琳(产品):
已阅读 PRD整体可行。
技术方案:
1. 使用 libloading 动态加载 .so/.dll
2. 版本管理用 semver
3. 依赖检查在 ServiceManager 实现
风险:
1. 插件签名验证需要额外工作
2. 沙箱隔离可能影响性能
建议Phase 2 先实现基础功能,安全机制放 Phase 3。
技术设计文档:本周三完成。
[10:45] 张婉琳(产品) → 王思远(架构师):
同意你的建议。安全机制确实可以后续迭代。
请在技术设计文档中说明 Phase 2/3 的功能划分。
@ 刘建国(PM) 请关注进度。
```
---
**文档版本**: v1.0
**最后更新**: 2026-03-12
**负责人**: 陈逸飞 (CEO)