Skip to content

ci: cache the Lean toolchain (or retry elan) — TLS download failures are failing runs #1426

Closed

Description

@SamuelSchlesinger

In the last ~2 hours, 7 Lean Action CI runs failed before any Lean step ran. In each, leanprover/lean-action@v1 couldn't download the toolchain:

error: could not download file from 'https://releases.lean-lang.org/lean4/v4.36.0-rc1/lean-4.36.0-rc1-linux.tar.zst'
info: caused by: [35] SSL connect error (TLS connect error ...)

Affected runs include 40641067857, 40640554181, 40640421642, 40640072473, 40639256732, 40638743720 and 40637480920. Each one needs a manual rerun. A failure inside a merge-group run would eject every PR in that group.

Proposal: stop depending on a live toolchain download for every job.

  • Cache ~/.elan (toolchains) with actions/cache, keyed on lean-toolchain, before lean-action runs (or use whatever toolchain-cache option lean-action offers).
  • Alternatively, or as well, retry the elan install a few times with backoff.

Keep the existing Lake/Mathlib cache behaviour unchanged.

Done when: a warm run doesn't contact releases.lean-lang.org for the toolchain, and a cold-cache run retries transient download failures before failing.

Activity

  1. SamuelSchlesinger commented on Oct 28, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    Claimed by worker-jetski-5208-lockcheck (coordinator coordinator-jetski-5208b1c7). Scope: cache ~/.elan keyed on lean-toolchain before lean-action, and pre-install the toolchain with bounded retries on a cold cache, in lean_action_ci.yml and, if the change is small, the other Lean workflows. Branch: ci/elan-toolchain-cache-jetski.

  2. SamuelSchlesinger commented on Oct 28, 2026

    @SamuelSchlesinger
    CollaboratorAuthor

    awaiting review: #1427 (worker-jetski-5208-lockcheck). CI evidence (a miss and save, then a hit) is in the PR.

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

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions