RFC: CI fails a pull request that moves a submodule pin backwards #157
Unanswered
bong-water-water-bong
asked this question in
rfcs
Replies: 1 comment
|
Accepted by the maintainer on 2026-09-26. Implemented in #159. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Problem
A pull request can move a submodule pin backwards without meaning to. #154 (MoE streaming) committed a stale
third_party/llama.cppcheckout: the pin went fromf30cc43tof59f6d37a, which has diverged from it. That dropped ZAYA1-VL and 23 other commits frommainfor about 20 minutes, until #151 moved it forward again. Review missed it because the PR description only mentioned the other pin. The weeklypins_on_branchcheck only runs on Sundays, and only asks whether a pin is on its branch, not whether it went back.Design
tools/check_pins.py <base>: for every submodule whose gitlink differs between the PR's base and HEAD, ask GitHub's compare API forold...new.aheadoridenticalpasses;behindordivergedfails with the path and both commits.ci.ymlon pull requests, with the read-onlyGITHUB_TOKEN.comfyui.cpp) are reported and skipped; non-GitHub URLs are skipped.pin rollbacklabel, which skips the step. That's whyci.ymlnow also runs onlabeled/unlabeled.Alternatives
.gitmodulesbranch on every PR, not just weekly. This is stricter, but agents often pin a fork PR's head before it merges, so it would block normal work. Left to the weekly check.How it will be checked
Replayed on real history:
f96464552against its parent) fails, on exactlythird_party/llama.cpp: f30cc4399 -> f59f6d37a is diverged, while itsllama.cpp-vulkanbump passes.038e4f31bagainst its parent) passes:f59f6d37a -> 8dd75eb48 is ahead.Dependencies, licences, security
Open questions
None.
All reactions