Skip to content

[TEST] sparse-checkout: dirty doc in deep project path (expect fail)#8871

Draft
SamuelReeder wants to merge 3 commits into
developfrom
users/sareeder/test-sparse-deep-dirty
Draft

[TEST] sparse-checkout: dirty doc in deep project path (expect fail)#8871
SamuelReeder wants to merge 3 commits into
developfrom
users/sareeder/test-sparse-deep-dirty

Conversation

@SamuelReeder

Copy link
Copy Markdown
Contributor

Throwaway test PR to validate the blobless sparse-checkout pre-commit workflow (#8863). Based on that branch (so the new workflow runs); the test commit changes only a doc.

Path under test: projects/hipdnn/docs/TEST_sparse_dirty.md (awk cone -> projects/hipdnn).
Expected pre-commit result: FAIL (trailing-whitespace / end-of-file-fixer).

The pre-commit workflow used `actions/checkout` with `fetch-depth: 0`,
which fetches every branch in the repo (thousands), making checkout take
~8 minutes. The --from-ref/--to-ref diff only needs full history for the
branch being compared against. Replace it with a default shallow checkout
plus a targeted fetch of just the base branch, deepened via --unshallow
(guarded for already-complete repos) and with --filter=blob:none since
`git diff --name-only` only needs trees. This keeps the three-dot merge
base resolvable for both PR and push events.
The pre-commit checkout took ~8 minutes. CI logs showed the cost is not
branch enumeration but downloading the blob pack for one snapshot of the
monorepo: a single commit's working tree is ~43,757 blobs (~9 GB), and a
depth-1 fetch of one ref takes ~6 minutes on its own.

Switch checkout to a blobless partial clone (`filter: blob:none`) with a
minimal sparse-checkout, then widen the sparse cone to only the projects
touched by the diff. Blobs for untouched projects are never fetched, so a
typical PR fetches megabytes instead of ~9 GB. Project-level granularity
keeps each project's configs and local pre-commit hook scripts present
even when they live in sibling directories.

The base branch is still fetched on its own (commits/trees only) so the
three-dot --from-ref/--to-ref merge base resolves without fetching every
branch.
@therock-pr-bot

Copy link
Copy Markdown

❌ PR Check — Action Required

Check Status Details
🌿 Branch Name ✅ Pass
📝 PR Title/Description ❌ Fail Error: Title does not follow Conventional Commits style.
Expected: start with a valid type (feat, fix, docs, …).
Desired format: type(optional-scope): short description
───
Error: PR description must reference a JIRA ID, ISSUE ID, or a GitHub closing keyword.
Expected: include a JIRA ID / ISSUE ID line (separator : or -, or omitted; value may be a JIRA key, a number with/without #, or a link), OR a closing keyword + issue reference. Accepted examples:
JIRA ID : TESTAUTO-6039
JIRA ID - #330
JIRA ID #330
ISSUE ID : TESTUTO-3334
ISSUE ID #3334
ISSUE ID - TESTAUTO-3433
ISSUE ID : https://github.com/<org_name>/<repo_name>/issues/1234
Closes #10
Fixes octo-org/octo-repo#100
Resolves: #123
#123
https://github.com/<org_name>/<repo_name>/issues/123
Current: no valid JIRA/ISSUE/closing-keyword reference found
Forbidden Files ✅ Pass
🧪 Unit Test ✅ Pass PR does not contain code files — Unit Test auto-passed
🔎 pre-commit ❌ Fail Error: Check concluded with failure.
🚫 Draft PR 🔜 To Be Enabled
🚩 Feature Flag 🔜 To Be Enabled
📊 Code Coverage 🔜 To Be Enabled

⚠️ 2 policy check(s) failed. Please address the issues above before this PR can be Reviewed.

🚫 Please fix the failed policies

  • ❌ PR Title/Description
  • ❌ pre-commit

The Not ready to Review label was added to this PR. Once all policies pass, the label is removed automatically.

📖 Need help? See the Policy FAQ for details on every check and how to fix failures.

@therock-pr-bot

Copy link
Copy Markdown

🚫 Please fix the failed policies before requesting reviews.

The following policy checks failed:

  • ❌ PR Title/Description

The Not ready to Review label has been added to this PR.
Once all policies pass, the label will be removed automatically.

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

❌ Your project status has failed because the head coverage (76.92%) is below the target coverage (80.00%). You can increase the head coverage or adjust the target coverage.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #8871      +/-   ##
===========================================
- Coverage    71.34%   71.34%   -0.00%     
===========================================
  Files         2613     2613              
  Lines       408997   408997              
  Branches     61114    61114              
===========================================
- Hits        291775   291773       -2     
- Misses       95825    95826       +1     
- Partials     21397    21398       +1     
Flag Coverage Δ *Carryforward flag
TensileLite 76.98% <ø> (ø) Carriedforward from a2afb5d
hipBLAS 90.81% <ø> (ø) Carriedforward from a2afb5d
hipBLASLt 41.36% <ø> (ø) Carriedforward from a2afb5d
hipCUB 82.68% <ø> (ø) Carriedforward from a2afb5d
hipDNN 86.79% <ø> (-<0.01%) ⬇️
hipFFT 50.17% <ø> (ø) Carriedforward from a2afb5d
hipRAND 76.12% <ø> (ø) Carriedforward from a2afb5d
hipSOLVER 69.18% <ø> (ø) Carriedforward from a2afb5d
hipSPARSE 86.55% <ø> (ø) Carriedforward from a2afb5d
rocBLAS 48.08% <ø> (ø) Carriedforward from a2afb5d
rocFFT 46.30% <ø> (ø) Carriedforward from a2afb5d
rocRAND 57.07% <ø> (ø) Carriedforward from a2afb5d
rocSOLVER 76.92% <ø> (ø) Carriedforward from a2afb5d
rocSPARSE 72.37% <ø> (ø) Carriedforward from a2afb5d
rocThrust 91.36% <ø> (ø) Carriedforward from a2afb5d

*This pull request uses carry forward flags. Click here to find out more.
see 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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