Repository navigation
perf(ci): parallelize validation lanes - #1058
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
Greptile SummaryThis PR reduces CI critical-path duration by splitting PTY integration tests from Linux validation, enabling two test shards on Windows, and preserving the existing PR validation check as an aggregate gate.
Confidence Score: 5/5The PR appears safe to merge; the parallel jobs preserve the validation and packaging coverage of the previous sequential workflows. No actionable failures remain: the aggregate gate handles skipped and failed dependencies correctly, the Windows shards cover the complete suite and propagate failures, and both packaging and PTY lanes retain their required inputs. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
Changes[Detect code changes] --> Linux[Linux validation and packaging]
Changes --> PTY[PTY integration tests]
Linux --> Gate[Typecheck + Test + Smoke aggregate check]
PTY --> Gate
Changes --> Gate
Changes --> Windows[Windows compatibility: two test shards]
Changes --> Portability[Compiled headless portability matrix]
Reviews (1): Last reviewed commit: "perf(ci): parallelize validation lanes" | Re-trigger Greptile |
d97bffe to
99db0fe
Compare
|
Force-pushed after restoring the Windows compatibility job to its original full, serial validation path. The CI optimization now targets only Linux job-level parallelism and npm build reuse; PTY also remains serial for fidelity. This comment was generated by Pi using OpenAI GPT-5.6 Sol |
99db0fe to
2d808d1
Compare
Problem
The required Linux PR check currently serializes roughly four minutes of PTY tests ahead of smoke and packaging validation. Recent successful runs take about seven minutes end to end.
Approach
Typecheck + Test + Smokecontext with an aggregate gate that checks change detection and both Linux lanesPTY remains one process because two PTY shards contended for CPU on the hosted runner and made a responsiveness test miss its deadline. Job-level parallelism still removes PTY from the serialized Linux lane. The measured Linux lanes completed in 3:11 and 4:17, reducing the required check from 6:47 to about 4:25.
Validation
.github/workflows/ci.ymland.github/workflows/pr-ci.ymlas YAML./node_modules/.bin/bun run test./node_modules/.bin/bun run test:integrationbun run format:checkbun run lintbun run typecheckbun run deps:checkThe updated Actions run is the authoritative validation for the aggregate required check. Windows continues using its original static checks and serial test execution.
Stack
Merge in this order.
This PR description was generated by Pi using OpenAI GPT-5.6 Sol