SimReady Conform FET007STANDARD Nonvisual Materials

SkillDev tools

Use for repairing SimReady nonvisual sensor material attributes on bound USD materials.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the SimReady Conform FET007STANDARD Nonvisual Materials skill

What this skill tells your AI

The instructions your AI receives, as published by nvidia/simready-foundation in skills/simready-foundation-conform-fet-007-standard/SKILL.md and read by ahel’s review.

Purpose

Use this workflow skill when the selected profile, validation report, or user request targets FET_007_STANDARD@0.2.0 non-visual sensor material attributes. FET_007_STANDARD authors and repairs sensor-facing material classification on bound UsdShade.Material prims so radar, lidar, thermal, and related RTX sensor simulations can reason about surfaces beyond visible shader appearance.

This is a material-semantics repair skill, not a shader-generation skill. Work on a staged copy under the requested output directory, preserve existing visual material bindings, and stop at the first FET_007_STANDARD issue that needs material identity or user judgement.

FET_007_STANDARD is optional in the consolidated Robotics-Prop profile and is not part of the default prop robotics profile sequence. When a profile does not include FET_007_STANDARD, run this skill only when the user explicitly asks for non-visual sensor material conformance or supplies a profile/workflow that includes FET_007_STANDARD.

Prerequisites

Read the source-of-truth files named below before editing. Work on staged outputs where the skill requires them, and keep validation evidence with the result.

Source of Truth

Before changing an asset, load the selected FET_007_STANDARD manifest and requirement docs:

  • nv_core/tiers/simready_foundation_tier_core/simready/foundation/tier_core/features/FET_007_STANDARD-0.2.0.json
  • nv_core/tiers/simready_foundation_tier_core/simready/foundation/tier_core/features/FET_007_STANDARD.md
  • nv_core/tiers/simready_foundation_tier_core/simready/foundation/tier_core/capabilities/nonvisual_sensors/nonvisual_materials/capability-nonvisual_materials.md
  • nv_core/tiers/simready_foundation_tier_core/simready/foundation/tier_core/capabilities/nonvisual_sensors/nonvisual_materials/requirements.md
  • nv_core/tiers/simready_foundation_tier_core/simready/foundation/tier_core/capabilities/nonvisual_sensors/nonvisual_materials/validation.py

Treat the selected JSON manifest as authoritative for the required IDs. If the markdown, manifest, validator, or report disagree on allowed values or requirement behavior, follow the current validation report and call out the mismatch in the stage summary.

For per-requirement repair details, read references/fet007-requirements.md when a FET_007_STANDARD validation report or inspection identifies matching failures.

Inputs

Collect these before editing:

InputRequirement
usd_assetRequired .usd, .usda, .usdc, or unpacked USD-family asset to repair.
output_rootRequired or inferred folder for staged assets and reports.
simready_profileProfile being validated, if one includes FET_007_STANDARD.
profile_versionProfile version, if supplied by the user or validation command.
validation_reportPreferred JSON or markdown report from the failing profile or feature validation gate.
fet007_featureSelected feature ID and version, currently FET_007_STANDARD@0.2.0.
material_evidenceSource DCC material metadata, visual material names, shader parameters, property reports, render review, or user-supplied material classifications.
classification_policyUser-approved defaults or mappings for unknown materials, coatings, and special attributes.

Instructions

Use this checklist when changing the repository:

  1. Confirm the input asset exists and determine whether FET_007_STANDARD is actually selected by the profile or explicitly requested by the user.
  2. Parse the validation report and filter to FET_007_STANDARD/NVM failures. Do not repair visual shader, texture, rigid-body, physics-material, or grasp issues in this skill.
  3. Load the selected FET_007_STANDARD manifest version and the requirement repair map.
  4. Create a staged output folder under output_root; do not mutate the source unless the user explicitly asks for in-place repair.
  5. Inspect the stage before editing:
    • default prim and composed payload/reference boundaries
    • renderable UsdGeom.Gprim and UsdGeom.Subset prims with computed purpose default or render
    • computed full-purpose material bindings for those prims
    • bound and unbound UsdShade.Material prims
    • existing omni:simready:nonvisual:base, omni:simready:nonvisual:coating, and omni:simready:nonvisual:attributes
    • time samples on those attributes
    • visual material evidence such as shader metallic, opacity, diffuse color, material names, texture names, and source DCC metadata
  6. Decide the non-visual material classification before authoring:
    • Use explicit source or user-supplied material labels first.
    • Use strong visual-material evidence only when the mapping is obvious and allowed by the current validator.
    • Use user-approved defaults for generic classes such as plastic, steel, rubber, wood, fabric, or clear_glass.
    • Block when the real material is not representable by the allowed values, or when multiple classes are plausible.
  7. Apply repairs in this order:
    • Remove, move, or bind orphaned non-visual material attributes only when the material-binding intent is clear.
    • Add or fix omni:simready:nonvisual:base from explicit material evidence.
    • Add or fix omni:simready:nonvisual:coating, defaulting to none only when no coating evidence exists and that policy is approved.
    • Add or fix omni:simready:nonvisual:attributes, using ["none"] or an empty token array only when no special sensor attributes are intended by policy.
    • Remove time samples from non-visual attributes only after preserving one intended default value.
    • Re-check consistency with the visual material semantics.
  8. Rerun the same validation gate when a profile includes FET_007_STANDARD, or the narrowest available Foundation/OAV capability check for non-visual materials. If no executable FET_007_STANDARD gate is available, report the USD inspection results and the validation gap.
  9. Summarize the stage as passed, failed, skipped, or blocked. Stop when FET_007_STANDARD passes or the next FET_007_STANDARD failure requires material identity, sensor-response policy, visual review, or source-material data.

