# 대시보드 유실 기능 복원

## 목표
대시보드 개선 과정에서 빠진 2가지 기능을 현재 대시보드에 복원.

## 프로젝트 경로
`/home/jay/workspace/dashboard/`

## 현재 대시보드 상태
- server.py: 1230줄
- index.html: 1072줄
- React(CDN) + Tailwind CSS, SSE 실시간 업데이트
- 기존 기능: TeamCard, ProjectView, TaskHistory, SystemView, ArchiveView, RecentReportsWidget 등 정상 동작 중

## 복원할 기능 1: 작업 상세 모달 (task-430.1)

원래 보고서: `/home/jay/workspace/memory/reports/task-430.1.md`

### server.py에 추가할 것:
1. **DataLoader.get_task_detail(task_id)** 메서드
   - task-timers.json에서 작업 메타데이터 조회
   - `memory/reports/<task_id>.md` 보고서 파일 읽기
   - `memory/tasks/<task_id>.md` 지시서 파일 읽기
   - 파일 없으면 null 반환
2. **`/api/task-detail/<task_id>` GET 엔드포인트**
   - 동적 경로 매칭으로 task_id 추출
   - get_task_detail() 호출 후 JSON 응답

### index.html에 추가할 것:
1. **marked.js CDN** 추가 (head 태그에)
2. **TaskDetailModal 컴포넌트** 신규 생성
   - API fetch → 로딩 스피너 → 상세 정보 표시
   - 상단: task_id, 팀, 상태 badge, 소요시간
   - 본문: 보고서 마크다운 렌더링 (marked.js 사용)
   - 보고서 없으면 지시서, 둘 다 없으면 안내 메시지
   - 모달 닫기: X 버튼 / 배경 클릭
   - 모바일 반응형: 풀스크린 (p-4, max-h-[90vh])
3. **ProjectView 수정**
   - `selectedTaskId` state 추가
   - 작업 행 클릭 시 모달 표시 (cursor-pointer, onClick)
   - task_id 텍스트 파란색 + 호버 효과
   - 모달 조건부 렌더링

## 복원할 기능 2: 프로젝트별 안건(To-Do) 시스템 (task-431.1)

원래 보고서: `/home/jay/workspace/memory/reports/task-431.1.md`

### 백엔드 데이터 (이미 존재함 — 수정 불필요):
- `/home/jay/workspace/memory/todo.json` — 안건 데이터 (이미 존재)
- `/home/jay/workspace/memory/todo-manager.py` — CLI 도구 (이미 존재)

### server.py에 추가할 것:
1. **DataLoader.load_todo()** 메서드 — todo.json 로드
2. **/api/todo GET 엔드포인트** — 목록 조회 (project 필터링 지원)
3. **/api/todo POST 엔드포인트** — 안건 추가
4. **/api/todo PUT 엔드포인트** — 안건 수정, sub_items 완료 시 자동 완료
5. **/api/todo DELETE 엔드포인트** — 안건 삭제
6. **do_POST, do_PUT, do_DELETE, do_OPTIONS 메서드** — 현재 서버에 없으면 추가 (이미 있으면 todo 라우팅만 추가)

### index.html에 추가할 것:
1. **IssueItem 컴포넌트** — 안건 행, 클릭 시 sub_items 펼침/접힘
2. **ProjectView에 안건 섹션 추가** — 각 프로젝트별 진행중/미착수 안건 표시, 완료 안건 숨김
3. fetchData에 todo 데이터 추가

## 중요 주의사항
- **현재 코드를 반드시 먼저 읽고** 기존 구조에 맞춰 코드를 추가할 것
- 현재 server.py에 do_POST/PUT/DELETE/OPTIONS가 이미 있는지 확인 후 처리
- 기존 기능(TeamCard, TaskHistory, SystemView, ArchiveView, SSE 등) 절대 깨뜨리지 말 것
- index.html의 기존 React 컴포넌트 구조, Tailwind 클래스 패턴을 따를 것
- pyright 타입 체크 통과 필수
- 복원 후 대시보드 서버 시작하여 실제 동작 확인

## 테스트 방법
1. 서버 시작: `cd /home/jay/workspace/dashboard && python3 server.py &`
2. `/api/task-detail/task-430.1` 호출하여 JSON 응답 확인
3. `/api/todo` 호출하여 안건 목록 확인
4. 브라우저에서 ProjectView 접속 → 작업 클릭 시 모달 확인
5. ProjectView에서 안건 목록 표시 확인
6. 기존 기능(팀 현황, 시스템뷰, 아카이브) 정상 동작 확인
