# 작업 보고서: task-15.2

- **팀**: dev3-team
- **담당**: 라(Ra) - 개발3팀장
- **작업 시간**: 2026-03-01 09:24 ~ 09:27 (2분 50초)
- **난이도**: normal

## 작업 내용

파이썬으로 간단한 메모장 프로그램 개발. 메모 추가/조회/삭제/검색, 타임스탬프 자동 기록, JSON 저장.

## GLM 결과 요약

GLM(dev3 에이전트)이 `memo_app.py`를 생성. MemoManager 클래스 기반으로 메모 CRUD + 검색 + JSON 영속화 구현. 테스트 코드 포함.

### GLM 코드 검토 결과 - 버그 3건 발견 및 수정

1. **ID 할당 버그 (심각)**: `len(self.memos) + 1`로 ID를 할당하여 삭제 후 추가 시 ID 중복 발생 가능
   - 수정: `max(m["id"] for m in self.memos, default=0) + 1` 방식으로 변경
2. **테스트 격리 실패**: setUp에서 기본 경로(`memos.json`)를 사용하여 테스트 간 데이터 간섭 발생
   - 수정: 테스트용 별도 파일(`test_memos.json`) 사용, tearDown에서 정리
3. **검색 테스트 기대값 오류**: "완료" 검색 시 "프로젝트 계획"이 매칭되는데 "할 일"을 기대
   - 수정: 기대값을 "프로젝트 계획"으로 수정

## 생성 파일 목록

- `/home/jay/workspace/teams/dev3/memo_app.py` - 메모장 프로그램 (MemoManager 클래스 + 테스트 코드)

## 구현된 기능

- `add_memo(title, content)` - 메모 추가 (타임스탬프 자동 기록)
- `get_all_memos()` - 전체 메모 조회
- `get_memo(memo_id)` - 특정 메모 조회
- `search_memos(keyword)` - 키워드 검색 (제목/내용, 대소문자 무시)
- `update_memo(memo_id, title, content)` - 메모 수정
- `delete_memo(memo_id)` - 메모 삭제
- `clear_all_memos()` - 전체 삭제
- `get_memo_count()` - 메모 개수 조회
- JSON 파일 자동 저장/로드

## 테스트 결과

- **통과**: 7 / 7
- **실패**: 0 / 7

테스트 항목:
1. 메모 추가 및 전체 조회 - PASS
2. 특정 메모 조회 - PASS
3. 메모 검색 - PASS
4. 메모 수정 - PASS
5. 메모 삭제 - PASS
6. 메모 개수 - PASS
7. 모든 메모 삭제 - PASS

## 버그 유무

- GLM 원본 코드: 버그 3건 (ID 할당, 테스트 격리, 테스트 기대값)
- 수정 후: 버그 없음
