De linux-gate viel elf keer om op een wachttijd, en de poort ertegen mat bijna niets (#1911) #1912
No reviewers
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!1912
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/carousel-delete-flake"
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?
Sluit #1911.
Wat er misging
De linux-gate op
main(taak 5317, commitb140c8cb) faalde op één test:image_carousel_delete_test— "een verwijderde afbeelding verdwijnt uit de bibliotheek".Dat bestand liet de gate tussen 21-08 en 01-09 negen keer omvallen (taken 2594, 3099, 3404, 3658, 4283, 4366, 4974, 4986, 5317), elke keer met een andere testnaam. Dat las als toeval. Het was negen keer dezelfde regel:
pumpPickergaf de afbeeldingkiezer 300 ms wandelklok en nam daarna aan dat de mapscan klaar was. Op de runner — vier kernen,--concurrency=14— is hij dat soms niet, en dan staat de Verwijderen-knop nog niet in de boom.Bij het doorzoeken van de joblogs bleken twee andere bestanden hetzelfde te doen:
callout_accessibility_test(omgevallen 31-08 en 01-09, taken 5001 en 5200) encallout_reveal_test(01-09).Alle drie gereproduceerd door de wachttijd op nul te zetten: exact de meldingen uit de joblogs.
Waarom niets dat tegenhield
De poort ertegen bestaat al —
_fixedDelayInRunAsyncintool/check_conventions.dart, geschreven nadat vier tests op één dag om deze reden gerepareerd moesten worden. Hij heeft dit anderhalve maand niet gezien:Future.delayed(, terwijl 126 van de 129 wachtpunten intest/Future<void>.delayed(schrijven;runAsync(— minder dan éénpumpWidgetmet een widgetboom erin, en juist dáár stond het wachtpunt dat de negen storingen veroorzaakte.Netto: 3 van de 129 gezien, en groen gemeld.
Wat deze PR doet
De poort kent nu het typeargument en telt haakjes tot het einde van de aanroep. Tegen de originele carousel-test vindt hij 4 wachtpunten waar hij er 0 vond.
fixedDelaysInis losgetrokken van de schijf (zoalsclassSizesIn) entest/fixed_delay_ratchet_test.darthoudt beide blinde vlekken vast, allebei bewezen rood tegen de oude implementatie. De achterstand die daardoor zichtbaar werd staat als krimp-alleen basislijnfixedDelayBaseline, geregistreerd incheck_ratchet_trend.dart.De carousel-test wacht op de uitkomst die hij daarna bewéért, via
pumpUntil— de hulp die daar al voor bestond en die de zusterbestanden al gebruikten. Het bestand draait nu in 2 s.De callout-tests doen iets anders, en met opzet. Daar is niet beter gewacht maar het wachten wéggehaald: de test laadt het beeld voor, waarna
resolveIntrinsicSizezijn maat synchroon teruggeeft en de overlay in de eerste build tekent. Dat pad bestaat al voor de rasterexports, die hun beelden om precies dezelfde reden voorladen. Twee redenen om het hier zo te doen:runAsync, waar een genesterunAsync— en duspumpUntil— verboden is;Basislijn daarmee van 25 naar 24 bestanden, 37 naar 32 wachtpunten.
Wat er open blijft
De basislijn is geen schone lei: 32 wachtpunten, waarvan 7 bewuste uitzondering (de redenen staan in
pump_until.dart) en 25 schuld. Bewezen rood en nog niet omgezet:document_editor_screen_test(vijf keer op 24/25-08) enexport_dialog_pdf_end_to_end_test(24-08, toen is alleen het getal verhoogd).Eén blinde vlek in de poort blijft, en staat als zodanig in CHECKS.md: een wachtpunt in een helper die vanuit
runAsyncwordt aangeroepen staat er niet lexicaal in.callout_reveal_testhad precies die vorm — de poort zag hem nooit.Getoetst
make check-staticgroen.check_conventions.dartimporteert, de drie carousel-bestanden en de callout-bestanden: groen.De linux-gate viel negen keer om op een wachttijd, en de poort ertegen mat bijna niets (#1911)to De linux-gate viel elf keer om op een wachttijd, en de poort ertegen mat bijna niets (#1911)1e9798dbafdb47954007