Repository navigation
ci: parallelize the suite by test file (see Consiliency/pmcp#383) - #399
Merged
Merged
Conversation
ViperJuice
marked this pull request as ready for review
October 14, 2026 21:35
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Run the full suite with pytest-xdist (
-n auto --dist loadfile) so CI finishes within its existing 45-minute limit. Each test file stays on one worker. Worker processes retain their own environment, cwd, module state, temp roots, global resets and spawn-audit checks. The R22 guard still requires exactly one full-suite invocation with the same test selection and coverage floor. Local pytest remains sequential by default.Add the dev dependency and lockfile entries, update the guarded command and contributor instructions, and bind the singleton-lock test socket relative to its temp directory to fit the AF_UNIX path limit. Cancellation tests require successful real group SIGKILL calls and completed child waits independently of asyncio's known 255 reaping fallback, tracked in #391. Performance tests retain their adversarial inputs and compare CPU cost for 4x input: a generous 8x growth ceiling tolerates runner variation while rejecting quadratic growth (16x).
Validation at 9fdad5b: all eight required GitHub checks pass; the test job took 12m35s. The full suite on ai passed with 13006 passed, 32 skipped and one expected failure in 162.29 seconds. All 17 keyword tests also pass with coverage and two workers; ruff check, format and diff checks pass. An in-memory restoration of the original backtracking regex is rejected by the scaling assertion (roughly 16x CPU growth for 4x input). The cancellation changes passed 98 targeted tests at ebb5cec; a forced exit-status-255 probe passed, and a leader-only kill mutant was rejected.
The earlier serial measurement on ai was 1323.34 seconds, compared with 162.29 seconds for this head with xdist. Coverage and the complete selected suite remain required.
#397 is merged. The package requirement remains >=3.10 until 3.1.0, per the owner decision in #390. See #383 and #398.
Cross-vendor panel round 3 passed at 9fdad5b with phase-loop 0.7.24: all four vendors delivered, final board usable, Opus 5.5 president AGREE, no blocking findings. The growth checks reject both the original keyword regex and original URL-tail loop. Remaining timing-test robustness work is tracked in #400; the runtime status race remains in #391. All eight required checks pass on the exact reviewed head.
🤖 Generated with Claude Code