Skip to content
Back to skills

Jwc Workspace Validation

ASecurity

pnpm+turbo 모노레포에서 Node 버전(.nvmrc)과 터보 task 의존성을 고려해 lint/typecheck/build를 안전하게 실행하고, 실패 시 패키지 단위로 범위를 좁혀 원인을 찾습니다.

  • 666 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added February 9, 2026
developmentnode

Security analysis

A100/100

Scanned February 10, 2026

npx -y skills add majiayu000/claude-skill-registry --skill jwc-workspace-validation --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Jwc Workspace Validation?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Jwc Workspace Validation
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-jwc-workspace-validation/badge)](https://www.skillsdirectory.com/skills/majiayu000-jwc-workspace-validation)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: jwc-workspace-validation
description: pnpm+turbo 모노레포에서 Node 버전(.nvmrc)과 터보 task 의존성을 고려해 lint/typecheck/build를 안전하게 실행하고, 실패 시 패키지 단위로 범위를 좁혀 원인을 찾습니다.
---

# JWC Workspace Validation

## 언제 사용하나요?

- 변경 후 `lint`/`typecheck`/`build`가 깨졌을 때
- CI에서 `turbo` 파이프라인이 실패했는데 원인 추적이 필요할 때
- “워크스페이스 전체”가 아니라 **특정 패키지**만 빠르게 검증하고 싶을 때

## 핵심 사실(이 레포의 터보 구성)

- 루트의 `pnpm -w lint`는 `turbo run lint`를 실행합니다.
- 이 레포의 `lint`/`typecheck`는 터보에서 `^build`에 의존합니다.
  - 즉, **lint/typecheck가 build를 선행 실행**할 수 있습니다.
  - 전체 lint가 실패하면, 먼저 “어느 패키지의 build가 터졌는지”를 확인해야 합니다.

## 표준 워크플로우

### 1) Node / pnpm 정합성

1. Node 버전 맞추기(권장):
   - `nvm use` (루트 `.nvmrc` 사용)
2. pnpm 버전 확인:
   - 루트 `package.json#packageManager`가 기준입니다.

### 2) 변경 범위에 맞춰 ‘좁게’ 검증(권장)

- 한 패키지 변경이면, 먼저 패키지 단위로:
  - `pnpm -C packages/<pkg> lint`
  - `pnpm -C packages/<pkg> typecheck`
  - 필요 시 `pnpm -C packages/<pkg> build`

이 방식은 터보의 `^build` 전파 때문에 “연쇄 build 실패”로 디버깅이 어려워지는 것을 줄입니다.

### 3) 워크스페이스 전체 검증(마지막 단계)

- 전체 lint + 워크스페이스 검증:
  - `pnpm -w lint`
- 전체 타입체크:
  - `pnpm -w typecheck`
- 전체 빌드:
  - `pnpm -w build`

## 실패 시 빠른 분기

### A) `pnpm -w lint`가 build 단계에서 실패할 때

- 터보 출력에서 실패한 task를 먼저 찾습니다(예: `@jwc/schema#build`).
- 해당 패키지로 내려가서 단독 재현:
  - `pnpm -C packages/schema build`

### B) Node 버전 관련 오류가 의심될 때

- 이 레포는 `.nvmrc`로 Node를 고정합니다.
- `node -v`가 다르면 `nvm use`로 맞추고 다시 시도합니다.

### C) 의존성/워크스페이스 규칙 위반(manypky check 등)

- 루트 lint에는 `manypkg check`가 포함됩니다.
- 패키지 `package.json` 변경 후라면, 루트에서 재검증:
  - `pnpm -w lint`

## 보안

- `.env` 및 비밀값은 커밋/로그에 남기지 않습니다.
- 실패 로그를 공유할 때는 키/토큰/전화번호 등 민감정보를 마스킹합니다.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.