Skip to content

ci(depsets): weekly scheduled lock refresh that opens a PR on drift#835

Draft
Aydin-ab wants to merge 1 commit into
mainfrom
ci/scheduled-depset-refresh
Draft

ci(depsets): weekly scheduled lock refresh that opens a PR on drift#835
Aydin-ab wants to merge 1 commit into
mainfrom
ci/scheduled-depset-refresh

Conversation

@Aydin-ab

@Aydin-ab Aydin-ab commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

A weekly job that recompiles all depset locks and opens a PR when they drift — so staying current with upstream is a deliberate, reviewable step, not a random tax on unrelated PRs.

Why

check-depsets re-resolves locks against live indexes, so committed locks slowly drift from "what a fresh compile produces." #834 stops that from failing unrelated PRs; this is the other half — refresh the locks on a cadence, centrally, in one PR.

What

.github/workflows/refresh-depsets.yaml — Mondays 08:00 UTC (+ manual dispatch):

  • Runs the full ./update_deps.sh (retried for transient index 503s).
  • If any lock drifted, commits to a rolling deps/scheduled-lock-refresh branch and opens (or updates) a single refresh PR.

Notes / caveats

Recompiles every depset lock against current indexes on a weekly cron (and
manual dispatch) and opens/updates one rolling refresh PR when anything drifts.
Moves "keep up with upstream" to a deliberate, reviewable cadence instead of
ambient drift failing unrelated PRs' check-depsets. Retries the recompile to
absorb transient index errors.

Requires the "Allow GitHub Actions to create and approve pull requests" repo
setting for the PR-open step.

Claude-Session: https://claude.ai/code/session_01HEiVRurDkXnrLAyCduiLdH
Signed-off-by: Aydin Abiar <aydin@anyscale.com>
Aydin-ab added a commit that referenced this pull request Jul 2, 2026
Temporarily disable `check-depsets`. It re-resolves every lock against
live PyPI/PyTorch on every PR, so it fails unrelated PRs on ambient
drift or a transient `download.pytorch.org` 503.

## What
`premerge.yaml` — the `check-depsets` job is now a passing no-op.
**Kept, not deleted**, so a required status check of this name stays
green instead of blocking merges.

## Re-enable
Merge #834 (scope-to-changed + retry), which replaces this job with a
gate that only runs on PRs touching a lock. #834 / #835 stay draft until
then.

Signed-off-by: Aydin Abiar <aydin@anyscale.com>
Aydin-ab added a commit that referenced this pull request Jul 2, 2026
…831)

The `/template` Ray-bump automation had no per-template depset recipe,
so the Ray 2.56.0 batch behaved inconsistently. This teaches the skill
(and the cursor preflight) how depsets interact with a bump. **Docs +
preflight only — no CI or lockfile changes** (those are #834 / #835 /
#833).

## Why
- **No per-template depset recipe** — `bump-ray-version.md` only pointed
at the whole-repo *batch* `upgrade-dependencies.md`; nothing covered
no-lock templates or how to read the repo-global `check-depsets` gate.
- **#819 was a workflow drop** — the cleanest 2.56.0 PR stuck because
the agent opened a draft and never dispatched `/test-template`.
- **`.cursor` was never the block** — `raydepsets` bundles `uv` and
recompiled fine in the cursor env; but preflight never smoke-tested the
toolchain, so a real breakage would only surface mid-bump.

## Changes
- `bump-ray-version.md` — per-template depset recipe (no-lock vs
has-lock), batch-vs-per-template preamble,
`check-depsets`-is-repo-global note, explicit **Done criteria**.
- `upgrade-dependencies.md` / `dependencies.md` — label the human/batch
path; document the gate's collateral behavior.
- `.cursor/preflight.sh` — depset-toolchain smoke test (fail at
preflight, not mid-bump).

## Testing
`pre-commit` on changed files passed. Docs/preflight only — no runtime
impact; validated end-to-end by retriggering `template-updater` against
the fixed skill.

---------

Signed-off-by: Aydin Abiar <aydin@anyscale.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant