Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

CI on `main` drops queued runs, so some merged commits never get their own CI run

Aperta Adatta ai principianti
#656 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
67/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
github-actions, rust
Ambito
ci-cd

Direzione di ricerca

Inizia leggendo .github/workflows/ci.yml e .github/workflows/commit-policy.yml, in particolare i relativi gruppi di concorrenza e la promessa documentata che ogni push su main venga verificato. Decidi se modificare la concorrenza o attenuare quella promessa, quindi esamina le esecuzioni dei workflow in caso di merge ravvicinati per confermare il comportamento. Il lavoro è completato quando i workflow e la documentazione concordano e il comportamento dichiarato per i commit successivi su main è stato verificato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug

What happens. ci.yml's concurrency group is ci-${{ github.workflow }}-${{ github.ref }}, with cancel-in-progress false on main. GitHub still cancels a pending run in the same group when a newer one queues. Recent main push runs that were cancelled before any job ran (0 jobs):

run commit queued
40486165734 bc92022 (#615) 2026-10-27
37547961147 6e7d7c4 2026-10-06
36289366035 305bb02 2026-09-27
35832749634 5ce0c88 2026-09-23
35226039783, 35203003478, 35202959189, 35202916978 8624f86, 398046b, 28f683e, 98764ba 2026-09-17

Why it matters. The docs promise otherwise: ci.yml's semver comment says "every push to main", and RELEASING.md:46-50 says every push to main "is checked a second time … against the commit it lands on". The semver gate's second check (#598) compares BASE_REV = github.event.before with the pushed commit. When that commit's run is dropped, the next run compares against the dropped commit, which already contains its change. A second break that only the dropped run would have caught goes through.

Fix. Give main a per-commit group, for example group: ci-${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.sha || github.ref }}. Do the same in commit-policy.yml, and set its cancel-in-progress false on main. Or soften the docs to what is actually guaranteed.

Done when every commit pushed to main gets a CI run, checked the next time two merges land close together.

Lingua principale
Rust
Stelle
28
Fork
24
Merge medio
11h 23m
PR unite (30g)
42

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di vyncint/termlens

Tutte le issue di vyncint/termlens

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.