Skip to content

ci: parallel build and jcstress jobs — ~50min → ~35min per PR, gates intact - #291

Merged
eschizoid merged 1 commit into
mainfrom
ci/parallel-jobs
Jul 31, 2026
Merged

ci: parallel build and jcstress jobs — ~50min → ~35min per PR, gates intact#291
eschizoid merged 1 commit into
mainfrom
ci/parallel-jobs

Conversation

@eschizoid

Copy link
Copy Markdown
Owner

Architecture-pass item #7. The serial job summed test + jcstress + jacoco; the two heavy workloads share nothing, so they now run as parallel required jobs: build (docs-check → spotless → build test → jacoco → codecov) and jcstress (the 4-module suite, 55-min wedge guard with its documented rationale carried over).

Two deliberate choices:

  • jcstress stays a PR gate — the tempting nightly split would let concurrency regressions merge; rejected.
  • jacoco is not a third jobjacocoTestReport consumes the test task's .exec data from the same workspace; isolating it would silently re-run every test. Two jobs is the correct maximum parallelism without duplicated work.

The single serial job summed test (~15min) + jcstress (~30-35min) + jacoco to ~50min
wall clock on every PR. The two workloads share nothing: jcstress is CPU-bound on its
own forked JVMs. As parallel jobs the wall clock becomes max(~20, ~35) ≈ 35min with
every gate intact - both jobs are required checks, so a concurrency regression still
blocks the merge (deliberately NOT moved to nightly, which would weaken the PR gate).

jacoco stays in the build job rather than a third parallel job: jacocoTestReport
consumes the .exec execution data the test task writes in the same workspace; an
isolated job would silently re-run the whole test suite to regenerate it.
@codecov

codecov Bot commented Jul 31, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 79.43%. Comparing base (5c2a392) to head (7060a79).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@             Coverage Diff              @@
##               main     #291      +/-   ##
============================================
+ Coverage     79.26%   79.43%   +0.16%     
- Complexity     1032     1034       +2     
============================================
  Files            83       83              
  Lines          3560     3560              
  Branches        457      457              
============================================
+ Hits           2822     2828       +6     
+ Misses          546      542       -4     
+ Partials        192      190       -2     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

@eschizoid
eschizoid merged commit 7fab359 into main Jul 31, 2026
5 checks passed
@eschizoid
eschizoid deleted the ci/parallel-jobs branch July 31, 2026 04:46
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.

1 participant