Examples

Example request:

Repair FET_007_STANDARD nonvisual sensor material attributes on a USD asset.

Expected result summary:

staged_asset: repaired copy or output directory
validation: selected feature/profile gate and report path
remaining_failures: next failing requirement IDs, if any

Repair Policy

Make automatic repairs only when the intended result is mechanical and locally verifiable:

  • Fix attribute type names to token or token[] when the value is already valid.
  • Replace invalid token values with a clear approved mapping from source material evidence.
  • Remove time samples and author a default value when one sampled value is clearly the intended static material label.
  • Move non-visual attributes from an unbound duplicate material to the bound material only when the duplicate relationship is obvious.
  • Remove non-visual attributes from a clearly orphaned scratch material only when that material is not referenced or bound.

Block and report instead of guessing when:

  • A material has no reliable source classification.
  • A visual material name or shader color is too generic to identify a sensor material class.
  • The asset material is outside the current allowed FET_007_STANDARD value list.
  • The validator and docs disagree and the repair would risk making sensor semantics less truthful.
  • A material appears visually inconsistent with the proposed non-visual class.
  • The staged asset has no bound visual materials and the user did not ask to create visual materials first.

Classification Guidance

FET_007_STANDARD values are semantic labels, not visual decoration. Do not choose them just to satisfy the validator.

Use the current validator value list for pass/fail decisions. Notable current values include:

  • Base examples: aluminum, steel, oxidized_steel, iron, plastic, rubber, wood, fabric, leather, clear_glass, frosted_glass, concrete, brick, stone, water, snow, ice, calibration_lambertian
  • Coating values: none, paint, clearcoat, paint_clearcoat
  • Attribute values: none, emissive, retroreflective, single_sided, visually_transparent

Common consistency checks:

  • Metallic visual materials should map to a metal base such as steel, aluminum, iron, brass, or bronze.
  • Transparent visual materials should usually use a glass-like base and include visually_transparent.
  • Painted materials should use a base material plus paint or paint_clearcoat.
  • Rubber-like dark flexible surfaces should use rubber, not generic plastic, when evidence supports it.
  • Emissive visual materials should include emissive; road reflectors and similar objects may include retroreflective.

Validation Handoff

Preserve reports under the staged output directory. If a selected profile includes FET_007_STANDARD and the Physical AI Skill Hub validation commands are available, use the same profile gate that exposed the failure:

uv run --python 3.12 validate-simready-profile <staged-usd> \
  --profile <profile> \
  --profile-version <version> \
  --foundation-root <simready-foundation-root> \
  --foundation-spec-root <simready-foundation-root>/nv_core/sr_specs/docs \
  --report <output-root>/simready-profile-after-fet007.json

If no selected profile includes FET_007_STANDARD, do not mutate a profile TOML file just to test the skill. Run the available non-visual materials capability validator directly if the local environment exposes it; otherwise report the deterministic USD inspection and note that profile validation cannot exercise FET_007_STANDARD until a profile selects it.

Limitations

  • Do not silently mutate the source asset; work on the requested staged output.
  • Do not hide later profile failures after the selected feature gate passes or fails.
  • Do not invent geometry, metadata, or runtime behavior that conflicts with the asset intent.

Troubleshooting

  • Error: validation tooling is unavailable. Solution: run the narrowest available USD or static check and report the gap.
  • Error: a repair would change asset intent. Solution: stop and ask for direction or stage the smallest reversible edit.
  • Error: later profile gates still fail. Solution: report the next failing feature and hand off to the matching conformance skill.

Resources

  • assets/openai.yaml preserves optional UI metadata for clients that read skill display hints. It is not required for the workflow.
  • references/ contains detailed requirement notes; load only the files needed for the active validation failure.

Summary Format

Report:

FieldMeaning
input_usd_pathOriginal USD path.
output_usd_pathLatest staged/repaired USD path.
profile and profile_versionValidation target, if any.
fet007_featureSelected FET_007_STANDARD feature ID and version.
material_evidenceSource used for non-visual classification.
classified_materialsBound material prims and authored base/coating/attribute values.
unbound_material_repairsOrphaned attribute fixes or bindings changed for NVM.004.
time_sample_repairsAttributes changed for NVM.006.
requirements_repairedRequirement IDs changed by this skill.
requirements_blockedRequirement IDs that need material identity, source data, or user judgement.
validation_reportPath to the rerun validation or inspection report.
next_stepUsually run FET_007_STANDARD-capable validation or collect missing material evidence.

Keep the user-facing summary short: which materials were classified, what evidence justified the values, what validation could run, and what remains blocked.

Signals

GitHub stars
87
Forks
18
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
simready-foundation-conform-fet-007-standard
Source
github.com/nvidia/simready-foundation