Open the vendored MEOS-API refresh instead of failing the schedule - #14
Merged
estebanzimanyi merged 1 commit intoAug 27, 2026
Merged
Conversation
estebanzimanyi
force-pushed
the
ci/vendor-drift-auto-pr
branch
from
August 27, 2026 09:21
ec74a5d to
427027a
Compare
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.
The drift check regenerates
vendor/meos-api/and fails when it differs from the committed copy. MEOS-API master moves most days, so the daily scheduled run fails most days: every scheduled run of the last twelve days fails, and refreshing the vendored copy clears it only until master moves again.The failure is also unaddressable where it fires. A scheduled run has no author, and neither has a push already made, so the message asking someone to run
make vendor-meos-apireaches nobody.This makes those runs open the refresh pull request themselves, carrying the diff, and update it while the difference stands. A pull request that changes the vendored copy or the target that writes it still fails, where its author is there to act; the run reads which paths the pull request changes against its base, so a pull request that changes only this workflow reports the drift instead of failing on a staleness it did not cause and cannot be asked to fix.
MobilityDuck handles the same class of failure this way:
meos-surface-refresh.ymlopens a refresh pull request on drift, and it carries no per-commit gate that red-lights unrelated work.Two details the mechanism depends on:
add-pathsstages only what it lists, so it names every pathmake vendor-meos-apiwrites; an omitted one is regenerated and then silently discarded;The job commits to a branch and opens a pull request, so it declares
contents: writeandpull-requests: writerather than relying on the repository default.Future: pull request CI does not exercise a scheduled job, so a green check here does not prove the new leg. Proving it takes one
gh workflow run vendor-drift.yml, and an inspection of the file list of the pull request it opens.