From db9355bb3ee831ae626e2bcbd50d9373ecc4eb3a Mon Sep 17 00:00:00 2001 From: ChrisRackauckas-Claude Date: Sun, 2 Aug 2026 18:34:52 -0400 Subject: [PATCH] ci: add continue-on-error input to reusable downgrade workflow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The downgrade workflow had no way for a caller to mark the job as an allowed failure, unlike tests.yml, grouped-tests.yml, and downstream.yml, which all expose a `continue-on-error` input. Callers cannot supply it themselves: a job that invokes a reusable workflow routes everything through `with:`. This is needed when a package's true dependency floor cannot be expressed yet — e.g. SciMLBase, whose Enzyme extension requires an upstream name that is not yet public API, so the floor cannot be raised to it (SciML/SciMLBase.jl#1457). Mirrors tests.yml/downstream.yml exactly, including the nightly clause. Co-Authored-By: Chris Rackauckas Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_013eUfG5RgLbbZY4LRawwRG9 --- .github/workflows/downgrade.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/downgrade.yml b/.github/workflows/downgrade.yml index a90d823..e4484c5 100644 --- a/.github/workflows/downgrade.yml +++ b/.github/workflows/downgrade.yml @@ -58,10 +58,15 @@ on: default: "" required: false type: string + continue-on-error: + description: "Prevent the workflow run from failing if/when the job fails" + required: false + type: boolean jobs: downgrade: name: "Downgrade Tests${{ inputs.group != '' && format(' - {0}', inputs.group) || '' }}" + continue-on-error: ${{ inputs.continue-on-error || inputs.julia-version == 'nightly' }} # apt-packages / container legs need passwordless sudo / docker, absent on # the SciML self-hosted demeter*/arctic* pool (which squats only the # `ubuntu-latest` label, not `ubuntu-24.04`). Pin `ubuntu-24.04` to force