linux-gate wordt structureel afgebroken: 9 van de 27 post-merge-runs haalt het eind niet, en afbreken meldt zich als rood #1890
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck#1890
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
linux-gate.ymlis sinds het terugdraaien van de per-PR-variant het enige datde volledige suite geautomatiseerd draait. In de praktijk haalt hij het eind
vaak niet.
Gemeten over de statussen van de laatste 80 commits op
main(27 runs):successfailure— "Has been cancelled"failure— echt gefaaldEen op de drie runs wordt afgebroken. Voorbeelden:
2aae7b37d: gestart 09:02, afgebroken 09:15 — 13 minuten ver.88fe28937: gestart 07:00, afgebroken 08:16 — 76 minuten ver, vlak voor het eind.87ba6bcec: gestart 20:37, afgebroken 21:29.Waarom
De run duurt 34 tot 74 minuten (gemeten over dezelfde 27 runs) op
linux-serial, capacity 1. Het merge-tempo opmainis 15 tot 31 commits perdag. Een nieuwe merge komt dus structureel binnen voordat de vorige run klaar
is, en zet hem opzij. De volgende merge doet hetzelfde met díe run. Dat is
uithongering, geen deduplicatie.
Het
cancel-in-progress-argument is overgenomen vanstatic-gate.yml, waar hetwél klopt: die poort is seconden per controle, bekijkt de héle boom op de
nieuwste commit, en de latere run dekt onverkort wat de afgebroken run zou
hebben gezien. Dat laatste geldt hier alleen als de latere run afloopt. Hij
loopt vaak niet af.
Bijeffect: rood op main betekent niets meer
Een afgebroken run meldt zich als
failure. Negen van de elf rodelinux-gate-statussen opmainzijn afbrekingen, niet defecten. Wie naar destatuslijst kijkt ziet rood dat routinematig genegeerd moet worden — en dan
verdwijnen de twee échte fouten (
ae01b918d,8f79eb631, beide 29-08) in deruis. De detectielaag is er, maar hij alarmeert vals en wordt daardoor niet
gelezen.
Voorstel
cancel-in-progress: falsevoor depush-naar-main-trigger. Runs stapelendan op de capacity-1-runner, maar elke merge krijgt een uitspraak. Bij het
huidige tempo kan dat een achterstand opleveren; dat is informatie, geen
probleem — het zegt dat de poort niet meekomt.
zichtbaar — bijvoorbeeld een run per uur op de kop van
mainin plaats vanper push. Dan is "één uitspraak per uur" een keuze in plaats van een
bijproduct van afbrekingen.
failuremogen tellen. AlsForgejo dat niet kan onderscheiden, is dat zelf een reden om niet af te
breken.
Zie ook de kop van
linux-gate.yml, die de poort "detectie, geen preventie"noemt. Dat klopt — maar detectie die twee van de drie keer wordt afgekapt is
ook geen detectie.
Gevonden bij een kritische review van het kwaliteitsbewakingssysteem, 31-08-2026.