Skip to content

CI: split verify-tests #210

Closed
Closed

Description

@woksin

Follow-up to #208 (week 2). After the pull request checks were split into parallel jobs, verify-tests is the long pole: about 8.8 minutes, while every other check finishes within about 2 minutes.

Measured on run 43121035276:

  • Unit specs (yarn test, Vitest): 350 s, about 6 minutes, more than half of it module import time.
  • Client contract generation and checks: about 86 s.
  • Library end-to-end tests: about 40 s.
  • Decorator checks: a few seconds.

Scope

  • Run the unit specs in their own job as disjoint Vitest shards (--shard=i/n), each shard required through the existing verify check.
  • Keep client contract, decorator and Library end-to-end tests in verify-tests.
  • Add a guard spec that fails when a command is dropped from the local yarn ci gate or a shard is missing from the matrix.

Acceptance criteria

  • No check is removed from the pull request path; verify stays the required check name.
  • yarn ci still runs every check locally.
  • Pull request wall time drops from about 9 minutes to about 3-4 minutes.

Status

State: Done — Merged in #211; CI wall 9.1 -> 4.0 min.
Branch: fix/4906-repair-timing-options
Scope: Split unit specs into 3 Vitest shard jobs; deliver to L0 (no-release)
Plan: verify-tests keeps client contract, decorator and Library e2e checks; new verify-specs matrix job runs yarn test --shard=i/3; guard spec pins every original yarn ci command and the shard matrix; verify aggregate needs verify-specs.
Delivered: - #211
Remaining: To be confirmed.
Follow-ups: None.

Activity

  1. self-assigned this
    on Nov 11, 2026
  2. woksin commented on Nov 12, 2026

    @woksin
    ContributorAuthor

    Measured after #211 merged (CI workflow, wall time from run creation to completion):

    Run Wall Longest job
    Before: PR run 43121035276 (after #209) 9.1 min verify-tests 8.8 min
    After: PR run 43125825123 (#211) 4.0 min verify-specs (1/3) 3.6 min, verify-tests 3.5 min
    After: main push run 43126396735 (c8f8391) 3.9 min verify-specs (1/3) 3.6 min

    The Vitest suite now runs as three parallel shards (2.5–3.6 min each) next to the remaining verify-tests steps (2.4–3.5 min). Every other job stays at or below 3 min, so CI feedback is about 4 minutes, down from about 9. No spec coverage was removed; a guard test fails if a spec file is not assigned to exactly one shard.

  3. woksin commented on Nov 12, 2026

    @woksin
    ContributorAuthor

    Delivered by #211: the unit specs run as three parallel Vitest shards and pull request CI takes about 4 minutes instead of about 9 (measurements in the comment above).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions