Skip to content

feat(phpunit): expose canonical discovery-only results - #2273

Merged
chubes4 merged 2 commits into
mainfrom
feat/2272-phpunit-discovery
Aug 16, 2026
Merged

feat(phpunit): expose canonical discovery-only results#2273
chubes4 merged 2 commits into
mainfrom
feat/2272-phpunit-discovery

Conversation

@chubes4

@chubes4 chubes4 commented Aug 16, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add discovery-only to wordpress.phpunit and its recipe builder/CLI contract.
  • Reuse WP Codebox's canonical PHPUnit XML discovery for stable, schema-bound file identities without WordPress, component, project bootstrap, or test execution.
  • Keep discovery recipes mount-only, reject selectors and mixed workflows, and return wp-codebox/phpunit-discovery/v1 directly.
  • Cover custom suffixes, explicit files, exclusions, empty/error boundaries, recipe setup isolation, and direct result transport.

Closes #2272.

Consumer: Extra-Chill/homeboy-extensions#2647.

Verification

  • npm run build
  • npm run test:phpunit-discovery-only
  • npm run test:playground-phpunit-readonly-cache-integration
  • npm run test:phpunit-structured-evidence
  • npm exec -- tsx tests/phpunit-project-autoload.test.ts
  • npm run test:phpunit-runtime-rejection
  • git diff --check

AI assistance

  • Model: GPT-5.6 Sol
  • Tools: OpenCode, Homeboy, and WP Codebox
  • Used for: Root-cause analysis, implementation, adversarial review, and verification. Chris Huber remains responsible for every line.

Also closes #2274 by replacing its scheduler-dependent 500ms assertion with a semantic rejection contract and a separate 5s deadlock guard.

@chubes4
chubes4 merged commit 023b784 into main Aug 16, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

test: remove wall-clock flake from PHPUnit runtime rejection contract feat(phpunit): expose canonical test-file discovery without execution

1 participant