Context
The CI homeboy / Test real-WordPress (wp-codebox playground) smoke phase runs tests/*-smoke.php sequentially and aborts on the first smoke that fails, so latent breakages are revealed one at a time as each is fixed. #2643 fixed the Cannot redeclare class (PRs #2647, #2651). With those gone, the NEXT latent failures surface:
Known remaining failures (all pre-existing on main, unrelated to product PRs)
-
tests/agent-bundle-artifact-rebase-smoke.php → Class "WP_Agent_Package_Artifact_Hasher" not found. The smoke require_onces vendor/wordpress/agents-api/src/Packages/class-wp-agent-package-artifact-hasher.php (line 30) but the class isn't found in the CI playground — the vendored agents-api in the harness is stale / missing that file (or the path/classname drifted). Likely needs a composer update wordpress/agents-api in the harness, or the smoke updated to the current class location/name.
-
tests/agent-bundle-portable-update-smoke.php → flow file step uses unsupported legacy field handler_slug; use handler_slugs and handler_configs AND 5+ assertion failures (existing stale flow payload normalizes step key, package CLI stages PendingActions...). The flow-file fixture uses the legacy handler_slug field the loader now rejects; the normalize/package-CLI assertions reflect product-behavior drift. (Confirmed red on main when run with vendor present.)
Why this matters
These mask each other and make homeboy / Test red on essentially every data-machine PR, forcing merges-past-red all session. Each is independently pre-existing on main.
Fix approach
- Audit the FULL smoke suite under the real-WP harness (not just the first failure): run each
tests/*-smoke.php in a real-WP context and collect ALL failures, so they can be fixed in one pass instead of one-PR-at-a-time.
- For vendor-stale class errors: sync the harness's vendored
agents-api (composer update) or update the smoke's require path/classname.
- For stale fixtures (
handler_slug): migrate to handler_slugs/handler_configs.
- For product-behavior-drift assertions: update the expected values to current behavior (or fix the product if the drift is a real regression).
Acceptance
homeboy / Test goes green on a no-op PR against main (i.e. the harness is clean, not just "clean except known failures").
Constraints
- PR only. Conventional commits (
test:/fix:). Never edit CHANGELOG.md / version strings.
Follow-up to #2643 (which fixed the redeclare class).
Context
The CI
homeboy / Testreal-WordPress (wp-codebox playground) smoke phase runstests/*-smoke.phpsequentially and aborts on the first smoke that fails, so latent breakages are revealed one at a time as each is fixed. #2643 fixed theCannot redeclareclass (PRs #2647, #2651). With those gone, the NEXT latent failures surface:Known remaining failures (all pre-existing on main, unrelated to product PRs)
tests/agent-bundle-artifact-rebase-smoke.php→Class "WP_Agent_Package_Artifact_Hasher" not found. The smokerequire_oncesvendor/wordpress/agents-api/src/Packages/class-wp-agent-package-artifact-hasher.php(line 30) but the class isn't found in the CI playground — the vendoredagents-apiin the harness is stale / missing that file (or the path/classname drifted). Likely needs acomposer update wordpress/agents-apiin the harness, or the smoke updated to the current class location/name.tests/agent-bundle-portable-update-smoke.php→flow file step uses unsupported legacy field handler_slug; use handler_slugs and handler_configsAND 5+ assertion failures (existing stale flow payload normalizes step key,package CLI stages PendingActions...). The flow-file fixture uses the legacyhandler_slugfield the loader now rejects; the normalize/package-CLI assertions reflect product-behavior drift. (Confirmed red on main when run with vendor present.)Why this matters
These mask each other and make
homeboy / Testred on essentially every data-machine PR, forcing merges-past-red all session. Each is independently pre-existing onmain.Fix approach
tests/*-smoke.phpin a real-WP context and collect ALL failures, so they can be fixed in one pass instead of one-PR-at-a-time.agents-api(composer update) or update the smoke's require path/classname.handler_slug): migrate tohandler_slugs/handler_configs.Acceptance
homeboy / Testgoes green on a no-op PR againstmain(i.e. the harness is clean, not just "clean except known failures").Constraints
test:/fix:). Never edit CHANGELOG.md / version strings.Follow-up to #2643 (which fixed the redeclare class).