Skip to content

ci: reduce repeated integration test compilation in platform gates - #355

Merged
FredApps merged 1 commit into
mainfrom
perf/ci-gate-20261108
Nov 8, 2026
Merged

FredApps merged 1 commit into
mainfrom
perf/ci-gate-20261108

Conversation

@FredApps

@FredApps FredApps commented Nov 8, 2026 •

Copy link
Copy Markdown
Contributor

Reduce repeated test compilation and linking in the Windows and Ubuntu gates by consolidating engine/UI integration tests into one it executable per crate, alongside the existing standalone session and snapshot targets. Also disable the unused nextest installation through the shared workflow's existing tools input.

Evidence

The baseline CI run restored the Rust cache, but Cargo still compiled workspace test executables:

Platform Gate step Test compilation
Ubuntu 15m36s 5m02s
Windows 22m31s 10m06s

The engine/UI integration executable count drops from 47 to 4. This targets repeated compile/link work; actual wall-clock gains need the draft's hosted gates and can vary with runner/cache conditions.

Coverage and scope

  • All moved test source files are byte-for-byte unchanged, with every file registered as a module. No tests are removed or newly ignored.
  • Preserve --test session and --test ui_snapshots, including the documented hostile-input and snapshot commands.
  • Keep cargo test, doctests, both OS gates, Clippy, layering, and isolated per-package wasm checks.
  • Document how to add and filter consolidated tests in docs/testing-ci.md.
  • No production code, dependencies, or test fixtures change.

The session hostile-input sweep still takes about 5m37s per platform in the baseline. It remains intact; this draft does not claim to remove that runtime cost. The baseline Windows run also spent 88 seconds installing the unused nextest tool; that setup cost varies between runs.

Validation

Passed locally: cargo fmt --all -- --check, cargo metadata --no-deps target inspection, moved-source SHA-256 comparison, module-registration inspection, and git diff --check.

No local compilation or runtime tests have been run for this draft. Hosted Ubuntu/Windows gates are required before marking ready; release-profile scoped tests have not been run. Hosted Ubuntu and Windows gates passed on commit 76a8cf5.

Hosted results

CI run: both platform gates passed. Ubuntu gate time fell from 15m36s to 11m47s; Windows from 22m31s to 16m25s (about 24% and 27%). These are individual hosted runs, not controlled benchmarks. CodeQL passed. Packaging lint failed twice downloading actionlint with HTTP 504 before linting; coverage jobs were still running at merge review. No required checks were reported by GitHub.

@coderabbitai

coderabbitai Bot commented Nov 8, 2026 •

Copy link
Copy Markdown
Contributor

Explain Change →

Caution

Review failed

The pull request is closed.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@FredApps
FredApps marked this pull request as ready for review November 8, 2026 10:34
@FredApps
FredApps merged commit 117bfd5 into main Nov 8, 2026
10 of 14 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.

1 participant