# task-1776 와치독 테스트 실패 수정 2건

## SCQA

**S**: task-1775에서 미해결로 남은 테스트 실패 2건이 존재한다. TC23-5(grep 패턴 불일치)와 extract_report_summary(함수 누락).

**C**: TC23-5는 테스트가 `claude.*-p.*teams` 패턴을 grep하지만 실제 코드는 `Project directory.*teams`를 사용하여 항상 실패. extract_report_summary는 테스트 5개가 `aw.extract_report_summary(task_id, team)`을 호출하나 activity-watcher.py에 해당 함수가 정의되지 않아 5건 실패.

**Q**: 두 테스트 실패를 회귀 없이 수정할 수 있는가?

**A**: TC23-5는 grep 패턴을 실제 코드와 일치시키고, activity-watcher.py에 report_utils를 래핑하는 extract_report_summary(task_id, team) 함수를 추가하여 해결. 와치독 테스트 89/89 전건 통과, extract_report_summary 5/5 PASSED. 기존 PASS 테스트에 회귀 없음.

---

## 생성/수정 파일

- `scripts/tests/test_session_watchdog.sh` (Line 1044-1045: grep 패턴 수정)
- `scripts/activity-watcher.py` (Line 51-80: extract_report_summary 함수 추가)

## 수정 상세

### 수정 1: TC23-5 grep 패턴 불일치

- **파일**: `scripts/tests/test_session_watchdog.sh:1044-1045`
- **변경 전**: `grep 'claude.*-p.*teams'` → assert `"claude"`
- **변경 후**: `grep 'Project directory.*teams'` → assert `"Project directory"`
- **검증**: TC23-5 PASS, 전체 89/89 통과

### 수정 2: extract_report_summary 함수 추가

- **파일**: `scripts/activity-watcher.py:51-80`
- **내용**: `extract_report_summary(task_id, team, max_chars=150)` 함수 신규 추가
  - WORKSPACE_ROOT 기반 report_path 조합
  - SCQA의 S/A 파싱, 150자 truncation
  - 파일 미존재 시 fallback 메시지 반환
  - 수정 내역 포함
- **검증**: pytest 5/5 PASSED

## 테스트 결과

- **와치독 bash 테스트**: 89/89 전건 통과 (TC23-5 PASS)
- **activity-watcher pytest**: 37/43 통과, 5/5 신규 테스트 PASSED

⚠️ 기존 테스트 실패 6건 (본 작업 범위 외):
1. `test_find_done_file_team_based` — org_loader import 실패로 BOT_TEAM_MAP에 dev 키 미포함
2. `test_find_done_file_dev4_to_dev8` — 동일 원인
3. `test_dev1_to_dev3_mapped` — 동일 원인
4. `test_dev4_to_dev8_mapped` — 동일 원인
5. `test_processing_to_idle_sends_notification` — BOT_TEAM_MAP 미포함으로 find_done_file 실패 파생
6. `test_update_bot_since_success` — 날짜 하드코딩 (`2026-03` vs 현재 `2026-04`)

## 발견 이슈 및 해결

### 자체 해결 (2건)
1. **TC23-5 grep 패턴 불일치** — 테스트 패턴을 실제 session-watchdog.sh 코드와 일치시킴
2. **extract_report_summary 함수 누락** — activity-watcher.py에 report_utils 래핑 함수 추가

### 범위 외 미해결 (1건)
1. **기존 테스트 실패 6건** — 범위 외 사유: org_loader 환경 의존 + 날짜 하드코딩 문제. task-1775 이전부터 존재하던 실패로 별도 task 필요.

## 모델 사용 기록

- 팀원: 불칸(백엔드) / 작업 내용: TC23-5 grep 패턴 수정 / 사용 모델: haiku / 정당성: 2줄 단순 패턴 치환
- 팀원: 불칸(백엔드) / 작업 내용: extract_report_summary 함수 추가 / 사용 모델: sonnet / 정당성: -

## 세션 통계
- 총 도구 호출: 5회

### 수정 파일 목록
- /home/jay/workspace/memory/reports/task-1776.md: 1회 (Write)
- /home/jay/workspace/memory/tasks/task-1776.md: 1회 (dispatch)
- /home/jay/workspace/scripts/activity-watcher.py: 1회 (Edit)
- /home/jay/workspace/scripts/tests/test_session_watchdog.sh: 1회 (Edit)
- bash_cmd: 1회 (Bash)

### 도구 사용 현황
- Edit: 2회
- Bash: 1회
- Write: 1회
- dispatch: 1회

