fix(ci): de conventiepoort laten struikelen op één regel is geen poort #1707
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!1707
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/linux-gate-conventions-ratchet"
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?
Waarom
gate-linuxviel tussen 21-08 22:38 en 23:51 vijf keer rood opmain, telkens opcheck-conventionsen telkens op één of twee regels:lib/state/tabs_provider.dart: 1017 regels (plafond 1007)document_editor_screen.dart: 1211 (plafond 1209) + de State 1213 (plafond 1211)document_editor_screen.dart: 1212 (plafond 1211) + de State 1214 (plafond 1213)Geen enkele viel om op een test. Het is ook geen flakiness: de statische poort draait per PR en toetst de voorvertoning van díe samenvoeging met
mainzoals hij er toen bijstond. Werken twee sessies tegelijk in hetzelfde bestand — en dat deed de hele documentmodus-golf — dan zijn beide PR's groen en is de uitkomst het niet.Dat het telkens om één regel ging, komt doordat elke verhoging het plafond exact op de toenmalige telling zette. Met nul lucht is de eerstvolgende regel er één te veel. De tip onderaan de poortrun vroeg daar zelf om, en meldde zich ook bij een winst van twee regels.
mainis op dit moment rood; deze PR maakt hem groen.Wat er verandert
1. Eén zoek-/vervangstand voor beide broneditors. De find/replace-staat stond twee keer in de boom — zeven velden en acht methoden, in
document_editor_screen.dartén inmarkdown_deck_editor.dart, tot op de klemregels na gelijk. Nu éénFindReplaceSession.document_editor_screen.dart: 1225 → 1113 regels,_DocumentEditorScreenState1228 → 1115markdown_deck_editor.dart: 993 → 895 — die stond zeven regels onder de harde grens van 1000 en was de volgende in de rij(Getallen na de rebase op #1706, dat er zelf 13 regels bij deed en het plafond wéér exact op de telling zette: 1225 op 1225.)
De oude baseline-regels beweerden dat dit niet kon zonder private-veldtoegang. Wat de methoden aan de State bond was
_controller(gaat mee als parameter),_viewMode(blijft daar — alleen de gastheer weet of de cursor in de bron of in Quill staat) ensetState(een callback).2. Plafonds omlaag, mét lucht. 1225 → 1150 voor het bestand, 1228 → 1150 voor de State, bij een werkelijke 1113/1115. Zevenendertig regels lucht in plaats van strak op de telling; beide plafonds staan lager dan ervoor, dus de ratchet ging vooruit. De kop van
fileSizeBaselinelegt uit waarom strak-pinnen breekbaar is, en de krimp-tip vraagt nu om die lucht in plaats van erom hem weg te halen — en zwijgt bij een winst die te klein is om te verzilveren.3.
static-gatedraait ook op een push naarmain. Tot nu toe was de dure Linux-poort het eerste dat de échte samenvoeging zag, tientallen minuten later — lang genoeg voor de volgende sessie om eroverheen te mergen en dezelfde rode poort nog eens te melden. Drie van de vijf rode runs waren precies dat. Voorkómen doet dit niet; dat kan alleen door elke PR vlak vóór de merge opnieuw tegen de actuelemainte draaien.Twee gedragsverschillen, beide bewust
Getoetst
make check-static— groenmake check-registrations— groendart run tool/check_conventions.dart— groen, en de tip is nu stil op de vijf ruis-meldingen (2–6 regels winst)find_replace_session(nieuw, 13),find_replace_dialog,markdown_deck_editor+_coverage,editor_coverage_extra,document_editor_screen(incl. Bron/Visueel zoeken, vervangen, Escape),app_shell_actions,markdown_source_controller,class_size_ratchet,ratchet_trend_tool,docs_claims_match_code,file_extension,source_patchergate-linux; die is hier niet lokaal gedraaid omdat een parallelle sessie de machine met een coverage-run bezet hield.Bewaker
Overgeslagen, expliciet: deze wijziging raakt geen van de vijf criteria. Geen bestandsformaat, geen opslag, geen afhankelijkheid erbij, geen uitgaand verkeer, geen publieke belofte — het is een interne herschikking, een ratchet-waarde en een CI-trigger. Geen zichtbare tekst erbij, dus ook geen l10n.
534ed64bc5b4c0daca9e