75 lines
No EOL
3.8 KiB
Markdown
75 lines
No EOL
3.8 KiB
Markdown
---
|
||
name: woocommerce-code-review
|
||
description: Review WooCommerce code changes for coding standards compliance. Use when reviewing code locally, performing automated PR reviews, or checking code quality.
|
||
---
|
||
|
||
# WooCommerce 代码评价
|
||
|
||
根据 WooCommerce 编码标准和惯例评价代码更改。
|
||
|
||
## 需要标记的关键违规
|
||
|
||
### 后端 PHP 代码
|
||
|
||
请参考 `woocommerce-backend-dev` 技能以了解详细标准。以这些标准为指导,标记以下违规项及其他类似问题:
|
||
|
||
**架构与结构:**
|
||
|
||
- ❌ **独立函数** - 必须使用类方法([file-entities.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/file-entities))
|
||
- ❌ **对 DI 管理的类使用 `new`** - `src/` 中的类必须使用 `$container->get()`([dependency-injection.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/dependency-injection))
|
||
- ❌ **类位于 `src/Internal/` 之外** - 默认位置,除非明确为公开类([file-entities.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/file-entities))
|
||
|
||
**命名与约定:**
|
||
|
||
- ❌ **camelCase 命名** - 方法/变量/钩子必须使用 snake_case([code-entities.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/code-entities))
|
||
- ❌ **违反 Yoda 条件** - 必须遵循 WordPress 编码标准([coding-conventions.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/coding-conventions))
|
||
|
||
**文档:**
|
||
|
||
- ❌ **缺少 `@since` 注解** - 公开/受保护的方法和钩子必须包含([code-entities.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/code-entities))
|
||
- ❌ **缺少文档块** - 所有钩子和方法必须包含([code-entities.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/code-entities))
|
||
- ❌ **冗长的文档块** - 保持简洁,理想情况下一行([code-entities.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/code-entities))
|
||
|
||
**数据完整性:**
|
||
|
||
- ❌ **缺少验证** - 在删除/修改前必须验证状态([data-integrity.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/data-integrity))
|
||
|
||
**测试:**
|
||
|
||
- ❌ **在测试中使用 `$instance`** - 必须使用 `$sut` 变量名([unit-tests.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/unit-tests))
|
||
- ❌ **缺少 `@testdox`** - 测试方法文档块中必须包含([unit-tests.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/unit-tests))
|
||
- ❌ **测试文件命名** - 必须遵循 `includes/` 与 `src/` 的命名约定([unit-tests.md](.ai/skills/woocommerce-code-review/woocommerce-backend-dev/unit-tests))
|
||
|
||
### UI 文本和文案
|
||
|
||
参考 `woocommerce-copy-guidelines` 技能。标记:
|
||
|
||
- ❌ **UI 中使用标题式大小写** - 必须使用句子式大小写 ([sentence-case.md](.ai/skills/woocommerce-code-review/woocommerce-copy-guidelines/sentence-case))
|
||
- 错误示例:"Save Changes", "Order Details", "Payment Options"
|
||
- 正确示例:"Save changes", "Order details", "Payment options"
|
||
- 例外情况:专有名词 (WooPayments)、首字母缩写词 (API)、品牌名称
|
||
|
||
## 评价方法
|
||
|
||
1. **扫描关键违规项** 上面列出的
|
||
2. **引用具体的技能文件** 当标记问题时
|
||
3. **提供正确的例子** 从技能文档中
|
||
4. **将相关问题分组** 为了清晰
|
||
5. **具有建设性** - 在相关时解释标准存在的原因
|
||
|
||
## 输出格式
|
||
|
||
为每个找到的违规项:
|
||
|
||
```text
|
||
❌ [问题类型]: [具体问题]
|
||
位置: [文件路径和行号]
|
||
标准: [链接至相关技能文件]
|
||
修复: [简要说明或例子]
|
||
```
|
||
|
||
## 注意
|
||
|
||
- 所有详细标准都在 `woocommerce-backend-dev`、`woocommerce-dev-cycle` 和 `woocommerce-copy-guidelines` 技能中
|
||
- 请查阅这些技能以获取完整的上下文和例子
|
||
- 如有疑问,请参考上面链接的特定技能文档 |