vitest-evals

작성자: sentry

작성, 검토 또는 디버깅 시 harness 기반 vitest-evals 스위트, 사용자 정의 Harness 어댑터, 자사 ai-sdk 또는 pi-ai harness 통합에 사용합니다.

npx skills add https://github.com/getsentry/vitest-evals --skill vitest-evals

vitest-evals

Use the harness-backed API as the only authoring model.

First Steps

  1. Read the package, app, or eval file being changed.
  2. Identify the runtime target, then open only the needed reference.
  3. Keep suites close to Vitest: one harness per describeEval(...), explicit run(...) inside each test, ordinary expect(...) assertions over the returned result.

Reference Router

NeedOpen
Write or review a normal eval suitereferences/suite-authoring.md
Build a custom app Harness without a first-party adapterreferences/custom-harness.md
Integrate AI SDK generateText, generateObject, tools, or an AI SDK-style agentreferences/harness-ai-sdk.md
Integrate a Pi AI or Pi Mono-style agentreferences/harness-pi-ai.md
Add custom judges, suite judges, built-in judges, or toSatisfyJudge(...) assertionsreferences/judges-and-assertions.md
Assert on message, tool-call, or span historyreferences/utilities.md
Configure tool recording or replayreferences/tool-replay.md
Diagnose failures, missing traces, odd output, or choose verification commandsreferences/troubleshooting.md

Runtime Defaults

  • Import describeEval(...), judges, and helpers from vitest-evals.
  • Bind exactly one harness to a suite.
  • Call run(input) where the test should execute the system.
  • Assert on result.output for app-facing behavior.
  • Use toolCalls(result) and message helpers for normalized session assertions.
  • Use spans(result), spansByKind(result, kind), and failedSpans(result) for span assertions.
  • Keep HarnessRun, NormalizedSession, usage, artifacts, and tool records JSON-serializable.
  • Keep judge model calls on judges. Use createJudge("Name", assess) for custom judges; use the provider-helper overload only when multiple judges reuse setup and need curried run options.
  • Put scenario-owned criteria on the input value. Put direct-check expected values in Vitest case rows. Pass per-case judge criteria through explicit matcher options, and suite-wide criteria through judge config.
  • Custom judges should use createJudge(...) for stable reporter labels.

Verification

Prefer the smallest command that covers the edited files:

TaskCommand
Lint filepnpm exec biome lint path/to/file.ts
Format filepnpm exec biome format --write path/to/file.ts
Test filepnpm exec vitest run path/to/file.test.ts -c vitest.config.ts
Eval filepnpm exec vitest run path/to/file.eval.ts -c vitest.config.ts --reporter=./packages/vitest-evals/src/reporter.ts
Type surfacepnpm typecheck
Package buildpnpm build

sentry의 다른 스킬

generate-frontend-forms
sentry
Sentry의 새로운 폼 시스템을 사용하여 폼을 생성하는 가이드입니다. 폼, 폼 필드, 유효성 검사 또는 자동 저장 기능을 구현할 때 사용하세요.
official
sentry-snapshots-cocoa
sentry
Apple/Cocoa 프로젝트를 위한 전체 Sentry Snapshots 설정입니다. "SnapshotPreviews 설정", "Apple 스냅샷 테스트 설정", "Apple 스냅샷 업로드" 요청 시 사용하세요.
official
architecture-review
sentry
직원 수준의 코드베이스 건강 검토. 모놀리식 모듈, 무음 실패, 타입 안전성 격차, 테스트 커버리지 구멍, LLM 친화성 문제를 찾습니다.
official
linear-type-labeler
sentry
Linear 이슈를 분류하고, 각 이슈의 제목과 설명 내용을 기반으로 Sentry 워크스페이스의 레이블 분류 체계에서 Type 레이블을 적용합니다.
official
sentry-flutter-sdk
sentry
Flutter 및 Dart를 위한 완전한 Sentry SDK 설정입니다. "Flutter에 Sentry 추가", "sentry_flutter 설치", "Dart에서 Sentry 설정" 또는 오류 구성을 요청받았을 때 사용하세요.
official
sentry-svelte-sdk
sentry
Svelte 및 SvelteKit을 위한 완전한 Sentry SDK 설정입니다. "Svelte에 Sentry 추가", "SvelteKit에 Sentry 추가", "@sentry/sveltekit 설치" 또는 구성 요청 시 사용하세요.
official
vercel-react-best-practices
sentry
Vercel Engineering의 React 및 Next.js 성능 최적화 가이드라인입니다. 이 스킬은 React/Next.js 코드를 작성, 검토 또는 리팩토링할 때 사용해야 합니다.
official
sentry-tanstack-start-sdk
sentry
TanStack Start React용 전체 Sentry SDK 설정. "TanStack Start에 Sentry 추가", "@sentry/tanstackstart-react 설치" 또는 오류 구성 요청 시 사용…
official