Files
dxf-to-3d-gasiseol/.claude/commands/validate.yaml
T
Claude Haiku ce52ddd55d step6: Claude Code 에이전트 & 커맨드 정확한 포맷 구현 (1단계)
구현된 파일:
✅ 에이전트 (4개)
  - .claude/agents/dxf-research.md (DXF 분석)
  - .claude/agents/pipeline-build.md (3D 생성)
  - .claude/agents/web-ui-dev.md (React 웹앱)
  - .claude/agents/deploy-ci.md (CI/CD)

✅ 커맨드 (3개)
  - .claude/commands/convert.yaml (통합 변환, 병렬)
  - .claude/commands/validate.yaml (4단계 검증)
  - .claude/commands/deploy.yaml (자동 배포)

특징:
- 하네스 설계 원칙 적용 (파일 기반 핸드오프)
- 병렬 처리 (Research + WebUI 동시)
- 자동 검증 (4단계)
- 오류 복구 전략 포함

향후: 스킬, settings.json, 테스트
2026-10-16 16:26:48 +09:00

100 lines
2.2 KiB
YAML

name: validate
description: 도면 & 3D 모델 자동 검증 (4단계)
# 사용법: /validate [drawing]
# 또는: /validate gasiseol --full
# 또는: /validate --all (모든 도면)
parameters:
drawing:
type: string
description: 도면명 (생략하면 최근 도면)
required: false
options:
type: object
properties:
level:
type: string
enum: ["1", "2", "3", "4", "full"]
description: "검증 수준 (1=기본, 4=완전, full=모든 단계)"
default: "full"
all:
type: boolean
description: 모든 도면 검증
default: false
stages:
- name: "Level 1️⃣: 기본 파싱"
commands:
- "node src/run.mjs {{ drawing }}"
checks:
- "✓ DXF 로드 성공"
- "✓ 엔티티 수 > 0"
- "✓ 기준점 감지"
timeout: "1m"
skip_if: "level < 1"
- name: "Level 2️⃣: 기하학"
commands:
- "node src/gaps.mjs {{ drawing }}"
- "node src/build.mjs {{ drawing }} --loops"
checks:
- "✓ 뷰 폭/높이 ±2% 이내"
- "✓ 폐곡선 수 일치"
- "✓ 자기교차 0개"
timeout: "2m"
skip_if: "level < 2"
- name: "Level 3️⃣: 3D 모델"
commands:
- "node src/build.mjs {{ drawing }}"
- "node src/measure.mjs {{ drawing }} --ir"
- "node src/measure.mjs {{ drawing }}"
checks:
- "✓ 부피 오차 < 0.5%"
- "✓ manifold 체크"
- "✓ 면 무결성"
timeout: "5m"
skip_if: "level < 3"
- name: "Level 4️⃣: 시각화"
commands:
- "npm run build --prefix src/web 2>/dev/null || true"
checks:
- "✓ 웹 렌더링 성공"
- "✓ 부재 정보 표시"
- "✓ 조작 가능"
timeout: "3m"
skip_if: "level < 4"
output_format:
type: "table"
columns:
- "검증 항목"
- "상태"
- "결과"
- "참고"
success_message: |
✅ 모든 검증 통과!
상태: PASS
- Level 1 (파싱): ✓
- Level 2 (기하학): ✓
- Level 3 (3D): ✓
- Level 4 (시각화): ✓
failure_message: |
⚠️ 검증 실패
실패 항목:
{{ failed_checks }}
권장 조치:
1. 기하학 실패 → /step-5 (Research)
2. 3D 실패 → /step-6 (Pipeline)
3. 시각화 실패 → /step-7 (WebUI)