Repository navigation
Remove the scheduled JuliaFormatter format-pr workflow - #98
Merged
ChrisRackauckas merged 1 commit intoOct 14, 2026
Merged
ChrisRackauckas merged 1 commit into
ChrisRackauckas merged 1 commit into
Conversation
The package is formatted with Runic and enforced by the format-check workflow. FormatPR.yml ran JuliaFormatter with default settings, so the PR it opens (SciML#67) reformats code into a style that fails Runic's check. It also called `julia` without provisioning it; when the `ubuntu-latest` job lands on an org self-hosted runner without Julia it fails with `julia: command not found` (exit 127), which turned the scheduled main run red (e.g. run 38489959826). Runic formatting suggestions on PRs come from RunicSuggestions.yml. Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com> Co-Authored-By: Devin <noreply@cognition.ai> Agent-Harness: Devin CLI 3000.11.3 Agent-Model: fusion-claude-opus-5-5-high-sidekick-swe-2-medium Agent-Session: local headless run, log /Users/chrisrackauckas/sandbox/master/green/SciML_FastAlmostBandedMatrices.jl/log.txt
ChrisRackauckas
marked this pull request as ready for review
October 14, 2026 23:49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This fixes a failure on the default branch's CI. The diagnosis and the evidence below come from the investigating agent's report; "confirmed by running" and "read in logs" are kept apart there.
Repo state: main at 578e7f2 ("Bump versions for release (#97)"). On main, Tests, Downgrade, Downstream and format-check all passed for that commit. Two workflows failed on main:
juliawithout installing it; the job ran on a self-hosted runner that has no Julia1. Documentation:
git pushto gh-pages rejected (FLAKY)Error (job "build / Build and Deploy Documentation", https://github.com/SciML/FastAlmostBandedMatrices.jl/actions/runs/38483093460/job/115590134982):
The docs build passed (
makedocsand HTML rendering succeeded). Onlydeploydocsfailed.Cause (read in logs and the GitHub API, not reproduced locally): two Documentation runs pushed to
gh-pagesat the same moment:self-hosted-4vcpu-16gb-8q5rj-runner-wvlx9) and the PR Bump versions for release #97 run 38483089399 (https://github.com/SciML/FastAlmostBandedMatrices.jl/actions/runs/38483089399, runner...-m4tng) were created 2 s apart (23:15:14/16Z). Both waited about 2.5 h for self-hosted runners and both started at 01:52:2xZ.docs/make.jlusesdeploydocs(; push_preview = true). The PR run loggedDeploying preview build ... Deploying: ✔forpull/97/merge=d7f24a7.GET /repos/SciML/FastAlmostBandedMatrices.jl/commits?sha=gh-pages) hasa1bb9a2 2026-10-14T01:54:41Z build based on d7f24a7. That is the PR preview commit, landed in the same second the main run made its local commit2a798c4. The main run's push 1 s later was a non-fast-forward, so it was rejected.1b74a36 build based on 578e7f2successfully. The previous main Documentation run (38326969146) also passed.So this is a one-off race between concurrent deploys. It is not a bug in this repo or in a dependency. Impact:
dev/on gh-pages was not refreshed for 578e7f2. That commit only bumps the version, so the content is unchanged. Re-running the job fixes it.Possible hardening, not done here because it is in the shared workflow: the reusable
SciML/.github/.github/workflows/documentation.yml@v1could serialize gh-pages deploys with aconcurrencygroup, or retry the push. Documenter itself does not retry a rejected push.Existing PR: none (searched open PRs for gh-pages/documentation). Fix made: none. No in-repo fix is warranted.
2. format-pr:
julia: command not found(FIX-READY)Error (job "build", https://github.com/SciML/FastAlmostBandedMatrices.jl/actions/runs/38489959826/job/115612559840, step "Install JuliaFormatter and format"):
Cause (read in logs):
.github/workflows/FormatPR.ymldeclaresruns-on: ubuntu-latestand runsjulia -e ...with nojulia-actions/setup-juliastep. It only works when the job gets a GitHub-hostedubuntu-24.04image, which ships with Julia. For example, the passing run 38327648800 usedImage: ubuntu-24.04and Julia 1.13 from the image. When the job is assigned to an org self-hosted runner, Julia is not on PATH. This is intermittent and long-standing, not a new regression. Every failed format-pr run among the last 40 has the same error on a self-hosted runner:8q5rj-runner-h6fkl)zfxvv-runner-28xjz)d6j5t-runner-z2ktl)x2k99-runner-flfvk)x2k99-runner-wn5ld)7smtr-runner-tl56q)The missing setup step dates back to the commit that introduced the workflow (
786de00, "Setup CI", per the PR #88 bisect).Second problem with this workflow (confirmed by running): the repo has been formatted with Runic since PR #45, and
format-check(SciML/.github/.github/workflows/runic.yml@v1) enforces it. FormatPR runs JuliaFormatter with default style, so the PR it keeps refreshing, #67 "Automatic JuliaFormatter.jl run", rewrites the code into a style that fails Runic:(full diff:
scratch/runic_pr67.txt). When the workflow does pass, its output is a PR that would turn format-check red if merged. Runic suggestions on PRs already come fromRunicSuggestions.yml.Existing PRs:
julia-actions/setup-julia@v3to FormatPR.yml. @ChrisRackauckas closed it unmerged on 2026-09-07, with no comment. It would have fixed the exit-127 error, but it would have kept the JuliaFormatter-vs-Runic conflict.action_required). This is the workflow's own output, not a fix. It should be closed.Test before/after: this is a scheduled CI workflow, so no Julia test can cover it, and I could not run the GitHub Actions job locally. Before the fix, the workflow exists and fails whenever it lands on a self-hosted runner (6 runs listed above). When it does succeed, it produces Runic-violating output (Runic
--checkexit 1 on PR #67, shown above). After the fix, the workflow is gone, so the scheduled run that failed no longer exists. Formatting is still enforced byformat-check(Runic--checkexit 0 on main, shown above).If you'd rather keep an automatic formatting PR, the alternative is to replace FormatPR.yml with a Runic-based job that has a
setup-juliastep. I did not do this because it is a design choice for you to make.Checks not run
Links
🤖 Posted by an AI agent — harness: Devin CLI 3000.11.3 (fix), Claude Code 2.1.285 (PR) · model: fusion-claude-opus-5-5-high-sidekick-swe-2-medium / claude-opus-5-5
Conversation: local Claude session 3c311569-dda6-4687-bc9f-65febb212c33 (fleet master)
🤖 Generated with Claude Code