소스 정보
- 저장소
- genlayerlabs/genvm
- 최근 소스 활동
- 2026년 6월 3일 13:32
- 감지된 SKILL.md 언어
- 영어
- 스타
- 18
- 포크
- 12
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
SOC 직업 분류 기준
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/genlayerlabs/genvm --skill test명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
GenVM commit message conventions. Use when writing a commit message, squashing/merging a PR, or amending history. Covers the `type(scope): summary <emoji>` format, the five types, the standard scope set, the gitmoji suffix, and mistakes to avoid (typos, vague "fix CI N").
Builds the GenVM project. Use after making code changes to compile Rust binaries.
Read this BEFORE trying to fix a GenVM build that fails on macOS. GenVM is NOT built natively on macOS — building from source on Darwin breaks the deterministic runner-artifact invariant. Use a remote Linux nix-builder instead. Triggers on any build/nix/runner/linker/ar failure on a Mac (Apple Silicon or Intel).
| name | test |
| description | Runs tests for the GenVM project. Use after making code changes to verify correctness. |
GenVM uses ya-test-runner for all tests. Before running tests, ensure the project is built (see /build skill).
Run all tests:
nix develop .#mock-tests --command ya-test-runner run
Run release tests (stable integration):
nix develop .#mock-tests --command ya-test-runner run --filter-tag "$(cat tests/presets/release.txt)"
Run a specific test:
nix develop .#mock-tests --command ya-test-runner run --filter-name 'test_name'
ya-test-runner run [OPTIONS]
Options:
| Flag | Description |
|---|---|
--filter-name REGEX | Filter tests by name regex |
--filter-tag EXPR | Filter tests by tags (e.g., stable & !slow) |
--filter-continue FILE | Re-run only tests from a continue file |
--fail-fast | Stop execution after first failure |
--coverage | Enable coverage collection for Rust tests |
--log-level LEVEL | Set log level (trace/debug/info/warning/error) |
# Show available tests
ya-test-runner show test
# Show execution plan
ya-test-runner show plan
# Show available services
ya-test-runner show services
# Show available tags
ya-test-runner show tags
Presets are tag expressions stored in tests/presets/:
| Preset | Expression | Use Case |
|---|---|---|
release.txt | integration & stable | CI release tests |
rust.txt | rust | integration | Rust development |
python.txt | python | Python SDK tests |
Usage:
ya-test-runner --filter-tag "$(cat tests/presets/release.txt)" run
tests/cases/)End-to-end tests using jsonnet configuration. Services (manager, modules, webdriver) are started automatically.
nix develop .#mock-tests --command ya-test-runner run --filter-tag integration
Cargo tests for Rust crates:
nix develop .#rust-test --command ya-test-runner run --filter-tag rust
With coverage:
nix develop .#rust-test --command ya-test-runner run --filter-tag rust --coverage
Tests for the Python standard library (genlayer-py-std):
nix develop .#mock-tests --command ya-test-runner run --filter-tag python
Or directly with pytest inside nix develop:
nix develop .#mock-tests --command bash -c "cd runners/genlayer-py-std && poetry run pytest tests/"
Coverage: pytest is configured with --cov and --cov-fail-under=75. Coverage scope includes genlayer.types, genlayer.calldata, genlayer.storage, genlayer.evm, genlayer._internal, and genlayer_embeddings. Must run inside nix develop for numpy-dependent tests and correct coverage resolution.
For web-related tests (semi-stable/unstable), webdriver is started automatically by ya-test-runner. To manually start it:
bash modules/webdriver/build-and-run.sh
If WASM files or compilation changed, precompile to save test time:
./build/out/bin/genvm precompile
When tests fail, ya-test-runner writes failed test names to build/test-artifacts/continue/<timestamp>-<random>. Re-run only failed tests:
# Use filename shown in failure summary
ya-test-runner run --filter-continue 20260123-143052-abc123
| What to test | Command |
|---|---|
| All tests | nix develop .#mock-tests --command ya-test-runner run |
| Release tests | nix develop .#mock-tests --command ya-test-runner run --filter-tag "$(cat tests/presets/release.txt)" |
| Rust tests | nix develop .#rust-test --command ya-test-runner run --filter-tag rust |
| Python (poetry) | nix develop .#mock-tests --command bash -c "cd runners/genlayer-py-std && poetry run pytest tests/" |
| Re-run failed | ya-test-runner run --filter-continue <file> |
| With debug logs | nix develop .#mock-tests --command ya-test-runner run --log-level debug |
| Show test list | nix develop .#mock-tests --command ya-test-runner show test |