Appearance
ツール概要・設定
各ツールの概要・設定ファイル・エディタ連携をまとめています。コマンド一覧は コマンド一覧 を参照してください。
ツール一覧
- コード品質: PHP CodeSniffer (PHPCS) / PHPCBF、PHPStan
- フォーマット: EditorConfig、Prettier(JS/CSS)
PHPCS
- 設定:
config/phpcs.xml(WordPress-Core / Docs / Extra 採用。一部のWordPress.Filesや Commenting 系 sniff は除外) - VS Code:
.vscode/settings.jsonで保存時自動フォーマット・リアルタイムエラー表示(phpcs/phpcbf 有効)
PHPStan
- 設定:
config/phpstan.neon(レベル 4 使用)、config/phpstan_bootstrap.php - レベル: 0〜9。レベル 4 で型チェック・未定義メソッド検出等を実施。CI では
ci-quality-gate.yml内でcomposer phpstan-ci/composer deptrac-ciを別ステップで実行(ローカル一括はcomposer ci-static-check) - 対象パス(
config/phpstan.neonのpaths/composer phpstan-ci):connector.phpとcore_src/。tests/はexcludePathsで除外(テストダブル・モック向けに本番と同 Level を適用するコスト対効果が低いため)
EditorConfig
- 設定:
.editorconfig(UTF-8 / LF / 末尾改行・行末空白削除。PHP は tab/4、JS・JSON・YAML は space/2) - VS Code: 拡張
editorconfig.editorconfigを推奨
Prettier
- 設定:
.prettierrc、.prettierignore - VS Code: 拡張
esbenp.prettier-vscodeを推奨
Git Hooks(Husky)
pre-commit(コミット時)
- 役割: ステージされたファイルのみ整形・チェック(Husky + lint-staged + Prettier + PHPCS/PHPCBF + PHPStan)
- セットアップ:
composer installの後にnpm installを実行するとprepareで Husky が有効化される。必ず composer を先に実行すること - 動作:
git commitで PHP は phpcbf → phpcs → phpstan、JS/CSS/MD 等は Prettier が実行。修正不可の規約違反があるとコミット失敗 - 手動: コマンドは コマンド一覧 の各ツール表を参照。エディタの「保存時フォーマット」有効化を推奨
pre-push(プッシュ時)
- 役割:
composer phpstan-ciを実行し、connector.phpとcore_src/の静的解析を通す。pre-commit はステージされたファイルのみが対象だが、pre-push では neon の対象パス全体を解析するため、ファイル間の不整合も検出できる - 動作:
git push時に自動実行。エラーがある場合は push が失敗する - スキップ: 緊急時は
git push --no-verifyで回避可能(非推奨)
PR 前の推奨チェック
品質 CI は PR 作成時などに 1 回 GitHub Actions で実行されます(追加 push では自動起動しません)。PR 中に実行するローカルコマンドは コマンド一覧、マージ前の CI 実行手順は CI 運用方針 を参照してください。
IDE と CLI の診断差異
IDE(Intelephense 等)と PHPStan の診断結果が食い違う場合がある。
| 症状 | 原因 | 対処 |
|---|---|---|
| IDE で「Undefined type」だが PHPStan は通る | Intelephense のインデックス未更新、またはワークスペース設定の差異 | Intelephense: Index workspace を実行(コマンドパレット) |
| PHPStan でエラーだが IDE は無警告 | PHPStan のレベル・設定が IDE より厳密 | composer phpstan-ci の出力を優先する |
| 特定ブランチのみエラー | ブランチ間のファイル不整合 | ルートと core_src 双方で依存関係を再インストールし再確認(composer install && cd core_src && composer install && cd .. && composer phpstan-ci) |
診断の優先度: CLI の PHPStan 結果 > IDE の表示。CI で実行されるのは PHPStan であるため、CLI の結果を正とする。
Issue / PR でエラーを報告する際は以下をセットで記載すること:
composer phpstan-ciの実行結果(エラーの有無・件数)- IDE のスクリーンショットまたはエラーメッセージ(差異がある場合)
進捗追跡
- スクリプト:
scripts/track-phpcs-progress.sh。実行はcomposer lint-progressまたは上記スクリプトを直接実行
GitHub Actions
- 品質ゲート:
.github/workflows/ci-quality-gate.yml。PR 作成時等に 1 ジョブで順次実行。追加 push 後は Run workflow(workflow_dispatch)。運用判断は CI 運用方針 を正本とする。 - 設定手順: develop ブランチの保護
関連ドキュメント
- コマンド一覧 — 実行コマンドの一覧
- CI/CD ワークフロー概要 — 各ワークフローの詳細