# Absorption Registry 구축 + Health Check 스크립트

## 한정승인

## 작업 목표
외부 소스에서 흡수한 기능/워크플로우를 체계적으로 추적하는 registry 파일과 작동 여부를 자동 검증하는 health check 스크립트를 구축한다.

## 배경
- 7개 외부 소스(fireauto, gstack, MoAI-ADK, superpowers, PM skills, Synode, taste-skill)를 분석하고 우리 시스템에 흡수해왔음
- 문제: "뭘 가져왔는지, 어디에 구현했는지, 실제 작동하는지" 추적이 안 됨
- 13개 리서치 파일에 "도입 권장 항목"이 명시되어 있어 역추적 가능

## 작업 내용

### 1. 리서치 파일 파싱 → 흡수 항목 전수 추출

아래 13개 리서치 파일에서 "도입/적용/권장" 항목을 전부 추출:

| 소스 | 리서치 파일 (모두 `/home/jay/workspace/memory/research/` 하위) |
|------|------|
| fireauto | `fireauto-analysis.md` |
| gstack | `gstack-analysis.md`, `gstack-deep-analysis.md`, `gstack-test-strategy-adoption.md`, `gstack-workflow-adoption.md` |
| MoAI-ADK | `moai-adk-analysis.md`, `moai-adk-application.md` |
| superpowers | `superpowers-deep-analysis.md`, `superpowers-our-system-comparison.md`, `superpowers-vs-anu-comparison.md` |
| PM skills | `pm-skills-analysis.md` |
| Synode | `synode-vs-anu-comparison.md` |
| taste-skill | `taste-skill-analysis.md` |

각 파일에서 "★★★", "즉시 도입", "P1", "Phase 1", "도입 가능", "적용 방안" 등의 섹션을 찾아 구체적 항목을 추출한다.

### 2. 각 항목별 실제 구현 여부 코드 교차 대조

추출한 각 항목에 대해:
- 관련 파일이 실제로 존재하는지 확인 (스킬, 스크립트, Hook, 설정 등)
- grep으로 관련 코드/설정이 존재하는지 검색
- status 판정:
  - `recommended`: 리서치에서 권장했으나 미구현
  - `implemented`: 코드/파일이 존재하나 작동 미확인
  - `active`: 최근 N일 내 실제 사용/실행 확인
  - `degraded`: 구현되었으나 작동 안 함 (파일 없음, 에러 등)
  - `duplicate`: 다른 소스의 항목과 기능 중복

### 3. absorption-registry.yaml 생성

경로: `/home/jay/workspace/config/absorption-registry.yaml`

구조:
```yaml
version: 1
last_updated: "2026-04-11T..."
sources:
  fireauto:
    repo: "imgompanda/fireauto"
    analyzed_date: "2026-04-09"
    research_files:
      - "memory/research/fireauto-analysis.md"
    prd: "memory/specs/prd-fireauto-integration.md"
    items:
      - id: "fireauto-f1-audit-trail"
        name: "audit-trail task_id 추적"
        priority: "★★★"
        source_section: "도입 우선순위 #1"
        status: "active"
        implemented_in:
          - "~/.claude/hooks/post-tool-use.sh"
        health_check:
          type: "file_recent_activity"
          target: "audit-trail.jsonl"
          max_age_hours: 24
        notes: "Phase 2(task-1623.1)에서 구현"
      # ... 더 많은 항목
  gstack:
    repo: "gstack-workflow"
    # ...
```

### 4. absorption-health-check.py 구현

경로: `/home/jay/workspace/scripts/absorption-health-check.py`

기능:
- `absorption-registry.yaml` 로드
- 각 항목의 health_check 정의에 따라 자동 검증:
  - `file_exists`: 파일 존재 확인
  - `file_recent_activity`: 파일의 최근 수정 시간 확인
  - `grep_pattern`: 특정 패턴이 파일에 존재하는지 확인
  - `audit_trail_recent`: audit-trail.jsonl에 최근 N시간 내 기록 존재 확인
  - `process_running`: 프로세스 실행 여부 확인
- 결과 출력: JSON (대시보드 API에서 사용)
```json
{
  "timestamp": "2026-04-11T...",
  "summary": {"total": 45, "active": 30, "implemented": 8, "recommended": 5, "degraded": 2},
  "by_source": {
    "fireauto": {"total": 12, "active": 10, "implemented": 2},
    ...
  },
  "duplicates": [
    {"items": ["fireauto-f7", "gstack-a3"], "description": "에러 재시도 로직"}
  ],
  "items": [...]
}
```
- CLI: `python3 absorption-health-check.py [--source fireauto] [--status degraded]`

### 5. 테스트

- pytest 단위 테스트 작성
- YAML 파싱 정상 동작
- 각 health_check 타입별 검증 로직 테스트
- 실제 registry로 1회 실행하여 결과 확인

## 주의사항
- 리서치 파일은 읽기만 (수정 금지)
- 항목 추출 시 "참고만" 수준은 제외, "도입 권장" 이상만 포함
- 같은 기능이 여러 소스에서 권장된 경우 duplicates로 표시

## 보고서
`/home/jay/workspace/memory/reports/task-{TASK_ID}.md`