feat: update skills

This commit is contained in:
yangjianbo
2026-02-07 22:21:39 +08:00
parent 00caf0bcd8
commit 7546a56736

View File

@@ -48,7 +48,7 @@ metadata:
1. **没有可重复的证据,不改代码**:至少满足"稳定复现"或"静态分析可严格证明存在"。
2. **多角度确认**:至少使用 3 种不同方式交叉验证P0 可降至 2 种,但必须注明理由)。
3. **先写失败用例**:优先用最小化单元测试/集成测试把 bug "钉住"。
4. **修复必须带测试**:新增/完善测试覆盖 bug 场景与关键边界,确保回归保护。
4. **修复必须带测试**:新增/完善测试覆盖 bug 场景与关键边界,确保回归保护。**改动代码的单元测试覆盖率必须 ≥ 85%**(以变更行为统计口径,非全仓覆盖率)。
5. **不引入新问题**:尽量小改动、低耦合;遵守项目既有分层与编码规范。
6. **修复与审查角色隔离**:修复者不得自审,必须由独立角色执行代码审查。
7. **安全前后双检**:修复前预扫描 + 修复后 diff 复核,两次都通过才算合格。
@@ -135,10 +135,17 @@ metadata:
- 覆盖 bug 场景(必须)
- 覆盖关键边界与回归场景(必须)
- 必要时增加集成/端到端验证(按影响面决定)
- **改动代码覆盖率门禁**:对本次修改/新增的代码,单元测试行覆盖率必须 ≥ 85%。
使用项目对应的覆盖率工具Go: `go test -coverprofile` + 分析变更行覆盖;
JS/TS: `--collectCoverageFrom` 指定变更文件Python: `coverage run` + `coverage report --include`
仅统计本次变更文件中变更行的覆盖情况,不要求全仓覆盖率达标。
若因代码结构原因(如纯配置、接口声明等不可测代码)无法达到 85%
必须在 Beacon 中说明原因和实际覆盖率。
3. 运行质量门禁(与项目 CI 对齐):
- 最小集合:受影响模块的单元测试 + 静态检查lint/格式化/类型检查)。
- 必要时:集成测试、端到端测试、兼容性验证、性能回归检查。
- 不确定时:跑全量测试。
- **覆盖率检查**:修复完成后运行覆盖率工具,确认变更代码覆盖率 ≥ 85%,将结果写入 Beacon。
4. 若引入新失败:优先修复新失败;不要用"忽略测试/删除用例"掩盖问题。
**安全预扫描(与修复并行)**:扫描修复方案**将要触及的代码区域的修复前基线版本**,检查已有安全隐患,评估修复方案是否可能引入新风险。注意:预扫描的对象是修复前的基线代码,而非修复进行中的中间状态。
@@ -151,7 +158,7 @@ metadata:
- **并发**竞态、锁粒度、goroutine 泄漏、通道关闭时序。
- **兼容性**API/配置/数据迁移影响,旧数据是否可读。
- **可维护性**:命名、结构、可读性、分层依赖是否违规。
- **测试质量**:是否会偶发失败?是否覆盖根因?是否能防回归?
- **测试质量**:是否会偶发失败?是否覆盖根因?是否能防回归?变更代码覆盖率是否 ≥ 85%
**安全最终复核**:对修复 diff 审查鉴权/越权、注入SQL/命令/模板)、敏感信息泄露;若修复涉及依赖变更,额外检查依赖安全。主控在启动安全复核子智能体时,必须将第 3 步安全预扫描的 Beacon 结论作为上下文传入 prompt复核者对比两次扫描结果确认未引入新安全问题。
@@ -405,6 +412,7 @@ Worktree: [worktree 实际路径,无则填 N/A]
- path/to/file1.go [新增/修改/删除]
- path/to/file2_test.go [新增/修改/删除]
测试结果: [PASS x/y | FAIL x/y | 未执行]
变更代码覆盖率: [xx% (≥85% PASS / <85% FAIL) | 未检测 | N/A只读角色]
结论: [一句话核心结论]
置信度: [高/中/低](高=有确凿证据;中=有间接证据;低=推测性结论)
@@ -496,6 +504,8 @@ Worktree: [worktree 实际路径,无则填 N/A]
- 测试中禁止使用真实密钥/token/凭据,必须使用 mock 数据
- 测试中禁止使用固定端口号,使用 0 端口让 OS 分配随机端口
- 如果尝试 5 轮后仍无法完成任务,立即输出 FAILED 状态的 Beacon 并停止
- **变更代码覆盖率 ≥ 85%**:修复/验证角色完成后,必须运行覆盖率工具检测本次变更代码的行覆盖率;
低于 85% 时须补充测试直到达标,或在 Beacon 中说明无法达标的原因(如纯接口声明/配置等不可测代码)
- 返回结果必须精简Beacon 的「证据摘要」每条不超过 80 字符
- 禁止在 Beacon 中复制大段源码,只引用 file:line
- Beacon 之前的工作过程输出(调试日志、中间推理)不需要结构化,主控不会读取这些内容
@@ -510,6 +520,7 @@ Worktree: {worktree 路径}
变更文件:
- path/to/file.go [新增/修改/删除]
测试结果: [PASS x/y | FAIL x/y | 未执行]
变更代码覆盖率: [xx% | 未检测 | N/A]
结论: [一句话核心结论]
置信度: [高/中/低]
证据摘要: