Summary
Code standards are enforced unevenly across the package, and there is no committed static-analysis or coding-standards configuration.
Observations
declare(strict_types=1) appears in exactly one of ~20 non-test files (Integration/HttpRequestTrait.php). That file is also the best-documented and most defensively written (fail-closed blocking of unmocked HTTP requests) — a good quality bar for the rest of the package to reach.
- No PHPCS ruleset or PHPStan config is committed, so style and static analysis are not gated in CI (
.github/workflows runs the test suites only).
Proposed direction
- Add a PHPCS ruleset (e.g. based on the standard WP Media convention) and a PHPStan config, wired into CI as non-blocking first, then blocking.
- Adopt
HttpRequestTrait as the reference style (strict types, full docblocks) and bring files up to it opportunistically as they're touched — not a big-bang rewrite.
This is a maintainability/consistency enhancement, not a bug.
Found during an audit of WP Rocket's integration test suite, which depends on this package.
Summary
Code standards are enforced unevenly across the package, and there is no committed static-analysis or coding-standards configuration.
Observations
declare(strict_types=1)appears in exactly one of ~20 non-test files (Integration/HttpRequestTrait.php). That file is also the best-documented and most defensively written (fail-closed blocking of unmocked HTTP requests) — a good quality bar for the rest of the package to reach..github/workflowsruns the test suites only).Proposed direction
HttpRequestTraitas the reference style (strict types, full docblocks) and bring files up to it opportunistically as they're touched — not a big-bang rewrite.This is a maintainability/consistency enhancement, not a bug.
Found during an audit of WP Rocket's integration test suite, which depends on this package.