Deweloperzy projektu LLVM zatwierdzili zasady korzystania z narzędzi AI w procesie tworzenia. Potrzeba regulacji użycia AI wynika ze wzrostu liczby niepotrzebnych zmian proponowanych do włączenia do bazy kodu LLVM. Termin „niepotrzebne” odnosi się do zmian generowanych przez narzędzia AI i przesyłanych tak, jak są, bez zrozumienia istoty, weryfikacji i z postawą „admin i tak sobie poradzi”. Tego rodzaju aktywność zwiększa obciążenie dla osób odpowiedzialnych i zmusza je do poświęcania czasu na analizowanie bezużytecznego kodu.
Jednocześnie deweloperzy LLVM przyznają, że przy odpowiednim użyciu AI może być przydatnym narzędziem przyspieszającym rozwój. Zasady stosowania AI w LLVM są częściowo oparte na regulacjach opublikowanych w zeszłym roku przez projekt Fedora. Główną ideą przyjętych zasad jest to, że deweloperzy nie powinni przerzucać obowiązków związanych z recenzowaniem kodu generowanego przez asystentów AI na osoby odpowiadające za jego utrzymanie.
Oprócz wspomnianej w zasadach Fedory odpowiedzialności za przekazywaną zmianę, w zasadach LLVM wprowadzono wymóg obowiązkowej recenzji ręcznej kodu generowanego przez AI przed zasugerowaniem zmiany w projekcie. Ponadto, osoba przygotowująca zmianę powinna dobrze rozumieć przesłany kod i być gotowa odpowiadać na związane z nim pytania. Zaleca się ręczne sporządzanie opisów do pull requestów, a nie poleganie na przygotowaniu tekstu towarzyszącego przez AI.
Podczas przekazywania zmiany, której znaczna część została wygenerowana przez narzędzia AI, w notatce do pull requesta należy dodać informacje o zastosowaniu AI, na przykład, wskazując tag „Assisted-by: nazwa asystenta AI”. Zakazane jest korzystanie z zautomatyzowanych narzędzi AI, takich jak zintegrowany z GitHub agent AI @claude, wykonujących działania lub dodających komentarze bez udziału człowieka.
Przyjęte zasady dotyczą nie tylko kodu w zapytaniach o zmiany, ale także dokumentów RFC proponujących nową funkcjonalność, zgłoszeń o podatnościach i błędach, komentarzy i opinii do pull requestów.
Warto również wspomnieć o decyzji Daniela Stenberg, twórcy narzędzia do przesyłania i pobierania danych w sieci curl, o zakończeniu programu wypłaty nagród za ujawnienie informacji o lukach w Curl. Wypłaty nagród zostaną wstrzymane z końcem stycznia z powodu licznych zgłoszeń spamowych generowanych przez asystentów AI i przesyłanych bez weryfikacji rzeczywistego istnienia luk.
Doniesiono, że w pierwszych dwóch tygodniach stycznia złożono 20 wniosków o nagrody, które rzekomo wskazywały na istnienie luk. Analiza tych wniosków wykazała, że żaden z nich nie ujawnił rzeczywistych luk. Autorom raportów o lukach zaleca się, aby nie zgłaszali problemów, jeśli nie rozumieją ich istoty i nie mogą odtworzyć błędu. Weryfikacja takich zgłoszeń pochłania dużo czasu zespołu odpowiedzialnego za bezpieczeństwo. Zakłada się, że wstrzymanie wypłat nagród obniży motywację ludzi do przesyłania spamowych i słabo weryfikowanych raportów o lukach, niezależnie od tego, czy zostały one wygenerowane przez AI, czy nie.
Dodatkowo: O ograniczeniach w przyjmowaniu wniosków o nagrody za wykrywanie luk ogłosił również projekt Node.js, który teraz będzie akceptował na HackerOne tylko wnioski od uczestników z wysokim ratingiem, którzy już mają doświadczenie w przesyłaniu poprawnych raportów o problemach (signal > 1). Powodem zmiany jest znaczny wzrost liczby niskiej jakości wniosków. Weryfikacja zgłoszeń spamowych zajmuje czas i zasoby, które mogłyby być skierowane na rzeczywistą pracę nad poprawą bezpieczeństwa platformy. Od 15 grudnia do 15 stycznia projekt otrzymał ponad 30 takich zgłoszeń.
Źródło: opennet.ru
