系统化任务实施采用TDD、阶段检查点和结构化提交。通过红-绿-重构循环、80%覆盖率门槛及验证协议,确保质量后再继续。
工作流程模式
功能概述
工作流程模式是一项面向实际任务的技能,主要用于系统地使用 TDD( 试驱动开发) 任务, 并设置了阶段检查点和核查协议;确保每个步骤的质量;
核心要点
- OpenClaw / Moltbot / Clawb。
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
使用与执行
该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
工作流模式
采用测试驱动开发(TDD,Test-Driven Development)方法,结合阶段检查点与验证协议,系统化地实现任务。确保每一步均符合质量要求。
安装
OpenClaw / Moltbot / Clawbot
npx clawhub@latest install workflow-patterns
该技能的作用
为任务实施提供结构化方法:
- 每个任务均执行完整的 TDD 循环(红 → 绿 → 重构)
- 完成前须通过质量门禁(测试、覆盖率、代码规范检查等)
- 关键阶段需经人工审批方可进入下一环节
- Git 提交包含丰富元数据,保障可追溯性
适用场景
建议使用场景:
- 依据计划实施功能特性
- 严格遵循 TDD 方法论
- 对质量验证有明确要求的任务
- 存在代码覆盖率硬性指标的项目
- 团队协作中强调过程可追溯性的流程
不建议使用场景:
- 快速修复或微小变更
- 探索性原型开发
- 尚无测试基础设施的项目
关键词: TDD、实现、测试、覆盖率、检查点、验证、red-green-refactor
TDD 任务生命周期
每个任务共 11 个步骤:
步骤 1:选择下一个任务
阅读计划文档,定位下一个待处理的 [ ] 任务。在同一阶段内按顺序选取任务,禁止跳过或提前执行后续任务。
步骤 2:标记为进行中
更新计划,将该任务状态改为 [~]:
- [~] **Task 2.1**: Implement user validation
步骤 3:RED — 编写失败的测试
在实现逻辑前,先编写定义预期行为的测试用例:
- 如需,创建新测试文件
- 覆盖正常路径(happy path)
- 覆盖边界条件(edge cases)
- 覆盖错误场景(error conditions)
- 运行测试 —— 结果应为 失败(FAIL)
def test_validate_email_valid():
user = User(email="test@example.com")
assert user.validate_email() is True
def test_validate_email_invalid():
user = User(email="invalid")
assert user.validate_email() is False
步骤 4:GREEN — 实现最小可行代码
仅编写使测试通过所需的最少代码:
- 目标是让测试变绿,而非追求完美
- 避免过早优化
- 保持实现简洁
- 运行测试 —— 结果应为 通过(PASS)
步骤 5:REFACTOR — 提升代码可读性
在所有测试均为绿色的前提下,安全地重构代码:
- 提取重复逻辑为公共模块
- 优化命名以增强语义表达
- 消除冗余代码
- 简化复杂逻辑
- 每次修改后均需运行测试 —— 必须持续保持 绿色(GREEN)
步骤 6:验证覆盖率
确认测试覆盖率达标(目标值 ≥ 80%):
pytest --cov=module --cov-report=term-missing
若覆盖率低于 80%:
- 识别未覆盖的代码行
- 为缺失路径补充测试用例
- 重新运行覆盖率检查
步骤 7:记录实施偏差
若实际实现偏离原始计划或引入新依赖项:
- 在
tech-stack.md中登记新增依赖 - 在计划对应任务的注释中说明偏差详情
- 若需求发生变更,同步更新 spec 文档
步骤 8:提交实现代码
生成聚焦明确的 Git 提交:
git commit -m "feat(user): implement email validation - Add validate_email method to User class - Handle empty and malformed emails - Add comprehensive test coverage Task: 2.1"
步骤 9:在计划中记录提交 SHA
将任务标记为完成,并附上对应提交哈希值:
- [x] **Task 2.1**: Implement user validation `abc1234`
步骤 10:提交计划更新
git commit -m "docs: update plan - task 2.1 complete"
步骤 11:重复执行
继续处理下一任务,直至当前阶段全部完成。
阶段完成协议
当某阶段所有任务均已完成后:
1. 识别变更文件
git diff --name-only..HEAD
2. 确保测试覆盖率
针对每个被修改的文件:
- 确认新/修改代码已有对应测试
- 对所涉模块运行覆盖率检查
- 若覆盖率 < 80%,补充测试用例
3. 运行完整测试套件
pytest -v --tb=short
所有测试必须通过。
4. 生成验证清单
## Phase 1 Verification - [ ] User can register with valid email - [ ] Invalid email shows appropriate error - [ ] Database stores user correctly
5. 等待人工审批
向用户呈现验证清单:
Phase 1 complete. Please verify: 1. [x] Test suite passes (automated) 2. [x] Coverage meets target (automated) 3. [ ] Manual verification items (requires human) Respond with 'approved' to continue.
未经明确批准,严禁继续推进。
6. 创建检查点提交
git commit -m "checkpoint: phase 1 complete Verified: - All tests passing - Coverage: 87% - Manual verification approved"
7. 记录检查点 SHA
更新计划中的检查点表格:
## Checkpoints | Phase | SHA | Date | Status | |---------|---------|------------|----------| | Phase 1 | def5678 | 2025-01-15 | verified | | Phase 2 | | | pending |
质量门禁
在将任何任务标记为完成前,必须满足以下全部条件:
| 门禁项 | 要求 |
|---|---|
| 测试 | 全部既有测试通过,新增测试亦通过 |
| 覆盖率 | 新增代码覆盖率 ≥ 80% |
| 代码规范检查(Linting) | 无 linter 报错 |
| 类型检查(Types) | 类型检查器通过(如项目启用) |
| 安全性(Security) | 代码中不含密钥;输入已做有效性校验 |
Git 提交格式
( ): Task:
提交类型(type)说明:
feat— 新增功能fix— 修复缺陷refactor— 不涉及功能或缺陷修复的代码重构test— 新增测试docs— 文档更新chore— 维护类任务(如构建配置、依赖升级等)
偏差处理方式
范围扩展(Scope Addition)
发现规格说明(spec)中未涵盖的新需求:
- 在 spec 中作为新需求正式记录
- 在计划中新增对应任务条目
- 在相关任务注释中注明此扩展
范围缩减(Scope Reduction)
经评估认定某功能非必需:
- 将对应任务标记为
[-](已跳过),并注明原因 - 更新 spec 中的范围(scope)章节
- 在计划或决策日志中记录裁剪依据
技术方案偏差(Technical Deviation)
实际采用的技术方案与原计划不同:
- 在任务条目注释中明确说明偏差
- 若依赖项发生变化,同步更新
tech-stack.md - 解释原定方案不可行的具体原因
- [x] **Task 2.1**: Implement validation `abc1234` - DEVIATION: Used library instead of custom code - Reason: Better edge case handling - Impact: Added email-validator to dependencies
错误恢复机制
GREEN 后测试意外失败
- 禁止进入 REFACTOR 阶段
- 定位具体是哪个测试开始失败
- 回退至最近一次已知的 GREEN 状态
- 重新设计并实现该功能
检查点被驳回
- 在计划中记录驳回原因
- 创建专项任务用于修复问题
- 完成所有整改任务
- 再次申请检查点审批
被外部依赖阻塞
- 将任务标记为
[!],并在旁注中说明阻塞原因 - 检查其余任务是否可并行推进
- 记录预期解决时间或前置条件
任务状态符号表
| 符号 | 含义 |
|---|---|
[ ] |
待处理 |
[~] |
进行中 |
[x] |
已完成 |
[-] |
已跳过 |
[!] |
已阻塞 |
最佳实践
- 绝不跳过 RED 阶段 —— 必须始终先编写失败的测试
- 小粒度提交 —— 每次提交仅包含一个逻辑变更
- 即时更新计划 —— 任务完成后立即同步更新计划文档
- 静待审批 —— 绝不绕过检查点验证环节
- 覆盖率纪律性 —— 不接受低于目标值的覆盖率结果
- 阶段顺序执行 —— 严格按序完成各阶段,不可跳跃或重排
- 偏差必留痕 —— 所有与原计划的出入均须如实记录
- 状态洁净 —— 每次提交后代码均处于可运行状态
严禁行为
- 严禁跳过 RED 阶段 —— 在 TDD 中,先写测试是不可协商的前提
- 严禁未经审批越过检查点 —— 必须等待用户明确确认后方可继续
- 严禁提交未通过测试的代码 —— 每次提交都必须是可工作的稳定状态
- 严禁接受低于 80% 的覆盖率 —— 必须持续补充测试直至达标
- 严禁隐瞒计划偏差 —— 所有偏离原始 spec 的变更均须完整披露
- 严禁跳过或重排阶段 —— 阶段顺序经过精心设计,具备内在逻辑依赖
- 严禁遗漏提交 SHA 记录 —— 可追溯性依赖于任务与 Git 提交的精确关联
热门AI工具
相关专题
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。
0
2026.11.04
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.8万人学习
共6课时 | 54.7万人学习
最新文章