diff --git a/.forgejo/workflows/ci.yml b/.forgejo/workflows/ci.yml index 55906e2..678979e 100644 --- a/.forgejo/workflows/ci.yml +++ b/.forgejo/workflows/ci.yml @@ -36,11 +36,25 @@ jobs: - name: 타입 검사 run: pnpm typecheck + # 빌드가 테스트보다 먼저다. + # CLI 테스트는 dist 를 검사하므로, 빌드 전에 돌리면 6개가 전부 SKIP 되고 + # 그래도 초록으로 통과한다. 실측에서 그랬다 — pass 0 인데 성공이었다. + - name: 빌드 + run: pnpm build + - name: 테스트 run: pnpm test - - name: 빌드 - run: pnpm build + # SKIP 은 통과가 아니다. 건너뛴 테스트가 있으면 여기서 죽인다. + - name: 테스트가 실제로 돌았는지 확인 + run: | + out="$(pnpm -r --filter './packages/**' test 2>&1)" + if echo "$out" | grep -q "# SKIP"; then + echo "$out" | grep -n "# SKIP" >&2 + echo "건너뛴 테스트가 있다. 초록불이 거짓이 된다." >&2 + exit 1 + fi + echo "$out" | grep -E "^.*# (pass|fail) " || true - name: 배포물 점검 (npx 경로 검증) run: | diff --git a/.npmrc b/.npmrc index 8c269a5..736c2ae 100644 --- a/.npmrc +++ b/.npmrc @@ -1,3 +1,7 @@ auto-install-peers=true strict-peer-dependencies=false # 릴리스 프로비넌스는 CI에서만 켠다(로컬 publish 금지) + +# sharp 는 astro:assets 의 이미지 최적화에 쓴다. +# pnpm 10 은 기본으로 빌드 스크립트를 막아서 명시적으로 허용해야 한다. +only-built-dependencies[]=sharp