**task-1784.1 완료 보고** (dev6-team) **완료 보고서: 와치독 set -e + grep 충돌 수정** (3분 21초) **핵심 결과** 모든 5개 위치에 `|| true`를 command substitution 바깥에 추가하여, grep 실패 시 exit code를 0으로 변환. 변수 할당은 빈 문자열로 정상 동작. bash 구문 검사 통과, pytest 16건 전체 통과. ## 수정 내역 ### 수정 파일 - `/home/jay/workspace/scripts/session-watchdog.sh` ### 변경 내용 (5개 라인) | 라인 | 변수 | 용도 | |------|------|------| | 128 | `PID` | schedule_id 기반 PID 추적 (Primary) | | 166 | `BOT_PID` | 교차 체크용 봇 PID 추적 | | 175 | `pid` | 팀 디렉토리 fallback PID 추적 (for 루프 내) | | 210 | `DEATH_CHECK_PID` | 사망 원인 분석용 PID 확인 | | 349 | `STALE_PID` | 재위임 전 잔존 프로세스 kill 대상 PID | 모든 라인에 동일 패턴 적용: ```bash # 변경 전 VAR=$(ps -eo pid,args --no-headers -ww | grep "pattern" | grep -v grep | awk '{print $1}' | head -1) # 변경 후 VAR=$(ps -eo pid,args --no-headers -ww | grep "pattern" | grep -v grep | awk '{print $1}' | head -1) || true ``` ## 발견 이슈 및 해결 ### 자체 해결 (1건) 1. **5개 ` **발견/해결 이슈 1건** 1. **5개 `ps|grep` 패턴 모두 `|| true` 누락** — command substitution 바깥에 `|| true` 추가로 `set -e` + `pipefail` 조합에서 안전하게 동작하도록 수정