Po vydání aktualizace 3.4.3 utility pro synchronizaci souborů rsync, která opravila šest zranitelností, byly pozorovány regrese, které narušily dříve používané konfigurace. Zmatek a nespokojenost dále způsobilo přidání přibližně 50 změn do repozitáře rsync za poslední dva týdny, připravených pomocí modelu umělé inteligence Claude. Někteří uživatelé připisovali regrese nekvalitním záplatám zranitelností generovaným umělou inteligencí.
Některé regrese v rsync 3.4.3:
- Příkazy pro inkrementální zálohování, které zadávaly více možností „--compare-dest“, začaly selhávat;
- Stal se
Není možné sestavit rsync na systémech s jádry. Linux před verzí 5.6 kvůli použití systémového volání openat2 (commit 1, commit 2); - Formát „host::module/path“ (commit) přestal fungovat.
- Příkazy používající tuto volbu již nejsou rozpoznávány.
„--delete-missing-args“ spolu s „--files-from“ (commit). - Během synchronizace se začaly objevovat chyby, že hodnota modtime_nsec je mimo přijatelný rozsah.
- Sestavení bylo na starších verzích nefunkční. macOS.
- Chování volby „--link-dest“ se změnilo (commit).
- Při spouštění multiplexeru terminálu tmux docházelo k pádům.
Andrew Tridgell, zakladatel projektů Samba a rsync, který se před dvěma lety vrátil k údržbě rsync a přidal problematické commity, publikoval poznámku vysvětlující situaci. Podle Andrewa se projekt rsync potýkal s lavinou hlášení o zranitelnostech, z nichž mnohé byly generovány umělou inteligencí. Ve verzi rsync 3.4.3 byly zavedeny regrese za cenu opravy zranitelností. Andrew se záměrně rozhodl zranitelnosti opravit, a to i přes skutečnost, že opravy by mohly narušit některé vzácné, ale správné případy užití rsync. Tyto případy užití nebyly pokryty starou testovací sadou ani manuálními kontrolami, takže regrese zůstaly bez povšimnutí a budou opraveny v příští verzi 3.4.4.
Vznikající situace přiměla Andrewa k modernizaci testovací sady, zavedení kontrol pokrytí kódu, implementaci kontinuálního integračního testování napříč různými platformami a provedení analýzy zranitelností. Vzhledem k tomu, že Andrewovi je téměř 60 let a raději by se plavil na lodi, než aby trávil čas opravováním zranitelností v rsync, rozhodl se tváří v tvář lavině hlášení o zranitelnostech najmout asistenty s umělou inteligencí, kteří by vykonávali rutinní úkoly. Andrew vyvinul architekturu, testovací plán a strukturu nové testovací sady a poté ji pomocí umělé inteligence vygeneroval v Pythonu, čímž nahradil dříve používaný shellový testovací skript. Vývoj využíval Claudeův model s ručním ověřováním výsledků a křížovou validací v Codexu a Gemini.
Zdroj: opennet.ru
