SimReady Add Runtime Test
Purpose
Use this skill when static validators are not enough to prove a feature or profile works in a runtime. Runtime tests use the workspace runtime_tests pipeline: batch maker, job runner, and report generator.
Do not hand-edit generated job JSON. Add or update the source test/search configuration that generates it.
Prerequisites
Before editing, read:
AGENTS.md
nv_core/sr_specs/docs/guides/runtime_testing/runtime_testing.md
nv_core/sr_specs/docs/guides/runtime_testing/runtime_tests_overview.md
nv_core/sr_specs/docs/guides/runtime_testing/job_runner_deep_dive.md
nv_core/sr_specs/docs/guides/runtime_testing/runners_info.md
nv_core/sr_specs/docs/guides/runtime_testing/cicd_usage.md
- relevant feature/profile docs that need runtime evidence
Inputs
Collect or infer:
| Input |
Requirement |
runtime_goal |
Behavior to prove, such as drop/settle, articulation motion, rendering, or importability. |
feature_or_profile |
Feature/profile requiring runtime evidence. |
asset_scope |
Asset search pattern, modified assets list, or manual assets. |
test_identifier |
Existing or new test definition name. |
search_function |
Existing or new search function that returns assets for the test. |
test_definition |
TOML source with TestInfo, RunnerTags, and TestConfig sections. |
runner |
Kit/Isaac/runtime runner requirement. |
expected_artifacts |
Logs, screenshots, metrics, XML, JSON, or HTML report. |
Instructions
Use this checklist when changing the repository:
- Decide whether runtime evidence is required by the feature/profile or only useful as supplementary confidence.
- Locate existing runtime test definitions and search functions for similar behavior.
- Add or update source test/search configuration, not generated batch job files.
- For search functions, keep the file and function name aligned and return
AssetData from the provided search context.
- For test definitions, include the guide-required TOML sections:
[TestInfo] with name, description, version, search function, and optional feature IDs/versions
[RunnerTags] with runner config and script/class fields only when the run mode requires them
[TestConfig] for test-specific settings
- Ensure runner assumptions are documented in
local_run/runners_info.toml guidance or the relevant docs. Do not hard-code user-specific runner paths into committed specs.
- Document how to run:
workspace runtime_tests batch_maker
workspace runtime_tests job_runner
workspace runtime_tests report_generator
- Record expected outputs under
_testing/batch_jobs/, _testing/job_outputs/, and _testing/index.html.
- Add expected pass/fail signals and artifacts to the feature/profile docs when runtime testing is part of the acceptance strategy.
- Run the narrowest available runtime test when the local Kit/runtime environment exists; otherwise report the blocked runtime dependency.
- Preserve report paths and summarize runtime evidence.
Examples
Example request:
Add a runtime test proving a SimReady factory asset connection point imports and aligns correctly in Kit.
Expected result summary:
changed_files: new docs, manifests, indexes, or validation scaffolding
validation: focused static checks and any relevant docs/build checks
remaining_gaps: requirement, validator, adapter, profile, or runtime-test follow-up
Policies
- Generated job JSON and output folders are artifacts, not source of truth.
- Runtime tests should be reproducible from project root, test definitions, search functions, and runner config.
- Keep user/CI-owned runner paths out of source-controlled docs unless intentionally templated.
- If runtime cannot run locally, still add clear commands and expected artifacts.
Limitations
- Do not mutate published feature or profile versions in place.
- Do not invent requirement IDs or validator behavior when the contract is ambiguous; record the question.
- Do not skip index, manifest, validation, or downstream follow-up notes.
Troubleshooting
- Error: the new concept overlaps an existing artifact. Solution: update the existing capability, requirement, feature, profile, or adapter instead.
- Error: names or IDs conflict. Solution: re-check naming conventions and nearby indexes before editing further.
- Error: validation strategy is unclear. Solution: document deferred validation and the exact follow-up skill.
Resources
assets/openai.yaml preserves optional UI metadata for clients that read skill display hints. It is not required for the workflow.
Summary Format
Report:
| Field |
Meaning |
runtime_goal |
Behavior being tested. |
feature_or_profile |
Spec surface covered. |
test_sources |
Test/search files changed. |
runner_requirements |
Kit/Isaac/runtime assumptions. |
commands |
Batch/job/report commands. |
artifacts |
Expected or produced reports. |
validation |
Runtime test result or blocker. |
1---2name: simready-foundation-add-runtime-test3description: Use for adding SimReady runtime tests, runner expectations, batch/job/report notes, and validation evidence.4license: Apache-2.05---678# SimReady Add Runtime Test910## Purpose11Use this skill when static validators are not enough to prove a feature or profile works in a runtime. Runtime tests use the `workspace runtime_tests` pipeline: batch maker, job runner, and report generator.1213Do not hand-edit generated job JSON. Add or update the source test/search configuration that generates it.1415## Prerequisites16Before editing, read:1718- `AGENTS.md`19- `nv_core/sr_specs/docs/guides/runtime_testing/runtime_testing.md`20- `nv_core/sr_specs/docs/guides/runtime_testing/runtime_tests_overview.md`21- `nv_core/sr_specs/docs/guides/runtime_testing/job_runner_deep_dive.md`22- `nv_core/sr_specs/docs/guides/runtime_testing/runners_info.md`23- `nv_core/sr_specs/docs/guides/runtime_testing/cicd_usage.md`24- relevant feature/profile docs that need runtime evidence2526## Inputs2728Collect or infer:2930| Input | Requirement |31|---|---|32| `runtime_goal` | Behavior to prove, such as drop/settle, articulation motion, rendering, or importability. |33| `feature_or_profile` | Feature/profile requiring runtime evidence. |34| `asset_scope` | Asset search pattern, modified assets list, or manual assets. |35| `test_identifier` | Existing or new test definition name. |36| `search_function` | Existing or new search function that returns assets for the test. |37| `test_definition` | TOML source with `TestInfo`, `RunnerTags`, and `TestConfig` sections. |38| `runner` | Kit/Isaac/runtime runner requirement. |39| `expected_artifacts` | Logs, screenshots, metrics, XML, JSON, or HTML report. |4041## Instructions4243Use this checklist when changing the repository:44451. Decide whether runtime evidence is required by the feature/profile or only useful as supplementary confidence.462. Locate existing runtime test definitions and search functions for similar behavior.473. Add or update source test/search configuration, not generated batch job files.484. For search functions, keep the file and function name aligned and return `AssetData` from the provided search context.495. For test definitions, include the guide-required TOML sections:50 - `[TestInfo]` with name, description, version, search function, and optional feature IDs/versions51 - `[RunnerTags]` with runner config and script/class fields only when the run mode requires them52 - `[TestConfig]` for test-specific settings536. Ensure runner assumptions are documented in `local_run/runners_info.toml` guidance or the relevant docs. Do not hard-code user-specific runner paths into committed specs.547. Document how to run:55 - `workspace runtime_tests batch_maker`56 - `workspace runtime_tests job_runner`57 - `workspace runtime_tests report_generator`588. Record expected outputs under `_testing/batch_jobs/`, `_testing/job_outputs/`, and `_testing/index.html`.599. Add expected pass/fail signals and artifacts to the feature/profile docs when runtime testing is part of the acceptance strategy.6010. Run the narrowest available runtime test when the local Kit/runtime environment exists; otherwise report the blocked runtime dependency.6111. Preserve report paths and summarize runtime evidence.6263## Examples6465Example request:6667```text68Add a runtime test proving a SimReady factory asset connection point imports and aligns correctly in Kit.69```7071Expected result summary:7273```text74changed_files: new docs, manifests, indexes, or validation scaffolding75validation: focused static checks and any relevant docs/build checks76remaining_gaps: requirement, validator, adapter, profile, or runtime-test follow-up77```7879## Policies8081- Generated job JSON and output folders are artifacts, not source of truth.82- Runtime tests should be reproducible from project root, test definitions, search functions, and runner config.83- Keep user/CI-owned runner paths out of source-controlled docs unless intentionally templated.84- If runtime cannot run locally, still add clear commands and expected artifacts.8586## Limitations8788- Do not mutate published feature or profile versions in place.89- Do not invent requirement IDs or validator behavior when the contract is ambiguous; record the question.90- Do not skip index, manifest, validation, or downstream follow-up notes.9192## Troubleshooting9394- Error: the new concept overlaps an existing artifact. Solution: update the existing capability, requirement, feature, profile, or adapter instead.95- Error: names or IDs conflict. Solution: re-check naming conventions and nearby indexes before editing further.96- Error: validation strategy is unclear. Solution: document deferred validation and the exact follow-up skill.9798## Resources99100- `assets/openai.yaml` preserves optional UI metadata for clients that read skill display hints. It is not required for the workflow.101102## Summary Format103104Report:105106| Field | Meaning |107|---|---|108| `runtime_goal` | Behavior being tested. |109| `feature_or_profile` | Spec surface covered. |110| `test_sources` | Test/search files changed. |111| `runner_requirements` | Kit/Isaac/runtime assumptions. |112| `commands` | Batch/job/report commands. |113| `artifacts` | Expected or produced reports. |114| `validation` | Runtime test result or blocker. |