Workflows were running twice for feature branches: once on push and once
on pull_request. Now push only triggers for main branch, while feature
branches get CI via the pull_request trigger when a PR exists.
This prevents duplicate workflow runs and the confusion of having
one run pass while another fails for the same commit.
- Add yoast/phpunit-polyfills ^2.0 to composer.json for WordPress test suite compatibility
- Define WP_TESTS_PHPUNIT_POLYFILLS_PATH in bootstrap.php before loading WP test framework
- Update actions/cache to v4 (deprecated SHA references cause failures)
- Update actions/setup-java to v4
- Update codacy/codacy-analysis-cli-action to v4 tag (SHA ref not found)
- Update github/codeql-action/upload-sarif to v3
- Add WP_PHPUNIT__DIR and WP_TESTS_DIR environment variables to PHPUnit workflow to fix 'WP_UnitTestCase not found' error
- Increase WordPress Playground server timeout from 60s to 180s with better progress logging to fix timeout failures
- Add conditional checks for SONAR_TOKEN and CODACY_PROJECT_TOKEN to gracefully skip analysis when tokens are not set
- Properly handle server process lifecycle in Playground tests (capture PID, kill on completion)
Replace SHA-based action references with stable version tags:
- actions/setup-node@60edb5dd... → @v4
- shivammathur/setup-php@e6f75134... → @v2
This resolves "action could not be found at URI" errors caused by
GitHub API issues when resolving specific commit SHAs.
🤖 Generated with [Qoder][https://qoder.com]
- Fix phpstan.neon file structure
- Fix Markdown formatting in docs/code-quality-setup.md
- Add proper language specifier to .env code block in README.md
- Add blank lines around code blocks in README.md
- Add newline at end of GitHub workflow file