name: 信心检查 description: 预实施信心评估,以防止错误方向的工作。在实施前评估5个加权标准的准备情况。
信心检查(预实施门禁)
目的
通过评估实施前的准备情况,防止代价高昂的错误方向工作。花费100-200个token进行评估,以节省5,000-50,000个token在错误方向实施上。
应用时机
- 实施新功能前
- 重大重构前
- 修复复杂bug前
- 当需求似乎模糊时
- 关键词:implement, build, create, add feature, refactor
5项检查评估
评估每个标准并计算加权信心分数:
| 检查项 | 权重 | 验证内容 |
|---|---|---|
| 无重复 | 25% | 搜索代码库中现有功能 |
| 模式合规 | 25% | 对齐MVVM、Coordinator、@Injected依赖注入 |
| 文档验证 | 20% | 检查中间件、protobuf、现有服务 |
| 设计系统应用 | 15% | 使用Loc.*、Color.*、Image(asset:) |
| 根源清晰 | 15% | 理解实际问题与症状 |
决策阈值
分数 >= 90% --> 继续实施
分数 70-89% --> 暂停 - 提供替代方案,询问澄清问题
分数 < 70% --> 停止 - 在继续前请求更多上下文
评分方法
检查1:无重复(25%)
实施前搜索现有解决方案:
# 搜索类似功能
rg "similar_function_name" --type swift
rg "RelatedClass" --type swift
通过:未找到现有实现,或现有代码需要扩展 失败:存在应重用的重复功能
检查2:模式合规(25%)
验证与项目架构的对齐:
- [ ] 使用MVVM模式(ViewModel + View分离)
- [ ] Coordinator用于导航(非直接NavigationLink)
- [ ]
@Injected用于依赖注入 - [ ]
@MainActor在ViewModels上 - [ ] Repository模式用于数据访问
通过:计划方法遵循所有相关模式 失败:提议方案违反既定模式
检查3:文档验证(20%)
确认对现有系统的理解:
- [ ] 检查了相关服务层代码
- [ ] 如果适用,审查了中间件/protobuf定义
- [ ] 阅读了现有相关ViewModels/Coordinators
- [ ] 理解了数据流
通过:有代码探索的具体证据 失败:无代码验证的假设
检查4:设计系统应用(15%)
验证UI实现使用项目标准:
- [ ] 本地化:
Loc.keyName(非硬编码字符串) - [ ] 颜色:
Color.Text.primary、Color.Shape.*(非自定义颜色) - [ ] 图标:
Image(asset: .X24.iconName)(非SF Symbols) - [ ] 排版:设计系统文本样式
通过:所有UI元素使用设计系统 失败:自定义颜色、硬编码字符串或非标准图标
检查5:根源清晰(15%)
确保理解实际问题:
- [ ] 能解释当前行为为何错误
- [ ] 识别了问题起源处(非仅症状)
- [ ] 清楚理解预期行为
通过:能清晰阐述问题与解决方案 失败:仅处理症状或需求不清晰
评估示例
任务:添加新设置切换用于通知偏好
检查1 - 无重复:[通过 - 25%]
- 搜索:rg "notification.*toggle" --type swift
- 找到:无现有切换,仅NotificationService
检查2 - 模式合规:[通过 - 25%]
- 将使用SettingsViewModel(现有)
- 将扩展SettingsCoordinator用于新屏幕
- 将通过@Injected注入NotificationService
检查3 - 文档验证:[通过 - 20%]
- 审查了SettingsViewModel.swift
- 检查了NotificationService协议
- 确认了UserDefaults存储模式
检查4 - 设计系统应用:[通过 - 15%]
- 将使用Loc.Settings.notifications
- 将使用DesignSystem中的Toggle
- 将使用Color.Text.primary
检查5 - 根源清晰:[通过 - 15%]
- 用户需要精细通知控制
- 当前仅全局开关存在
- 需要每类别切换
总分:100% --> 继续
快速检查清单格式
为更快评估,使用此简化格式:
信心检查:
[ ] 无重复找到(25%)
[ ] 遵循MVVM/Coordinator/DI模式(25%)
[ ] 验证现有代码/文档(20%)
[ ] 使用Loc/Color/Image设计系统(15%)
[ ] 根源理解(15%)
分数:___% --> [继续/暂停/停止]
跳过时机
跳过信心检查当:
- 琐碎更改(拼写错误、简单重命名)
- 直接用户指令带清晰需求
- 跟进已验证实施
投资回报率
| 场景 | 无检查 | 有检查 |
|---|---|---|
| 重复实施 | 5,000+ token浪费 | 100 token节省 |
| 错误架构 | 10,000+ token返工 | 150 token早期捕获 |
| 缺少上下文 | 8,000+ token重做 | 200 token先询问 |
经验法则:如果实施将花费>500 token,先花费100-200进行信心检查。
导航:此技能与ios-dev-guidelines和design-system-developer集成以进行模式验证。