ძირითადი პრინციპი: ხელოვნური ინტელექტის მიერ გენერირებული კოდი გადის ისეთივე კონტროლ გეიტებს, როგორც ადამიანის მიერ დაწერილი კოდი — ნაკლები არაფერი. AI არ ამცირებს რევიუს სტანდარტს; თუ რამე, დაამატებს რამდენიმე ახალ ხარვეზის მოდს, რომელზეც უნდა ვიყოთ ფრთხიმანი. პასუხისმგებლობა რჩება ის ინჟინერის, რომელიც მას აყენებს, ის ხელსაწყოს, რომელმაც ის დაწერა.
იგივე გეიტები, როგორც ნებისმიერი კოდი
- კოდის რევიუ - ადამიანის მიერ, რომელიც ცნობს ცვლილებას.
- ტესტები, რომელიც რეალურად ახდენს ქცევას, არა მხოლოდ ფარიკობს დაფაროვანებას.
- Linter და ფორმატერები სტილის თანმიმდევრობისთვის.
- SAST / დამოკიდებულების სკანირება CI-ში ცნობილი კრებულების შიგნით და რისკიანი პაკეტების დასაჭერად.
თუ ის არ გაივიწყებდა ადამიანის კონტრიბიუტორს, ის არ გაივიწყებს იმიტომ, რომ AI-მ ის დაწერა.
დამატებითი ხარვეზის რეჟიმები, რომლებიც AI-ს სპეციფიკურია
- ჰალუცინირებული ან დაუცველი API-ები. AI გამოიგონებს სანდო, მაგრამ არ არსებულ ფუნქციებს, ან მიმართავს მოძველებული, უსაფრთხო შაბლონებს. შეამოწმეთ რეალური დოკუმენტაციის წინააღმდეგ.
- საიდუმლოები და სენსიტიური მონაცემები. შეამოწმეთ, რომ არაფერი არ იყო hardcoded ან ჭიქელი prompt-ში.
- ლიცენზიის დამლაგებელი. გენერირებული კოდი შეიძლება მეორდება ლიცენზირებული მოტივები; იყოს განზრახ წარმოშობისა და კომპლაენსის შესახებ.
- სუბტილური ლოგიკური შეცდომები დამტკიცებული, სუფთა კოდის შიგნით, რომელიც ჯობს სწორი, მაგრამ არ არის.
არამოლოდ: ავტორები სწავლობენ რას გააერთიანეს
ყველაზე მნიშვნელოვანი წესი: ინჟინერი უნდა გაიგოს ყველა ხაზი, რომელიც მას აქვს. "AI-მ დაწერა" არასოდეს არის ახსნა ხარვეზისთვის რევიუში. თუ ავტორი ვერ ხსნის, რატომ არის კოდი სწორი, ის არ არის მზადი — მხედელობის გარეშე, თუ ვინმე ან რა დაბეჭდა.
რატომ არის ეს მნიშვნელოვანი
AI აადვილებს უფრო მეტი კოდის აწარმოებას, რაც ნიშნავს მეტი ზედაპირის მხარდაჭერა თუ სტანდარტი დაეცემა. გენერირებული კოდის სტანდარტზე ზემოთ ხელი შეუშლის — და პასუხისმგებლობის დანამკირ ადამიანთან - ის ნიშნავს, რომ გუნდი AI-ით უფრო სწრაფად იმოძრაოს ხარისხის ან უსაფრთხოების გარეშე.
