# task-940.1: 아누시스템 전체 스펙 문서화 + 자동 업데이트 + 백업 시스템 (한정위임)

## 배경
- 아누시스템이 커지면서 기능/스킬/서비스/프로세스가 많아져 전체 모습을 한눈에 파악하기 어려움
- 제이회장님과 아누 모두 쉽게 참조할 수 있는 종합 스펙 문서 필요
- 실시간 변동 사항을 자동으로 반영하고, 6시간마다 백업하는 시스템 필요

## 작업 범위

### Step 1: 전체 스펙 문서 작성
`/home/jay/workspace/memory/specs/anu-system-spec.md` 생성

아래 섹션을 모두 포함하는 종합 스펙 문서 작성:

**1. 조직 구조**
- 수직조직(CC) 8팀 + 횡단조직(CR) 센터들
- 각 팀의 모델(Opus/Sonnet), 팀원, 역할
- 봇-팀 매핑 (bot-team-mapping.md 참조)
- 소스: `/home/jay/workspace/memory/organization-structure.json`

**2. 스킬 목록 + 활용 가이드**
- 현재 등록된 모든 스킬 목록
- 각 스킬의 용도, 트리거 조건, 사용 예시
- 소스: `/home/jay/.claude/skills/` 디렉토리 전체 스캔

**3. 서비스/인프라**
- 상시 가동 서비스: 대시보드(8000), Whisper GPU(8200), Cloudflare Tunnel 등
- 서버 정보: Ubuntu, GTX 1060 6GB, Tailscale IP(100.76.130.39), 공개 IP(211.49.68.111)
- 외부 연동: Firebase, Google Drive, YouTube API, Gemini, OpenAI, GitHub

**4. 주기적 프로세스**
- cron 스케줄 목록: `cokacdir --cron-list --chat 6937032012 --key c119085addb0f8b7`로 조회
- InsuWiki 6시간 크롤링, ThreadAuto 자동 게시 등
- 각 프로세스의 실행 주기, 트리거, 의존성

**5. 프로젝트 목록 + 현황**
- 각 프로젝트 경로, 기술 스택, Firebase 프로젝트, 배포 방식
- InsuWiki, InsuRo, MediScan, InfoKeyword, ThreadAuto
- 소스: `/home/jay/projects/` + 각 프로젝트 CLAUDE.md

**6. 핵심 워크플로우**
- dispatch.py 위임 프로세스
- .done 프로토콜 (완료 감지)
- task-timer 작업 기록
- 보고서 생성 (SCQA 프레임워크)
- 토큰 추적 (token-tracker.py)
- 에이전트 미팅 프로세스

**7. 도구/스크립트 목록**
- `/home/jay/workspace/scripts/` 전체 스캔
- 각 스크립트의 용도, 사용법, 의존성
- dispatch.py, task-timer.py, token-tracker.py, browser.py 등

**8. 데이터 흐름**
- task-timers.json, token-ledger.json, organization-structure.json 등 핵심 데이터 파일
- 각 파일의 구조, 업데이트 주기, 의존 관계

### Step 2: 자동 업데이트 스크립트 작성
`/home/jay/workspace/scripts/update-system-spec.py` 생성

- 시스템의 현재 상태를 자동으로 수집하여 anu-system-spec.md를 업데이트
- 수집 항목:
  - 스킬 디렉토리 스캔 (신규/삭제 감지)
  - cron 스케줄 목록 조회
  - 서비스 상태 (systemctl --user status)
  - 프로젝트 디렉토리 스캔
  - scripts/ 디렉토리 스캔
  - task-timers.json 통계
- 변경 사항이 있을 때만 업데이트 (불필요한 갱신 방지)
- 업데이트 시 변경 로그 기록: `memory/specs/anu-system-spec-changelog.md`

### Step 3: 6시간 백업 시스템
`/home/jay/workspace/scripts/backup-spec.sh` 생성

- 백업 대상: `memory/specs/anu-system-spec.md`
- 백업 경로: `/home/jay/workspace/memory/backups/system-spec/YYYY-MM-DD_HH/`
  - 예: `memory/backups/system-spec/2026-03-25_08/anu-system-spec.md`
- 보존 정책: 최근 7일분만 보존 (이전 자동 삭제)
- cokacdir --cron으로 6시간마다 스케줄 등록:
  ```
  "/usr/local/bin/cokacdir" --cron "python3 /home/jay/workspace/scripts/backup-spec.sh 실행" --at "0 */6 * * *" --chat 6937032012 --key c119085addb0f8b7
  ```

### Step 4: 자동 업데이트 cron 등록
- update-system-spec.py를 6시간마다 자동 실행 (백업 직후)
- haiku 모델 Task tool은 사용 불가 (독립 스크립트이므로)
- 대신 python3 스크립트가 직접 파일 시스템을 스캔하여 업데이트
- cokacdir --cron으로 등록

## 참조 자료
- 조직도: `/home/jay/workspace/memory/organization-structure.json`
- 봇-팀 매핑: `/home/jay/workspace/memory/specs/bot-team-mapping.md`
- 아누 가이드: `/home/jay/workspace/memory/specs/anu-guide.md`
- 스킬 디렉토리: `/home/jay/.claude/skills/`
- 스크립트 디렉토리: `/home/jay/workspace/scripts/`
- 프로젝트 디렉토리: `/home/jay/projects/`
- MEMORY.md: `/home/jay/.claude/projects/-home-jay--cokacdir-workspace-autoset/memory/MEMORY.md`

## 주의사항
- 문서는 200줄 이하 제한 없음 (종합 스펙이므로 길어도 OK, 단 섹션별 목차 필수)
- 보안 정보(API 키, 토큰) 절대 포함 금지 — "~에 저장됨" 식으로만 표기
- 기존 파일 수정 금지 — 신규 파일만 생성
- backup-spec.sh는 독립 실행 가능해야 함 (외부 의존성 없이)

## 산출물
- memory/specs/anu-system-spec.md (종합 스펙 문서)
- scripts/update-system-spec.py (자동 업데이트 스크립트)
- scripts/backup-spec.sh (6시간 백업 스크립트)
- cron 스케줄 2건 등록 (업데이트 + 백업)
