Skip to content

[no-ci] ci: clarify Lychee cache misses and manual refreshes - #3162

Merged
rwgk merged 2 commits into
mainfrom
rwgk/lychee-cache-notices
Oct 20, 2026
Merged

rwgk merged 2 commits into
mainfrom
rwgk/lychee-cache-notices

Conversation

@rwgk

@rwgk rwgk commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Highlights

  • Make it easier to find Lychee in Actions: rename the workflow to CI: Lychee checks and caches.
  • Recognize a missing shared cache: add an informational notice and job-summary entry identifying the authored or rendered cache that was not restored.
  • Strategically advertise the refresh instructions: link directly to the repository's lychee.yml workflow, with the default branch and refresh-cache setting needed to rebuild both baselines.

Description

Missing shared caches already fall back to live link checking. The shared action now explains the potential extra runtime and network traffic, and gives maintainers a clear recovery path when the miss is unexpected.

The message also explains the expected cold-cache case: checker changes in a PR can introduce settings that do not yet exist on the default branch. Refreshing the default branch cannot populate a cache for those PR-only settings.

The notice uses cache-matched-key to recognize successful prefix restores; cache-hit alone would misidentify them as misses. Deliberate refreshes skip the notice. The workflow link and branch name follow the current repository, covering both authored and rendered checks through the shared action.

ci/README.md documents the manual refresh procedure and explains that refreshing cached successes does not resolve broken links or upstream rate limits.

Rationale for using [no-ci]

The independent Linux and Windows pre-commit checks passed, including cache restoration with the notice correctly suppressed. Missing-cache notice output was validated locally. For these naming, diagnostic, and documentation changes, full package builds, GPU tests, and a documentation build would provide little additional coverage.

Validation

  • Full pre-commit run --all-files --show-diff-on-failure passed, including Lychee and workflow linting.
  • Executed the notice's actual Bash script for authored and rendered checks with two default-branch names; verified notice output, workflow instructions, and preservation of existing job-summary content.
  • Bash syntax, ShellCheck, YAML parsing, and git diff --check passed.

Checklist

  • Local validation covers these changes.
  • The documentation is up to date with these changes.

Kept in draft to leave full CI triggering under maintainer control.

Signed-off-by: Ralf W. Grosse-Kunstleve <rgrossekunst@nvidia.com>
@rwgk rwgk added this to the cuda.bindings next milestone Oct 20, 2026
@rwgk rwgk added documentation Improvements or additions to documentation CI/CD CI/CD infrastructure labels Oct 20, 2026
@rwgk rwgk self-assigned this Oct 20, 2026
@copy-pr-bot

copy-pr-bot Bot commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@rwgk rwgk changed the title ci: clarify Lychee cache misses and manual refreshes [no-ci] ci: clarify Lychee cache misses and manual refreshes Oct 20, 2026
@rwgk
rwgk marked this pull request as ready for review October 20, 2026 15:39
@coderabbitai

coderabbitai Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: NVIDIA/cuda-python/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Enterprise
  • Run ID: c19c87c2-bea2-42b3-a0f9-22e7eb189388
📥 Commits

Reviewing files that changed from the base of the PR and between 4dc77a5 and 3119227.

📒 Files selected for processing: 1
  • .github/workflows/lychee.yml
🚧 Files skipped from review as they are similar to previous changes: 1
  • .github/workflows/lychee.yml

Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 10 remain after this review.

📝 Summary

Summary by CodeRabbit

  • CI/CD

    • Shared URL caches can be refreshed through nightly or manual workflow runs.
    • Regular checks restore the latest available cache without publishing updates.
    • Cache-miss notices provide guidance and a link to refresh the workflow.
    • Workflow naming and cache publication messages have been updated for clarity.
  • Documentation

    • Added guidance for refreshing shared caches, handling cold-cache checks, and investigating broken links or rate limits.

The Lychee action now reports cache misses when refresh mode is disabled. The workflow name and CI documentation describe shared-cache refreshes, including manual refreshes.

Changes: Shared Lychee cache refresh

Layer / File(s) Summary
Cache restore, diagnostics, and refresh
.github/actions/lychee-links/action.yml, .github/workflows/lychee.yml, ci/README.md
The action exposes cache-restore status and adds a notice and job-summary guidance when no cache is restored outside refresh mode. The workflow name and documentation describe cache publishing by refresh runs, manual refresh instructions, and cache-miss handling.

Priority: ⬇️ Low

Change: Feature

Merge Risk: ⚪ Minimal · up to 31192

This change renames a documentation-links workflow and updates its descriptive comments. No merge-blocking risk was identified.

- [ ] Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments: 1
.github/workflows/lychee.yml: 1

5-8: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

suggestion: Update the workflow comment.

workflow_dispatch with refresh-cache=true can publish both shared baselines. The current “only producer” wording can mislead maintainers about the supported manual refresh procedure. Updating this comment is the complete correction; the workflow logic and README already support the procedure.

Suggested fix
 # Warm authored and rendered link caches through the configured pre-commit
 # hooks. Ordinary PRs reuse authored results; full docs CI reuses rendered
-# results. Nightly starts afresh, reports unresolved links as warnings, and is
-# the only producer of both shared baselines.
+# results. Nightly and manual dispatches with refresh-cache=true start afresh,
+# report unresolved links as warnings, and can produce both shared baselines.

ℹ️ Review info
⚙️ Run configuration
  • Configuration used: Repository: NVIDIA/cuda-python/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Enterprise
  • Run ID: 32b9d81a-be44-4242-84a7-b48f6d0dfb25
📥 Commits

Reviewing files that changed from the base of the PR and between 4ce6efe and 4dc77a5.

📒 Files selected for processing: 3
  • .github/actions/lychee-links/action.yml
  • .github/workflows/lychee.yml
  • ci/README.md

Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 11 remain after this review.

@rwgk
rwgk requested a review from juenglin October 20, 2026 16:05

@juenglin juenglin 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.

LGTM

@rwgk
rwgk merged commit 5377ba0 into main Oct 20, 2026
27 checks passed
@rwgk
rwgk deleted the rwgk/lychee-cache-notices branch October 20, 2026 17:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI/CD CI/CD infrastructure documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants