Skip to content

CI: ERC-5485 comma change (with incremental build)#1574

Open
xinbenlv wants to merge 16 commits intoethereum:ci/incremental-htmlprooferfrom
xinbenlv:test/incremental-erc5485
Open

CI: ERC-5485 comma change (with incremental build)#1574
xinbenlv wants to merge 16 commits intoethereum:ci/incremental-htmlprooferfrom
xinbenlv:test/incremental-erc5485

Conversation

@xinbenlv
Copy link
Collaborator

Purpose

Test PR to measure HTMLProofer CI time with incremental build enabled (stacked on #1573).

This PR adds a single comma to ERC-5485 and includes the CI optimization from #1573. Compare HTMLProofer timing against #1575 (baseline without optimization).

See #1572 for tracking.

Note: This is a test PR for benchmarking only — do not merge.

Made with Cursor

@eip-review-bot
Copy link
Collaborator

eip-review-bot commented Feb 26, 2026

File .github/workflows/README.md

Requires 1 more reviewers from @g11tech, @jochem-brouwer, @lightclient, @SamWilsn

File .github/workflows/ci.yml

Requires 1 more reviewers from @g11tech, @jochem-brouwer, @lightclient, @SamWilsn

@eip-review-bot eip-review-bot changed the title test: ERC-5485 comma change (with incremental build) CI: ERC-5485 comma change (with incremental build) Feb 26, 2026
@github-actions github-actions bot added the w-ci label Feb 26, 2026
@xinbenlv xinbenlv force-pushed the test/incremental-erc5485 branch from eb17f01 to fc5b7ca Compare February 26, 2026 02:33
Fixes ethereum#1572

- Remove duplicate Jekyll build (was running `jekyll build` twice)
- Detect changed ERC files via `gh pr diff` for targeted checking
- Cache Jekyll build output keyed on EIPs repo SHA
- Use Jekyll `--incremental` when cache is available
- Run HTMLProofer only on changed files instead of full site
- Automatic fallback to full build when non-ERC files change

Made-with: Cursor
Test PR to measure HTMLProofer time with incremental build enabled.
See ethereum#1572

Made-with: Cursor
@xinbenlv xinbenlv force-pushed the test/incremental-erc5485 branch from fc5b7ca to 2e546bc Compare February 26, 2026 02:39
@github-actions github-actions bot removed the w-ci label Feb 26, 2026
@xinbenlv xinbenlv changed the base branch from master to ci/incremental-htmlproofer February 26, 2026 02:43
@xinbenlv xinbenlv force-pushed the ci/incremental-htmlproofer branch from 870c216 to 75e3393 Compare February 26, 2026 03:04
Add another comma to ERC-5485 to trigger a fresh CI run with the
path fix from the base branch (EIPS/ prefix for HTML output).

Made-with: Cursor
…to test/incremental-erc5485

Made-with: Cursor

# Conflicts:
#	.github/workflows/ci.yml
@github-actions github-actions bot added the w-ci label Feb 26, 2026
…tal build

Instead of manually touching file timestamps to year 2000 (which
doesn't match the mtime stored in .jekyll-metadata from previous
builds), restore each file's mtime to its last git commit time.

This allows Jekyll --incremental to correctly identify unchanged files
by comparing stable commit-based mtimes against .jekyll-metadata, rather
than fighting against a mismatch between fabricated and recorded times.

Changes:
- Add fetch-depth: 0 to both EIPs and ERCs checkouts (needed for git log)
- Add "Restore mtimes from git history" step after each checkout
- Remove "Prepare Incremental Build" step (touch hack no longer needed)
- Simplify Build Website condition to check cache-hit + mode directly

Made-with: Cursor
@github-actions github-actions bot removed the w-ci label Feb 26, 2026
Remove cache-hit check from Build Website step — Jekyll's --incremental
flag is safe to use unconditionally (falls back to full build when
.jekyll-metadata is missing). The previous check failed on restore-keys
partial matches where cache-hit=false despite files being restored.

Add .github/workflows/README.md documenting the incremental build
architecture, git-restore-mtime strategy, cache scoping rules, and
why cp -rp is used in the Merge Repos step.

Made-with: Cursor
Made-with: Cursor

# Conflicts:
#	.github/workflows/ci.yml
git rev-parse --short auto-adjusts length based on repo size,
causing cache key mismatches (d434180 vs d434180a). Pin to 8 chars.

Made-with: Cursor
@github-actions github-actions bot added the w-ci label Feb 26, 2026
Root cause found: jekyll build (without --incremental) does NOT
create .jekyll-metadata. The cached artifacts from full builds
contained _site but no metadata file, so subsequent incremental
builds had nothing to compare against and rebuilt everything.

Always using --incremental ensures .jekyll-metadata is created and
cached, enabling true incremental builds on subsequent runs.

Made-with: Cursor
@xinbenlv xinbenlv closed this Feb 26, 2026
@xinbenlv xinbenlv reopened this Feb 26, 2026
@xinbenlv xinbenlv closed this Feb 26, 2026
@xinbenlv xinbenlv reopened this Feb 26, 2026
@github-actions
Copy link

The commit cc636fa (as a parent of 2c0e053) contains errors.
Please inspect the Run Summary for details.

Made-with: Cursor

# Conflicts:
#	ERCS/erc-5485.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants