Skip to main content

aiq-release-qa

Use when validating an AI-Q change before opening or merging a PR — choosing and running the right Python, frontend, docs, or eval checks for the surfaces you touched instead of one fixed command list.

설치로 이동

소스 정보

저장소
NVIDIA-AI-Blueprints/aiq
최근 소스 활동
2026년 7월 15일 19:32
감지된 SKILL.md 언어
영어
스타
873
포크
265

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
2 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
aiq-release-qa
description
Use when validating an AI-Q change before opening or merging a PR — choosing and running the right Python, frontend, docs, or eval checks for the surfaces you touched instead of one fixed command list.
license
Apache-2.0
compatibility
Claude Code, Codex, Cursor, OpenCode, and Agent Skills-compatible tools.
metadata
{"version":"0.1.0","source-repo":"NVIDIA-AI-Blueprints/aiq","tags":"aiq nemo-agent-toolkit validation testing release-qa"}
allowed-tools
Read Bash
# AI-Q Release QA Use this skill to validate a change in the AI-Q repository before opening or merging a pull request. The goal is to run the **narrowest set of checks that covers what you touched**, then broaden only when a change crosses shared boundaries — not to run every command every time. ## Start Here - Identify which surfaces the change touches: backend Python (`src/`, `sources/`, `tests/`), web UI (`frontends/ui/`), docs (`docs/`), or evals (`frontends/benchmarks/`). - Run the scoped checks for those surfaces first (see the matrix below). - Broaden to the full suite only when the change crosses shared boundaries (for example editing `src/aiq_agent/common/` or a config many agents load). - Capture the exact commands and their output — `aiq-prepare-pr` requires this as validation evidence. - Never paste secrets or `deploy/.env` values into command output you share. ## Authoritative References - [AGENTS.md](../../../AGENTS.md): the "Build, test, and validation commands" section is the source of truth for every command below. - [CONTRIBUTING.md](../../../CONTRIBUTING.md): "Local Validation" — the exact commands to run and the requirement to include their output in the PR. - `pyproject.toml` and `uv.lock`: root Ruff config (line length 120, rule sets `E,F,W,I,PL,UP`) and the root dev environment. - `mcp/pyproject.toml` and `mcp/uv.lock`: the independent MCP runtime and dev environment. MCP is not a root dependency group. - `frontends/ui/package.json`: the real `scripts` (`lint`, `type-check`, `test:ci`, `build`) — use these names, do not invent npm scripts. For the full per-surface command list and expected results: - [references/validation-matrix.md](references/validation-matrix.md) ## Workflow 1. List the changed paths (`git status`, `git diff --name-only`) and map them to surfaces. 2. Run the scoped Python, UI, docs, or eval checks for those surfaces. 3. If the change touches shared code or config, broaden to the full suite for that surface. 4. Re-run until lint, format, type, and tests all pass; fix failures rather than skipping checks. 5. Record the exact commands and their output for the PR description. ## Validation Pick the block that matches the change. Run the narrowest first. Backend Python (run from the repo root; the project uses `uv`): ```bash uv run ruff check <changed paths> # lint uv run ruff format --check <changed paths> # format check uv run pytest <scoped test paths> # tests ``` MCP server (run from the repo root): ```bash uv sync --project mcp --extra dev uv run ruff check mcp uv run ruff format --check mcp uv run --project mcp --extra dev pytest mcp/tests ``` Broaden to the whole tree when the change crosses shared boundaries: ```bash uv run ruff check . uv run ruff format --check . uv run pytest uv run --project mcp --extra dev pytest mcp/tests ``` Frontend (from `frontends/ui/`): ```bash npm run lint npm run type-check npm run test:ci ``` Expected: Ruff reports no lint or format failures, tests pass, and the frontend lint/type-check/test commands exit cleanly. For docs and eval changes, see the matrix reference. ## Common Mistakes - Running both complete root and MCP test suites for a one-package change instead of scoping to the touched paths first — slow, and it buries the relevant signal. - Running MCP tests in the root environment; use `uv run --project mcp` so the check consumes the isolated MCP lock and dev extra. - Skipping `ruff format --check` and pushing unformatted code that fails CI. - Hand-reformatting unrelated code; only the changed code should move. - Forgetting that `nat eval` needs `deploy/.env`; run evals via `dotenv -f deploy/.env run nat eval ...` (see the matrix reference). - Inventing npm scripts; stick to the canonical checks `lint`, `type-check`, `test:ci`, and `build` defined in `frontends/ui/package.json`. ## Related Skills - `aiq-prepare-pr` - `aiq-add-tool` - `aiq-add-data-source`
GitHub에서 보기