simready-foundation-add-runtime-test
Skill156 starsChanged 52 days agoApache-2.0View on GitHub
Use for adding or updating SimReady Foundation runtime tests in a tier-owned Benchmark test package, wiring the package through the tier descriptor and wheel, and keeping feature/profile documentation and test registration synchronized. Delegates generic Benchmark mechanics and independent test-pack packaging to the installed simready-benchmark skills.
In this repository241 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- simready-foundation-add-capabilitySkill
- simready-foundation-add-feature-adapterSkill
- simready-foundation-add-featureSkill
- simready-foundation-add-profileSkill
- simready-foundation-add-requirementSkill
- simready-foundation-add-validatorSkill
- simready-foundation-conform-fet-000-isaacSkill
- simready-foundation-conform-fet-000-mujocoSkill
- simready-foundation-conform-fet-000-newtonSkill
- simready-foundation-conform-fet-000-physxSkill
- simready-foundation-conform-fet-000-standardSkill
- simready-foundation-conform-fet-001-standardSkill
- simready-foundation-conform-fet-002-standardSkill
- simready-foundation-conform-fet-003-mujocoSkill
- simready-foundation-conform-fet-003-newtonSkill
- simready-foundation-conform-fet-003-physxSkill
- simready-foundation-conform-fet-003-standardSkill
- simready-foundation-conform-fet-004-mujocoSkill
- simready-foundation-conform-fet-004-newtonSkill
- simready-foundation-conform-fet-004-physxSkill
- simready-foundation-conform-fet-004-robot-mujocoSkill
- simready-foundation-conform-fet-004-robot-newtonSkill
- simready-foundation-conform-fet-004-robot-physxSkill
- simready-foundation-conform-fet-004-standardSkill
- simready-foundation-conform-fet-005-standardSkill
- simready-foundation-conform-fet-006-mdlSkill
- simready-foundation-conform-fet-006-openpbrSkill
- simready-foundation-conform-fet-006-standardSkill
- simready-foundation-conform-fet-007-standardSkill
- simready-foundation-conform-fet-010-standardSkill
- simready-foundation-conform-fet-011-standardSkill
- simready-foundation-conform-fet-021-isaacSkill
- simready-foundation-conform-fet-022-isaacSkill
- simready-foundation-conform-fet-022-mujocoSkill
- simready-foundation-conform-fet-022-newtonSkill
- simready-foundation-conform-fet-022-physxSkill
- simready-foundation-conform-fet-022-standardSkill
- simready-foundation-conform-fet-023-isaacSkill
- simready-foundation-conform-fet-024-mujocoSkill
- simready-foundation-conform-fet-024-newtonSkill
- simready-foundation-conform-fet-024-physxSkill
- simready-foundation-conform-fet-024-standardSkill
- simready-foundation-conform-fet-025-rosSkill
- simready-foundation-conform-fet-028-isaacSkill
- simready-foundation-conform-fet-028-mujocoSkill
- simready-foundation-conform-fet-028-standardSkill
- simready-foundation-conform-fet-030-standardSkill
- simready-foundation-conform-fet-031-standardSkill
- simready-foundation-conform-fet-032-standardSkill
- simready-foundation-conform-fet-033-standardSkill
- simready-foundation-conform-fet-100-isaacSkill
- simready-foundation-create-packageSkill
- simready-foundation-update-capabilitySkill
- simready-foundation-update-feature-adapterSkill
- simready-foundation-update-featureSkill
- simready-foundation-update-profileSkill
- simready-foundation-update-requirementSkill
- simready-foundation-update-validatorSkill
- The first 60 shown.
The file
Show its rules and text
We split this skill into the rules it gives an agent
14 rules. About 0 are common, 10 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈10
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 17
Use this skill when static validators are not enough to prove that a feature or profile works in a runtime, and the runtime evidence must …
- Distinctive: line 32
Do not hand-edit generated plans, result JSON, or report artifacts.
- Distinctive: line 49
Treat the installed library skills as authoritative for API names and flags.
- Very specific: line 117
Use this checklist when changing the repository.
- Very specific: line 122
Read the matching feature manifest and feature documentation.
- Very specific: line 130
Read the simready-benchmark write-test-pack skill (via simready-benchmark --skills-path) and follow it for the @test authoring mechanics, …
- Distinctive: line 160
Keep pure calculation and discovery logic outside the coroutine and add focused unit tests.
- Very specific: line 163
Update the matching page under the owning suite's docs/ directory and any feature/profile acceptance text that promises this runtime …
- Distinctive: line 204
Keep user/CI-owned executable paths and credentials out of committed tests and docs.
- Distinctive: line 205
Do not change an asset merely to make a runtime test pass unless the task explicitly includes asset conformance.
- Distinctive: line 207
If the runtime cannot run locally, still add clear commands, expected signals, and focused non-runtime validation.
- Distinctive: line 212
Do not mutate published feature or profile versions in place.
- Distinctive: line 213
Do not invent requirement IDs or validator behavior when the contract is ambiguous.
- Distinctive: line 214
Do not skip index, manifest, validation, or downstream follow-up notes.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
SimReady Add Runtime Test
Purpose
Use this skill when static validators are not enough to prove that a feature or
profile works in a runtime, and the runtime evidence must live in the SimReady
Foundation repository. Runtime tests are authored in the owning tier's
importable <test-package> and executed through the simready-benchmark plan,
run, stamp, and report pipeline. The core tier currently uses
simready_benchmark_kit_suite; other tiers may publish a different import
package and must declare it through their descriptor's runtime_tests_path.
This skill is deliberately scoped to the Foundation-repository wiring. The
generic mechanics of authoring, packaging, running, and reporting benchmark
tests are owned by the simready-benchmark library's own agent skills; do not
duplicate them here. Use those skills for the test-authoring and pipeline
mechanics, and use this skill for how a test is placed into this repository and
kept in sync with the Foundation docs, feature manifests, and profiles.
Do not hand-edit generated plans, result JSON, or report artifacts. Change the Python test source, its documentation, and focused tests instead.
Delegate Mechanics to the simready-benchmark Library Skills
The external simready-benchmark library ships its own agent skills that are the
source of truth for the framework mechanics. Locate them with
simready-benchmark --skills-path, then read and follow the relevant one:
write-test-pack- the@testdecorator, required metadata (features,name,description,expected_video,version,engine,config_defaults,max_duration),RunContextusage, media roles, config-driven tests, and packaging/discovery through thesimready_benchmark.testsentry-point group.run-tests- plan, run, and report a suite against a profile.diagnose-failures- read a report and propose a scoped re-run.
Treat the installed library skills as authoritative for API names and flags; they match the installed framework version. This skill only adds what those skills do not know: the Foundation repository's layout, docs, and spec bindings.
What This Skill Owns (Foundation-Specific)
- Deciding whether the test belongs to a Foundation tier. A test that proves a
tier-owned feature should ship with that tier. An independent OEM or
experimental test pack that does not own the feature should use the
Benchmark
write-test-packskill and either an independent wheel or an explicit development path. - Placing a tier-owned test directly under
nv_core/tiers/<tier-directory>/<test-package>/fet###_*and focused unit tests undernv_core/tiers/<tier-directory>/tests/runtime_tests/unit/. The package name comes from the owning tier descriptor; it is not globally fixed. - Keeping the tier wheel's package list and its
simready.tierdescriptor'sruntime_tests_pathsynchronized. The descriptor points directly at the importable test package directory; it does not point at aruntime_testscontainer. - Keeping the canonical
FET_###_<RUNTIME>decorator entry and semantic version constraint synchronized with the owning feature manifest and profile TOMLs. The decorator is the executable feature-to-test binding; feature manifests do not carry a separateruntime_testsselector. The current@testdecorator has norequirementargument, so document the requirement or behavioral contract in the test description and matching Foundation docs. - Updating the matching documentation under the owning
<test-package>/docs/directory and any feature/profile acceptance text that promises this runtime evidence. The documentation assembler publishes the tier-declared source at the stableguides/benchmark/tests/URL.
Prerequisites
Before editing, read:
AGENTS.mdnv_core/sr_specs/docs/guides/benchmark/benchmark.mdnv_core/sr_specs/docs/guides/benchmark/overview.mdnv_core/sr_specs/docs/guides/benchmark/pipeline.mdnv_core/sr_specs/docs/guides/benchmark/running.mdnv_core/sr_specs/docs/guides/benchmark/reading-reports.mdnv_core/tiers/<tier-directory>/<test-package>/docs/tests.md(or the landing page declared by that test package)nv_core/tiers/<tier-directory>/<test-package>/docs/authoring.mdnv_core/tiers/<tier-directory>/pyproject.tomlnv_core/tiers/<tier-directory>/simready/foundation/<tier-module>/_tier.pynv_core/tiers/<tier-directory>/<test-package>/nv_core/tiers/<tier-directory>/tests/runtime_tests/unit/- relevant feature/profile docs that need runtime evidence
- the neighboring runtime tests for the same feature family
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 | Representative assets and the validation/feature selection that makes the test applicable. |
ownership | Tier-owned feature evidence, independent published pack, or unpublished development pack. |
test_identifier | Unique @test name and semantic test version. |
test_module | Python module in the matching FET package. |
engine | Required Kit/Isaac engine tags and supported version range. |
test_config | Defaults exposed through config_defaults, including thresholds and timeouts. |
expected_artifacts | Metrics, logs, images, video, result JSON, and HTML report evidence. |
Instructions
Use this checklist when changing the repository. It covers the Foundation-specific
wiring only; follow the simready-benchmark library skills (see above) for the
@test authoring, packaging, and pipeline mechanics.
- Decide whether runtime evidence is required by the feature/profile or only useful as supplementary confidence.
- Read the matching feature manifest and feature documentation. Identify the
canonical
FET_###_<RUNTIME>decorator entry and semantic version constraint, then confirm the same feature version is selectable from the relevant profile TOMLs. The decorator is the executable feature-to-test binding; do not add a separateruntime_testsselector to the feature manifest. Identify the requirement or runtime promise it proves for documentation, but do not pass arequirementkeyword to@test; that keyword is not part of the current API. - Read the
simready-benchmarkwrite-test-packskill (viasimready-benchmark --skills-path) and follow it for the@testauthoring mechanics, decorator metadata,RunContextusage, and config defaults. Do not restate those mechanics here. - Choose the ownership model:
- For a tier-owned feature, resolve
<test-package>from the tier descriptor'sruntime_tests_path, add the test tonv_core/tiers/<tier-directory>/<test-package>/fet###_*, and keep it in the same wheel as that tier. - For an independent published pack, follow the Benchmark skill and register
the wheel under
simready_benchmark.tests. - For an unpublished pack, point
--tests-pathat the importable package directory. Explicit paths are additive to installed tier and independent providers.
- For a tier-owned feature, resolve
- For a tier-owned test, inspect neighboring modules and add each independently
reportable test in its own Python file. Reuse the suite's scene, context,
cleanup, configuration, and unit-test patterns. Do not recreate a separate
nv_core/runtime_testsornv_core/testing_toolsprovider tree. - Confirm the owning tier's
pyproject.tomlincludes both itssimreadypackage and<test-package>, and that the tier descriptor'sruntime_tests_pathresolves directly to that importable package directory. For the core tier,<test-package>is currentlysimready_benchmark_kit_suite. Descriptor import must remain dependency-light and must not import tests, Kit, Isaac, orpxr. - Bind the test to this repository's specs with the canonical Foundation
feature ID and semantic version constraint in the decorator's
featureslist. Confirm that ID/version against the owning feature manifest and relevant profile TOMLs. Provider identity is a discovery concern handled by the tier descriptor,simready_benchmark.testsentry point, or--tests-path; do not author provider/test selectors in feature manifests. Keep pure calculation and discovery logic outside the coroutine and add focused unit tests; add registration/metadata coverage when changing mappings or report behavior. - Update the matching page under the owning suite's
docs/directory and any feature/profile acceptance text that promises this runtime evidence. Keep the suite index/toctree and the tier's declarative documentation-source mapping synchronized. Do not create a second copy undersr_specs/docs. - Validate both delivery paths that changed:
- Source checkout: use
--foundations-path <repo>or point--tests-pathdirectly at the test package while developing, then run--list-tests. - Tier wheel: build and install the tier wheel in a clean environment and run
--show-configplus--list-testswithout--tests-path. Then run a scoped--plan-onlyand--no-stampexecution. Inspect the report/media and summarize the pass/fail/skip signal. If Kit/Isaac is unavailable, report a blocked runtime check rather than claiming a pass.
- Source checkout: use
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: discovery, plan-only, focused unit checks, and runtime evidence when available
remaining_gaps: requirement, validator, adapter, profile, or runtime-test follow-upPolicies
- Generated plans, result JSON, media, and report folders are artifacts, not source of truth.
- Runtime tests should be reproducible from the repository, installed Benchmark packages, engine configuration, asset path, and command line.
- Tier-owned tests ship in the tier wheel and are advertised only through the
tier descriptor. Independent test-only wheels use
simready_benchmark.tests. - The decorator's canonical feature ID and semantic version constraint own the executable feature-to-test binding. Keep them synchronized with the tier's feature manifests and profile TOMLs.
--tests-pathmust point at the importable package directory containing__init__.py, not at the repository root.- Keep user/CI-owned executable paths and credentials out of committed tests and docs.
- Do not change an asset merely to make a runtime test pass unless the task explicitly includes asset conformance.
- If the runtime cannot run locally, still add clear commands, expected signals, and focused non-runtime validation.
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.yamlpreserves 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 implementation, unit tests, and documentation changed. |
engine_requirements | Kit/Isaac/runtime assumptions. |
commands | Discovery, plan-only, focused unit, and runtime commands. |
artifacts | Expected or produced result/report evidence. |
validation | Runtime test result or blocker. |
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

