Verify the current change proportionally to its risk. Do not report success for checks that were not run.
Establish the complete scope. Inspect committed, staged, unstaged, and untracked changes:
git status --short git diff --name-only origin/main...HEAD git diff --name-only git diff --cached --name-onlyReplace
origin/mainif the PR targets another branch. Read the full diff and any applicable nestedAGENTS.mdorCLAUDE.mdfiles.Review tests and documentation. Before running commands, determine whether the change is adequately covered:
- Require a regression test for a bug fix and focused unit tests for new or changed behavior, including important edge cases. If no test is appropriate, require a concrete explanation.
- Check whether changes to public APIs, configuration, CLI behavior, examples, or user workflows are reflected in the relevant documentation. If no documentation update is needed, record why.
Run repository checks. For staged changes, run:
pre-commit runFor committed branch changes, run
pre-commit run --from-ref origin/main --to-ref HEAD. If pre-commit is unavailable, useuvx pre-commitfor the same command. Review and stage hook fixes, then rerun until clean. Also rungit diff --check.Run the smallest relevant tests. Prefer focused test files or test names while iterating, then expand to the affected collection when practical:
nemo/collections/asr/→uv run pytest tests/collections/asr -m "not pleasefixme"nemo/collections/tts/→uv run pytest tests/collections/tts -m "not pleasefixme"nemo/collections/audio/→uv run pytest tests/collections/audio -m "not pleasefixme"nemo/collections/speechlm2/→uv run pytest tests/collections/speechlm2 -m "not pleasefixme"nemo/collections/common/→uv run pytest tests/collections/common -m "not pleasefixme"nemo/core/→uv run pytest tests/core -m "not pleasefixme"
Add
--with_downloadsonly for tests marked as requiring model downloads. Use--cpuwhen supported and a GPU is unavailable. If documentation changed, install its dependencies withuv sync --locked --group docsand build it withuv run make -C docs html.Verify commit sign-offs. Every commit in the PR must have a DCO
Signed-off-bytrailer:git log --format='%h %s%n%(trailers:key=Signed-off-by)' origin/main..HEADCreate commits with
git commit -s. Add a missing trailer to your own latest commit withgit commit --amend --no-edit -s; do not rewrite other contributors' commits without authorization.Report results. Summarize the reviewed diff, test-coverage and documentation conclusions, exact commands and outcomes, commit sign-off status, and any skipped checks with reasons. For failures, include the relevant error and a concrete next step.