Skip to content

perf(spec-tools,ci): parallel PR spec-doc builds, publish-only social cards - #3101

Merged
danceratopz merged 4 commits into
ethereum:forks/amsterdamfrom
spencer-tb:ci/docs-build-speedup
Jul 6, 2026
Merged

perf(spec-tools,ci): parallel PR spec-doc builds, publish-only social cards#3101
danceratopz merged 4 commits into
ethereum:forks/amsterdamfrom
spencer-tb:ci/docs-build-speedup

Conversation

@spencer-tb

@spencer-tb spencer-tb commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

🗒️ Description

Aims to improve per PR docs CI workflows.

Spec doc builds now run as four parallel docc shards over consecutive fork sets cutting Build Spec Docs to ~4m.

MkDocs social cards are now publish only, trimming Build HTML Docs to ~5mins.

Note, forward / cross-shard references are validated only by the serial default-branch build, and optionally log what PruneReferencesTransform prunes so the coverage boundary is visible in CI, more info in #3101 (comment).

🔗 Related Issues or PRs

N/A.

✅ Checklist

  • All: Ran fast static checks to avoid unnecessary CI fails, see also Code Standards and Verifying Changes:
    just static
  • All: PR title have the form <type>(<area>):, where <type> and <area> come from an approrpriate C-<type>, respectively A-<area>, label. The title should match the a target squash commit message.
  • All: Considered updating the online docs in the ./docs/ directory.
  • All: Set appropriate labels for the changes (only maintainers can apply labels).

Cute Animal Picture

cat

@codecov

codecov Bot commented Jul 3, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.30%. Comparing base (64ed676) to head (d41d073).
⚠️ Report is 23 commits behind head on forks/amsterdam.

Additional details and impacted files
@@                 Coverage Diff                 @@
##           forks/amsterdam    #3101      +/-   ##
===================================================
+ Coverage            93.23%   93.30%   +0.06%     
===================================================
  Files                  624      624              
  Lines                36924    36986      +62     
  Branches              3373     3383      +10     
===================================================
+ Hits                 34427    34508      +81     
+ Misses                1704     1695       -9     
+ Partials               793      783      -10     
Flag Coverage Δ
unittests 93.30% <ø> (+0.06%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@spencer-tb
spencer-tb force-pushed the ci/docs-build-speedup branch from 52d66d1 to 8c8f2a3 Compare July 3, 2026 16:52
@spencer-tb spencer-tb changed the title feat(docs): gate PR docs builds on inputs, render only changed forks feat(docs): parallel PR spec-doc builds, gate docs jobs on changed inputs Jul 3, 2026
@spencer-tb
spencer-tb force-pushed the ci/docs-build-speedup branch from 8c8f2a3 to 653c646 Compare July 3, 2026 17:14
@spencer-tb spencer-tb added C-feat Category: an improvement or new feature A-doc Area: documentation A-ci Area: Continuous Integration labels Jul 3, 2026
@spencer-tb spencer-tb changed the title feat(docs): parallel PR spec-doc builds, gate docs jobs on changed inputs feat(docs): parallel PR spec-doc builds, publish-only social cards Jul 3, 2026
@spencer-tb
spencer-tb marked this pull request as ready for review July 3, 2026 17:25
@danceratopz danceratopz added the C-perf Scope: Performance - an optimization or speed-up. label Jul 6, 2026
@danceratopz
danceratopz self-requested a review July 6, 2026 10:06
@danceratopz danceratopz self-assigned this Jul 6, 2026

@danceratopz danceratopz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for tackling this. Adds quite some complexity, but it really does help shorten runtimes. Few comments below. I made one suggestion directly in:

Comment thread mkdocs.yml
Comment thread Justfile Outdated
Comment thread Justfile Outdated
Comment thread Justfile Outdated
Comment thread Justfile Outdated
@danceratopz danceratopz changed the title feat(docs): parallel PR spec-doc builds, publish-only social cards perf(spec-tools,ci): parallel PR spec-doc builds, publish-only social cards Jul 6, 2026
@spencer-tb

Copy link
Copy Markdown
Contributor Author

Merged your PR in! Thx

@spencer-tb
spencer-tb requested a review from danceratopz July 6, 2026 21:35

@danceratopz danceratopz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's one clean-up required that was missed in spencer-tb#24. Let me commit that real quick.

Comment thread tests/evm_tools/test_docc_shards.py
The `docc_shards` unit test never ran in CI: `fill` and the docs build
skip `tests/docc` via `_add_default_ignores`, and no other job targets
it, so the `compute_shards` coverage and overlap assertions went
unchecked. The module itself runs via `docs-spec-parallel`, but its
invariants were never asserted.

Move the test to `tests/evm_tools/`, which the `spec-tools` job runs, so
the assertions now execute in CI. That directory is already in `fill`'s
default ignores, so the separate `tests/docc` entry is removed.

@danceratopz danceratopz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this!

Confirmed that the last commit does actually include these tests in the spec-tools CI. All good!

@danceratopz
danceratopz merged commit 376414e into ethereum:forks/amsterdam Jul 6, 2026
27 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-ci Area: Continuous Integration A-doc Area: documentation C-feat Category: an improvement or new feature C-perf Scope: Performance - an optimization or speed-up.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants