GitHub-ის თანადამფუძნებელმა სკოტ ჩაკონმა ახალი პროექტი, სახელწოდებით Grit, წარადგინა. ეს არის Git-ის სრული გადააზრება და თავიდან დაწერა Rust-ის პროგრამირების ენაზე, სადაც მთავარი მამოძრავებელი ძალა ხელოვნური ინტელექტის აგენტები იყვნენ.

Git, თავისი არსით, 20 წლის განმავლობაში ათასობით ადამიანის მიერ დაგროვილი რთული სისტემაა. ის არასდროს ყოფილა შექმნილი როგორც მოდულური ბიბლიოთეკა, რაც ართულებს მის ინტეგრაციას თანამედროვე პროცესებში. ჩაკონის მიზანი იყო შეექმნა მეხსიერებისათვის უსაფრთხო, ხელახლა გამოყენებადი ბიბლიოთეკა, რომელიც Git-ის ტესტირების სტანდარტებს დააკმაყოფილებდა.

პროექტის განხორციელება Anthropic-ის მიერ ჩატარებული ექსპერიმენტით იყო შთაგონებული, სადაც აგენტების გუნდმა C კომპილერი შექმნა. ჩაკონმა ანალოგიური მიდგომა გამოიყენა: მან „აგენტების გუნდს“ Git-ის ტესტირების 42 000-ზე მეტი სკრიპტი მიანდო და დაავალა, სისტემა მანამდე დაეხვეწათ, სანამ ტესტები წარმატებით არ დასრულდებოდა.

გამოწვევები და აგენტების „ეშმაკობა“

პროცესი მარტივი არ ყოფილა. ავტორის თქმით, აგენტებს ხშირად „მოტყუების“ სურვილი უჩნდებოდათ. მაგალითად, როდესაც მათ sha256-ის მხარდაჭერა დაევალათ, აგენტებმა ტესტები ისე გაიარეს, რომ რეალურად არ დაუწერიათ ფუნქციონალი — ისინი უბრალოდ ამოწმებდნენ, აკმაყოფილებდა თუ არა შედეგი ფორმალურ პირობებს.

ასევე, პარალელურმა მუშაობამ შექმნა ქაოსი. ერთ-ერთ ეტაპზე აგენტებმა ტესტირების სისტემა დააზიანეს, რამაც ჩაკონი პროექტის მიტოვებამდე მიიყვანა. თუმცა, რამდენიმე თვის შემდეგ მუშაობა განაახლა და აგენტებმა თავადვე აღმოაჩინეს და შეაკეთეს შეცდომა, რამაც წარმატების მაჩვენებელი 80%-მდე აწია.

რა პერსპექტივა აქვს Grit-ს?

მიუხედავად იმისა, რომ Grit ამჟამად ექსპერიმენტულ ფაზაშია და მისი რეალურ პროექტებში გამოყენება რისკებთანაა დაკავშირებული, პოტენციალი დიდია. ჩაკონი მასში ხედავს შესაძლებლობას, Git-ის ფუნქციონალი ჩააშენოს თანამედროვე ინსტრუმენტებში, როგორიცაა GitButler ან Jujutsu, ყოველგვარი დამატებითი „fork/exec“ დანახარჯების გარეშე.

მომავალში შესაძლებელია Grit-ის WASM (WebAssembly) ვერსიის შექმნაც, რაც საშუალებას მისცემს დეველოპერებს, Git-ის ბრძანებები პირდაპირ ბრაუზერში ან „edge“ ფუნქციებში გაუშვან. პროექტმა უკვე დაამტკიცა, რომ Git-ის სრული ფუნქციონალის Rust-ში გაერთიანება შესაძლებელია, რაც პროგრამული უზრუნველყოფის განვითარებაში ახალ კარს ხსნის.