| name | compare |
| description | 유사한 거리/유형의 과거 세션과 비교 분석합니다 |
| argument-hint | [날짜 또는 거리] |
세션 비교 스킬
목적
특정 세션을 유사한 과거 세션들과 비교하여 진척도를 평가합니다.
워크플로우
1. 대상 세션 식별
- 날짜 인자 (예:
2026-03-15): 해당 날짜 세션
- 거리 인자 (예:
21km): 해당 거리 유사 세션들
- 인자 없음: 가장 최근 세션
2. 유사 세션 조회
import { getSimilarSessions, getRecentSessions } from './lib/db.mjs'
const similar = await getSimilarSessions(distance, 2)
3. 비교 분석 항목
페이스 진척도
| 날짜 | 거리 | 페이스 | HR | 차이 |
|---|
| 2026-03-15 | 21.1km | 4:56/km | 150 | 기준 |
| 2026-02-15 | 21.3km | 5:02/km | 152 | +6s |
| 2026-01-20 | 20.8km | 5:10/km | 155 | +14s |
해석: 같은 거리에서 페이스가 개선되고 있으면 진척 신호
심박 효율성
같은 페이스에서:
- HR 낮아짐: 심폐 적응 진행
- HR 높아짐: 피로 또는 컨디션 문제
일관성 비교
- consistency_cv 변화 추적
- CV 낮아지면 페이스 제어 능력 향상
스플릿 패턴
- 과거 positive split → 현재 negative split: 전략적 성장
- 스플릿 차이 감소: 페이싱 능력 향상
4. 출력 형식
## 세션 비교 분석
### 기준 세션
| 항목 | 값 |
| ------- | -------------- |
| 날짜 | 2026-03-15 |
| 거리 | 42.46km |
| 페이스 | 4:56/km |
| 평균 HR | 150 bpm |
| CV | 2.9% |
| 스플릿 | positive (+3s) |
### 유사 세션 비교
| 날짜 | 거리 | 페이스 | HR | CV | 차이 |
| ---------- | ------ | ------ | --- | ---- | ---- |
| 2026-03-15 | 42.5km | 4:56 | 150 | 2.9% | 기준 |
| 2026-02-10 | 42.2km | 5:05 | 155 | 4.1% | +9s |
| 2026-01-15 | 41.8km | 5:12 | 158 | 5.2% | +16s |
### 진척도 분석
**페이스**: 2개월 간 16초/km 개선 (5.1% 향상)
**심박 효율**: 같은 페이스에서 HR 8bpm 감소
**일관성**: CV 5.2% → 2.9%로 크게 개선
### Bakken 관점 평가
1. **심폐 적응**: [평가]
2. **페이스 제어**: [평가]
3. **레이스 준비도**: [평가]
### 코칭 포인트
- **[항목]**: [구체적 피드백]
비교 유형
같은 거리 비교
마라톤, 하프마라톤 등 특정 거리 세션 간 비교
같은 유형 비교
- Easy Run끼리 비교
- Threshold 세션끼리 비교
- Long Run끼리 비교
시간대 비교
- 이번 달 vs 지난 달
- 이번 시즌 vs 지난 시즌
참고사항
- DB가 없으면 먼저
pnpm db:sync 실행 안내
- 최소 3개 이상 유사 세션이 있어야 의미있는 비교 가능
- 한국어로 출력