关于 wp-phpstan-review
面向 WordPress 项目中 PHPStan 配置的审查技能,帮助开发者评估配置、WordPress 扩展与存根、基线、分析范围及 CI 工作流。
主要功能
- 01PHPStan 配置审查
- 02WordPress 扩展与存根检查
- 03基线和忽略项审查
- 04分析范围评估
- 05CI 工作流检查
适用场景
- 01审查 PHPStan 配置文件
- 02规划静态分析的引入
- 03审计基线与忽略的错误
- 04比对本地和 CI 分析命令
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jorgerosal/ wordpress-skills --skill wp-phpstan-review安装后在 Claude Code 中输入/wp-phpstan-review确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/baseline-and-ci.mdconfig-and-bootstrap.mdsample-phpstan.neon.distwordpress-stubs-guide.md详细介绍
WordPress PHPStan 审查技能
概述
为 WordPress 项目中的 PHPStan 提供系统化审查指南。核心原则: 静态分析应当足够严格,能够发现真实错误,同时又不产生噪声;WordPress 专用扩展或桩文件也应有意配置并接入。审查范围包括配置文件、包含项、基线、CI 集成、分析路径、引导文件、WordPress 桩文件以及渐进式采用策略。
适用场景
适用于:
- 审查
phpstan.neon、phpstan.neon.dist或 CI 配置 - 规划在 WordPress 插件或主题中采用 PHPStan
- 审计基线用法或忽略的错误
- 审查
szepeviktor/phpstan-wordpress的配置 - 检查分析范围、引导文件或桩文件配置
不适用于:
- 运行时性能审查
- 不以静态分析为重点的 PHPUnit 或浏览器测试策略
- 与分析配置无关的一般 PHP 重构
代码审查工作流
-
识别分析入口
phpstan.neon/phpstan.neon.dist- Composer
require-dev - CI 工作流和脚本
- 引导文件或桩文件
-
先检查基础配置
- 配置文件命名和包含项
- 级别和分析路径
- 排除项和引导文件
- WordPress 专用扩展/桩文件是否确实已加载
-
审查基线和忽略策略
- 使用基线逐步引入分析,而不是永久掩盖新问题
- 忽略的错误应是有意设置且可供审查的
- 新代码仍应遵循更高标准
-
审查 CI 易用性
- 命令具有确定性
- 配置路径正确
- 失败行为合理
- 本地配置与 CI 配置之间不会意外出现偏差
-
对发现的问题分类
- CRITICAL: PHPStan 看似已配置,实际却未分析项目代码;缺少 WordPress 扩展;基线无期限地掩盖所有问题
- WARNING: 排除范围过广;基线工作流过时;配置拆分令人困惑;分析路径过窄
- INFO: 可以提高级别、说明引导行为或收紧忽略规则
特定文件类型检查
PHPStan 配置
- CRITICAL:配置没有分析任何有意义的项目路径
- WARNING:
ignoreErrors或排除项范围过广 - WARNING:已安装 WordPress 扩展,但未配置扩展安装器时没有将其纳入配置
- INFO:可以将本地覆盖项拆分到
phpstan.neon,并基于已提交的.dist文件进行配置
基线文件
- WARNING:随意重新生成基线,而不是有意修复问题
- WARNING:分析配置看似仍不完整,却使用了基线
- INFO:可以说明何时应刷新基线,何时应修复发现的问题
CI 和 Composer
- WARNING:CI 命令与文档记录的本地命令存在实质性差异
- WARNING:
require-dev包含桩文件/扩展,但配置未正确使用它们 - INFO:可以添加更清晰的脚本或输出格式
快速检测搜索模式(PST-21)
使用以下 rg 命令快速查找 PHPStan 配置。
配置和 CI 发现
rg -n "phpstan|phpstan\\.neon|phpstan\\.neon\\.dist|phpstan-baseline" . -g '*.{neon,php,json,md,yml,yaml}'
rg -n "vendor/bin/phpstan|composer .*phpstan|phpstan analyse" . -g '*.{json,md,yml,yaml,sh}'
WordPress 专用配置
rg -n "szepeviktor/phpstan-wordpress|php-stubs/wordpress-stubs|extension\\.neon" . -g '*.{json,neon,md}'
rg -n "bootstrapFiles|scanFiles|scanDirectories|paths|ignoreErrors|includes:" . -g '*.neon*'
参考文件
references/config-and-bootstrap.md- 配置结构、包含项、分析路径、引导文件以及 WordPress 扩展接入references/baseline-and-ci.md- 基线策略、CI 集成和推广启发式references/wordpress-stubs-guide.md-phpstan-wordpress、WordPress 桩文件以及 WordPress 静态分析中的常见权衡references/sample-phpstan.neon.dist- 适用于 WordPress 插件或主题的共享配置文件示例
输出格式(PST-23)
对于每个发现的问题,请包含:
- 严重性:
CRITICAL、WARNING或INFO - 文件和行号
- 静态分析问题摘要
- 该问题为何会影响 WordPress PHPStan 的覆盖率或信号质量
- 建议的修复方案
如果没有发现问题,请明确说明,并提及任何残余风险,例如基线增长、分析范围过窄或未记录的本地覆盖项。
评论
支持 Markdown