# task-308.1 완료 보고서
## LSP(pyright) QC 파이프라인 통합 + LSP 우선 사용 규칙 시스템화

**팀**: dev2-team (오딘 팀장)
**작업자**: 토르(백엔드), 헤임달(테스터), 오딘(문서/통합)
**완료일**: 2026-03-06

---

## 작업 내용

### 1. pyright_check verifier 추가
- **파일**: `/home/jay/workspace/teams/dev1/qc/verifiers/pyright_check.py` (신규)
- `--check-files`로 전달된 Python 파일에 대해 `pyright --outputjson` 실행
- 판정: 0 errors → PASS, 경미한 에러만 → WARN, 심각 에러 → FAIL, 미설치 → SKIP
- 경미한 규칙: reportReturnType, reportArgumentType, reportCallIssue, reportIndexIssue

### 2. qc_verify.py 수정
- **파일**: `/home/jay/workspace/teams/dev1/qc/qc_verify.py` (수정)
- import에 `pyright_check` 추가
- `ALL_CHECKS`에 `"pyright_check"` 추가
- `run_check()` 함수에 pyright_check 분기 추가

### 3. QC-RULES.md v2.1 업데이트
- **파일**: `/home/jay/workspace/teams/shared/QC-RULES.md` (수정)
- verifier 목록 테이블에 `pyright_check` 행 추가
- `--check-files` 파라미터 설명 보강 (pyright_check 연동 명시)
- 변경 이력에 v2.1 기록

### 4. DIRECT-WORKFLOW.md LSP 규칙 추가
- **파일**: `/home/jay/workspace/prompts/DIRECT-WORKFLOW.md` (수정)
- "LSP 활용 규칙" 섹션 추가 (작업 규칙 앞)
- pyright 체크 필수, WARN 허용 기준, 팀 공용 스크립트 경로 명시

### 5. run_pyright.sh 팀 공용 스크립트
- **파일**: `/home/jay/workspace/teams/shared/run_pyright.sh` (신규)
- 개별 파일 또는 `--dir` 디렉토리 모드 지원
- 색상 출력, 요약, exit code 반환

---

## 생성/수정 파일 목록

| 파일 | 상태 |
|------|------|
| `teams/dev1/qc/verifiers/pyright_check.py` | 신규 (108줄) |
| `teams/dev1/qc/qc_verify.py` | 수정 (3줄 변경) |
| `teams/shared/QC-RULES.md` | 수정 (v2.0 → v2.1) |
| `prompts/DIRECT-WORKFLOW.md` | 수정 (LSP 규칙 섹션 추가) |
| `teams/shared/run_pyright.sh` | 신규 (68줄, chmod +x) |

---

## 테스트 결과

### pyright_check verifier
- **PASS 케이스**: `pyright_check.py` 자체를 검사 → 0 errors, 0 warnings → PASS
- **SKIP 케이스**: 파일 미지정 시 → SKIP ("No files specified")

### run_pyright.sh
- 파일 지정 실행: 정상 (0 errors 출력, exit 0)
- 인자 없이 실행: Usage 메시지 출력, exit 1

### qc_verify.py 통합 테스트
- `--check-files` 옵션과 `--skip api_health` 함께 실행
- pyright_check: PASS, 기존 verifier(data_integrity): PASS
- 기존 기능 regression 없음

---

## QC 자동 검증 결과

```json
{
  "pyright_check": {"status": "PASS", "details": ["0 errors, 0 warnings found"]},
  "data_integrity": {"status": "PASS"},
  "file_check": {"status": "PASS (파일 존재 확인)"},
  "api_health": {"status": "SKIP (서버 작업 아님)"},
  "test_runner": {"status": "SKIP (테스트 디렉토리 미지정)"},
  "schema_contract": {"status": "SKIP (workers 미해당)"}
}
```

---

## 버그 유무
없음

## 비고
- pyright 1.1.408 확인 (`~/.nvm/versions/node/v24.14.0/bin/pyright`)
- 기존 5개 verifier 동작에 영향 없음 (추가만 수행)
- pyright_check는 `--check-files`로 전달된 .py 파일만 대상으로 동작
