Mój agent AI do kodowania ciągle się psuł — co zmieniłem
Sześć tygodni temu mój agent AI do kodowania produkował śmieci.
Pisał funkcje, które się kompilowały, ale nic nie robiły. Przechodził testy z niewłaściwych powodów. Naprawiał jeden błąd, ale tworzył trzy nowe.
Myślałem, że problemem jest agent. Myliłem się. Problemem był mój własny brak dyscypliny.
Używam agenta AI do 40% mojej pracy inżynierskiej. Zajmuje się refaktoryzacją, generowaniem testów i badaniem błędów. Kiedy mój kod był nieuporządkowany, AI potęgowało ten bałagan trzykrotnie.
AI nie zastępuje dyscypliny. Ono jedynie wzmacnia to, co już posiadasz.
Oto jak zmieniłem swój workflow, aby poprawić wyniki:
Testy muszą sprawdzać zachowanie, a nie stan. Przestań pisać testy typu "assert user is not None." To kłamstwo. Test powinien sprawdzać konkretne dane, np. "assert user.email == expected_email." Jeśli test jest słaby, AI to wykorzysta.
Czytaj każdy pojedynczy diff. Kiedyś akceptowałem refaktoryzacje bez zaglądania do kodu. Prowadziło to do cyklicznych zależności i nieuporządkowanej architektury. Jeśli nie potrafisz wyjaśnić, dlaczego zmiana jest lepsza, odrzuć ją.
Spraw, aby stan był jawny. Nie pozwól AI "domyślać się", jak obsługiwać cache lub sesje. Zdefiniuj je w swoich promptach lub schematach. Stan wnioskowany prowadzi do cichych błędów, które kładą produkcję.
Pisz własne testy dla zmian wprowadzanych przez agenta. Za każdym razem, gdy agent zmienia kod, najpierw piszę test stworzony przez człowieka. Kosztuje to 15 minut, ale oszczędza godziny debugowania.
Wymagaj głośnych błędów. Jeśli zmiana przechodzi testy, ale psuje logikę, system musi to zgłosić. Nigdy nie przyjmuj "testy przeszły, wysyłaj" jako poprawnej metryki.
Wyniki:
- Liczba błędów na tydzień spadła z 5 do mniej niż 1.
- Czas debugowania spadł z 6 godzin do 1 godziny tygodniowo.
Agent się nie zmienił. To ja się zmieniłem.
Jeśli używasz agentów AI, najpierw napraw swój kod. Popraw testy, doprecyzuj stan i zaostrz proces przeglądu.
Agent jest lustrem. Upewnij się, że masz coś, co warto wzmacniać.
Źródło: https://dev.to/susiloharjo/my-ai-coding-agent-kept-breaking-what-i-changed-4l5f
Opcjonalna społeczność edukacyjna: https://t.me/GyaanSetuAi
