Skip to content

ci: shallow-fetch release-branch-validate checkouts - #31891

Open
chirag-madlani wants to merge 2 commits into
mainfrom
ci/shallow-fetch-validate
Open

ci: shallow-fetch release-branch-validate checkouts#31891
chirag-madlani wants to merge 2 commits into
mainfrom
ci/shallow-fetch-validate

Conversation

@chirag-madlani

@chirag-madlani chirag-madlani commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

Describe your changes:

The three Release Branch Validate jobs merged in #31828 use fetch-depth: 0 to compute a two-commit diff (github.event.before..HEAD). That's a full clone (~500MB, ~16k files, 30-60s per job). Drop to fetch-depth: 2 and fetch the older base on demand only when a multi-commit push means BEFORE is older than the shallow checkout carries. Checkout step per job drops to ~2-5s.

Type of change:

  • Improvement

High-level design:

N/A — 3-line change per job, no behavior change beyond the perf win.

Tests:

Use cases covered

  • Single-commit cherry-pick (the common case): BEFORE == HEAD~1, already local, no extra fetch needed.
  • Multi-commit push: git cat-file -e $BEFORE fails, so we git fetch --depth=1 origin $BEFORE to pull just that one object (still cheap).
  • workflow_dispatch / first push to a branch: BEFORE is empty or all-zeros, we fall through to git rev-parse HEAD~1 — unchanged from before.

Manual testing performed

Checklist:

🤖 Generated with Claude Code

Greptile Summary

This PR reduces checkout overhead in the three release-branch validation jobs.

  • Changes each checkout from full history to a depth of two.
  • Fetches github.event.before on demand when it is absent from the shallow clone.
  • Preserves the existing Java, Python, and UI changed-file scopes.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Important Files Changed

Filename Overview
.github/workflows/release-branch-validate.yml Replaces full-history checkouts with shallow checkouts and conditionally fetches the push base before computing each validation job’s changed-file set.

Reviews (2): Last reviewed commit: "Merge branch 'main' into ci/shallow-fetc..." | Re-trigger Greptile

Each of the three jobs (Java, Python, UI) used fetch-depth: 0, which
does a full clone (~500MB, ~16k files, 30-60s wall-clock) just to
compute a two-commit diff. Drop to fetch-depth: 2 — enough for the
common single-commit cherry-pick case where BEFORE == HEAD~1 — and
fetch BEFORE on demand only when a multi-commit push means it's older
than the shallow depth carries. Checkout drops to ~2-5s per job.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI lite review requested due to automatic review settings August 21, 2026 13:06

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@github-actions

Copy link
Copy Markdown
Contributor

❌ PR checklist incomplete

This PR cannot be merged until the following are addressed on its linked issue:

  • No GitHub issue is linked. Link an issue in the Development section of the PR (or add Fixes #12345 to the description). For a same-org cross-repo issue, add Fixes open-metadata/<repo>#123 to the description.

The fields live on the linked issue in the Shipping project (open the issue → right sidebar → Projects). After you set them, re-run this check (or push a commit) — issue/project changes do not re-trigger it automatically.

Maintainers can bypass this check by adding the skip-pr-checks label.

@github-actions github-actions Bot added safe to test Add this label to run secure Github workflows on PRs UI UI specific issues labels Aug 21, 2026
@github-actions

github-actions Bot commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

✅ Playwright Results — workflow succeeded

Validated commit 8c05e1e76c72258fff678771eae88c6434b62245 in Playwright run 32490846100, attempt 1.

✅ 552 passed · ❌ 0 failed · 🟡 1 flaky · ⏭️ 0 skipped · 🧰 0 lifecycle flaky

Performance

Blocking targets: ✅ met · Optimization targets: 🟡 in progress

Shard-job maxima below are not the full workflow wall time; the linked run includes build, fixture, planning, and reporting.

🕒 Full workflow signal wall (to summary) 1h 0m 49s

⏱️ Max setup 3m 58s · max shard execution 16m 17s · max shard-job elapsed before upload 20m 41s · reporting 6s

🌐 215.79 requests/attempt · 2.83 app boots/UI scenario · 20.37% common-shard skew

Optimization targets still in progress:

  • Common shard skew was 20.37% (convergence target: at most 15%).
  • Browser traffic was 215.79 requests per attempt (convergence target: fewer than 200).
  • Application boot ratio was 2.83 per UI scenario (1627 boots / 575 scenarios; convergence target: at most 1).
Shard Passed Failed Flaky Skipped Lifecycle failed Lifecycle flaky
✅ Shard chromium-01 96 0 0 0 0 0
✅ Shard chromium-02 95 0 0 0 0 0
✅ Shard chromium-03 108 0 0 0 0 0
🟡 Shard chromium-04 99 0 1 0 0 0
✅ Shard data-asset-rules-01 61 0 0 0 0 0
✅ Shard domain-isolation-01 16 0 0 0 0 0
✅ Shard global-state-01 34 0 0 0 0 0
✅ Shard ingestion-01 1 0 0 0 0 0
✅ Shard reindex-01 2 0 0 0 0 0
✅ Shard search-01 11 0 0 0 0 0
✅ Shard search-rbac-01 29 0 0 0 0 0
🟡 1 flaky test(s) (passed on retry)
  • Pages/Entity.spec.tsDelete Table (shard chromium-04, 1 retry)

📦 Download artifacts

How to debug locally
# Download playwright-test-results-<shard> artifact and unzip
npx playwright show-trace path/to/trace.zip    # view trace

Copilot AI review requested due to automatic review settings August 21, 2026 14:12

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@gitar-bot

gitar-bot Bot commented Aug 21, 2026

Copy link
Copy Markdown
Code Review ✅ Approved

Reduces checkout fetch depth to 2 in release branch validation workflows and adds an on-demand fetch fallback for multi-commit pushes, cutting checkout time from up to a minute down to a few seconds. No issues found.

Options

Display: compact → Showing less information.

Comment with these commands to change the behavior for this request:

Compact
gitar display:verbose         

Was this helpful? React with 👍 / 👎 | Powered by Gitar — free for open source

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

Labels

safe to test Add this label to run secure Github workflows on PRs UI UI specific issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants