[
 {
  "id": "appliance_dishwasher_a01",
  "name": "Freestanding stainless steel dishwasher",
  "description": "A freestanding dishwasher in brushed stainless steel with a rigid countertop, an empty interior and plain controls. The drop-down door opens and the control knobs turn.",
  "category": "appliance",
  "subcategory": "dishwasher",
  "variant": "a01",
  "semantic_label": "dishwasher",
  "wikidata_qcode": "Q186263",
  "mechanism": "articulated",
  "dimensions_m": [
   0.6,
   0.6001,
   0.86
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 69.9556,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 7900 kg/m3 (AK Steel 304/304L data sheet 7.9 g/cm3 (as in R/simready/densities.json))",
  "materials": [
   "steel_stainless"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "measured: As R/simready/densities.json steel_stainless. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "door",
    "type": "revolute",
    "range": [
     0.0,
     1.5708
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "127 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [6, 6, 6])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_appliance_dishwasher_a01_01.usd",
    "bytes": 1828134,
    "sha256": "d50eca40d4ca1fde86314486b3cc380db921ac8d01b5a662091f5cf5696c4e60"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_appliance_dishwasher_a01_01.usd.png",
    "bytes": 62175,
    "sha256": "e37e948a59970787003aa7ea04692cc0e39179212fd93e2d2fd09a284db188ed"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_appliance_dishwasher_a01_01.usd_light.png",
    "bytes": 62885,
    "sha256": "d0300550748e511a13f9e990620d6d157ddb0c65334102ee727ed3f98f85b545"
   },
   {
    "path": "simready_usd/textures/directional_brushed_steel_albedo.png",
    "bytes": 1329897,
    "sha256": "aa42c9268e610a16ea525cb51909a25fc3ec0afc5ad06125206c7bc92bdb4840"
   },
   {
    "path": "appliance_dishwasher_a01.zip",
    "bytes": 1702569,
    "sha256": "a5de76c8422d3bfdc6cc1cc4825253ccf0b2b3dace8d6c86414b2eab6795285a"
   }
  ],
  "urls": {
   "usd": "/files/assets/appliance_dishwasher_a01/simready_usd/sm_appliance_dishwasher_a01_01.usd",
   "zip": "/files/assets/appliance_dishwasher_a01/appliance_dishwasher_a01.zip",
   "thumb": "/files/assets/appliance_dishwasher_a01/simready_usd/.thumbs/256x256/sm_appliance_dishwasher_a01_01.usd.png",
   "thumb_light": "/files/assets/appliance_dishwasher_a01/simready_usd/.thumbs/256x256/sm_appliance_dishwasher_a01_01.usd_light.png",
   "metadata": "/files/assets/appliance_dishwasher_a01/metadata.json",
   "license": "/files/assets/appliance_dishwasher_a01/LICENSE.txt",
   "glb": "/files/assets/appliance_dishwasher_a01/preview/appliance_dishwasher_a01.glb"
  },
  "media": {
   "glb": "/files/assets/appliance_dishwasher_a01/preview/appliance_dishwasher_a01.glb",
   "collision_glb": "/files/assets/appliance_dishwasher_a01/preview/appliance_dishwasher_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.3,
     -0.0,
     -0.3
    ],
    "max": [
     0.3,
     0.86,
     0.3
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_34",
      "geom_35",
      "geom_36",
      "geom_37",
      "geom_38",
      "geom_39",
      "geom_40",
      "geom_41",
      "geom_42",
      "geom_43",
      "geom_44",
      "geom_45",
      "geom_46",
      "geom_47",
      "geom_48",
      "geom_49",
      "geom_50",
      "geom_51",
      "geom_52",
      "geom_53",
      "geom_54",
      "geom_55",
      "geom_56",
      "geom_57",
      "geom_58",
      "geom_59",
      "geom_60",
      "geom_61",
      "geom_62",
      "geom_63",
      "geom_64",
      "geom_65",
      "geom_66",
      "geom_67",
      "geom_68",
      "geom_69",
      "geom_70",
      "geom_71",
      "geom_72",
      "geom_73",
      "geom_74",
      "geom_75",
      "geom_76"
     ],
     "center": [
      0.0,
      0.43,
      -0.00235
     ],
     "joint": null
    },
    {
     "node": "door",
     "parent": "carcass",
     "meshes": [
      "geom_170",
      "geom_171",
      "geom_172",
      "geom_173",
      "geom_174",
      "geom_175",
      "geom_176",
      "geom_177",
      "geom_178",
      "geom_179",
      "geom_180",
      "geom_181",
      "geom_182",
      "geom_183",
      "geom_184",
      "geom_185",
      "geom_186",
      "geom_187",
      "geom_188",
      "geom_189",
      "geom_190",
      "geom_191",
      "geom_192",
      "geom_193",
      "geom_194",
      "geom_195"
     ],
     "center": [
      0.0,
      0.45825,
      0.26567
     ],
     "joint": {
      "name": "door",
      "type": "revolute",
      "axis": [
       1.0,
       0.0,
       0.0
      ],
      "origin": [
       0.0,
       0.108,
       0.249199
      ],
      "range": [
       0.0,
       1.5708
      ],
      "units": "rad",
      "axis_parent": [
       1.0,
       0.0,
       0.0
      ],
      "origin_parent": [
       0.0,
       0.108,
       0.24812
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.43,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "bathroom_hair_comb_a01",
  "name": "Wide-tooth comb, matte amber",
  "description": "A wide-tooth hair comb made of translucent matte amber cellulose acetate with polished edges. It is a single rigid piece with no moving parts.",
  "category": "bathroom",
  "subcategory": "hair_comb",
  "variant": "a01",
  "semantic_label": "hair comb",
  "wikidata_qcode": "Q23834",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1634,
   0.045,
   0.006
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0275,
  "mass_source": "derived: evaluated rounded solid mesh volume 2.11611416e-05 m3 x 1300 kg/m3; spec: cellulose acetate typical density 1.30 g/cm3 (MatWeb cellulose acetate material property range 1.28-1.32 g/cm3)",
  "materials": [
   "plastic"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "120 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_bathroom_hair_comb_a01_01.usd",
    "bytes": 3043360,
    "sha256": "161ee11c55a696de1672d6909bd9ee4a89e891aa6d39e540f9951d73f54fb5e0"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_bathroom_hair_comb_a01_01.usd.png",
    "bytes": 65823,
    "sha256": "232c1f52d912f9a2d50995159b1a3b56dc21c769511429369408d7dc7e36624c"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_bathroom_hair_comb_a01_01.usd_light.png",
    "bytes": 65203,
    "sha256": "566340021e58a2958c5d0f70c2bf9fe6c07e071965bed6d9125516724fd32d6f"
   },
   {
    "path": "bathroom_hair_comb_a01.zip",
    "bytes": 584330,
    "sha256": "cf93fe2da5d25781dd3876171bf9df1b83b75fd72c2b5dc2083f3114ef741f55"
   }
  ],
  "urls": {
   "usd": "/files/assets/bathroom_hair_comb_a01/simready_usd/sm_bathroom_hair_comb_a01_01.usd",
   "zip": "/files/assets/bathroom_hair_comb_a01/bathroom_hair_comb_a01.zip",
   "thumb": "/files/assets/bathroom_hair_comb_a01/simready_usd/.thumbs/256x256/sm_bathroom_hair_comb_a01_01.usd.png",
   "thumb_light": "/files/assets/bathroom_hair_comb_a01/simready_usd/.thumbs/256x256/sm_bathroom_hair_comb_a01_01.usd_light.png",
   "metadata": "/files/assets/bathroom_hair_comb_a01/metadata.json",
   "license": "/files/assets/bathroom_hair_comb_a01/LICENSE.txt",
   "glb": "/files/assets/bathroom_hair_comb_a01/preview/bathroom_hair_comb_a01.glb"
  },
  "media": {
   "glb": "/files/assets/bathroom_hair_comb_a01/preview/bathroom_hair_comb_a01.glb",
   "collision_glb": "/files/assets/bathroom_hair_comb_a01/preview/bathroom_hair_comb_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.08,
     0.0,
     -0.0225
    ],
    "max": [
     0.08,
     0.006,
     0.0225
    ]
   },
   "parts": [
    {
     "node": "comb",
     "parent": null,
     "meshes": [
      "geom_120"
     ],
     "center": [
      -0.0,
      0.003,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.003,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "bathroom_waste_bin_a01",
  "name": "Cream round plastic bathroom wastebasket",
  "description": "A small open-top cylindrical wastebasket made of cream polypropylene with slightly tapered sides and a flat rim. It has no lid or moving parts.",
  "category": "bathroom",
  "subcategory": "waste_bin",
  "variant": "a01",
  "semantic_label": "wastebasket",
  "wikidata_qcode": "Q120475",
  "mechanism": "rigid",
  "dimensions_m": [
   0.176,
   0.176,
   0.202
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.1836,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 905 kg/m3 (PP homopolymer and copolymer 0.900-0.910 g/cm3 (amesweb.info Density of Plastics; MakeItFrom PP homopolymer))",
  "materials": [
   "polypropylene"
  ],
  "friction": {
   "static": 0.305,
   "dynamic": 0.305,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "65 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_bathroom_waste_bin_a01_01.usd",
    "bytes": 284540,
    "sha256": "a5092108777da547c88f9ae5eea90fe2fe72efef1b31ca9c95c46964cbc4a84b"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_bathroom_waste_bin_a01_01.usd.png",
    "bytes": 58026,
    "sha256": "1cde4f51b9546060bbbf08250c2b0b955653688c5a80d040e5906c9592deae18"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_bathroom_waste_bin_a01_01.usd_light.png",
    "bytes": 57838,
    "sha256": "f8b1279ba88ddd691477a6869444b31eca9c3312c91bfa25c6b23d6f19c73a8e"
   },
   {
    "path": "bathroom_waste_bin_a01.zip",
    "bytes": 174240,
    "sha256": "c1382e73174724fe13eb0160ecc72c8a3e086e5fde36ceb60b01a7bd80d3ce96"
   }
  ],
  "urls": {
   "usd": "/files/assets/bathroom_waste_bin_a01/simready_usd/sm_bathroom_waste_bin_a01_01.usd",
   "zip": "/files/assets/bathroom_waste_bin_a01/bathroom_waste_bin_a01.zip",
   "thumb": "/files/assets/bathroom_waste_bin_a01/simready_usd/.thumbs/256x256/sm_bathroom_waste_bin_a01_01.usd.png",
   "thumb_light": "/files/assets/bathroom_waste_bin_a01/simready_usd/.thumbs/256x256/sm_bathroom_waste_bin_a01_01.usd_light.png",
   "metadata": "/files/assets/bathroom_waste_bin_a01/metadata.json",
   "license": "/files/assets/bathroom_waste_bin_a01/LICENSE.txt",
   "glb": "/files/assets/bathroom_waste_bin_a01/preview/bathroom_waste_bin_a01.glb"
  },
  "media": {
   "glb": "/files/assets/bathroom_waste_bin_a01/preview/bathroom_waste_bin_a01.glb",
   "collision_glb": "/files/assets/bathroom_waste_bin_a01/preview/bathroom_waste_bin_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.088,
     -0.0,
     -0.088
    ],
    "max": [
     0.088,
     0.202,
     0.088
    ]
   },
   "parts": [
    {
     "node": "basket",
     "parent": null,
     "meshes": [
      "geom_65"
     ],
     "center": [
      0.0,
      0.101,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.101,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "cleaning_measuring_scoop_a01",
  "name": "Polypropylene detergent measuring scoop",
  "description": "A small polypropylene scoop with a handle, used to measure powder detergent. It is a single rigid moulded piece.",
  "category": "cleaning",
  "subcategory": "measuring_scoop",
  "variant": "a01",
  "semantic_label": "measuring scoop",
  "wikidata_qcode": "Q744849",
  "mechanism": "rigid",
  "dimensions_m": [
   0.098,
   0.048,
   0.048
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0113,
  "mass_source": "derived: spec: polypropylene 905 kg/m3 (densities.json plastic_pp; resin datasheets ISO 1183 0.900 to 0.910 g/cm3) x modelled volume 12.45 cm3 (cup shell + handle) = 11.3 g",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "18 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_cleaning_measuring_scoop_a01_01.usd",
    "bytes": 52081,
    "sha256": "08f89c93237381714eb0ed9882b2ae0c1508e9bc8dc1f368c756732878d068ec"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_cleaning_measuring_scoop_a01_01.usd.png",
    "bytes": 59968,
    "sha256": "0b5f4277d2415e80dde762a6bb6ec3dab47362c7d0e5bc783481ad1cfdca3f33"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_cleaning_measuring_scoop_a01_01.usd_light.png",
    "bytes": 60754,
    "sha256": "fda37247dd5963fe19ce248d5dcd57dccd3479e396e6a3222a08309f17c9d356"
   },
   {
    "path": "cleaning_measuring_scoop_a01.zip",
    "bytes": 137087,
    "sha256": "61d48f5711f53650d804c0766ead544ae1dc187c35a3fc2ee1d1931e20f9ced0"
   }
  ],
  "urls": {
   "usd": "/files/assets/cleaning_measuring_scoop_a01/simready_usd/sm_cleaning_measuring_scoop_a01_01.usd",
   "zip": "/files/assets/cleaning_measuring_scoop_a01/cleaning_measuring_scoop_a01.zip",
   "thumb": "/files/assets/cleaning_measuring_scoop_a01/simready_usd/.thumbs/256x256/sm_cleaning_measuring_scoop_a01_01.usd.png",
   "thumb_light": "/files/assets/cleaning_measuring_scoop_a01/simready_usd/.thumbs/256x256/sm_cleaning_measuring_scoop_a01_01.usd_light.png",
   "metadata": "/files/assets/cleaning_measuring_scoop_a01/metadata.json",
   "license": "/files/assets/cleaning_measuring_scoop_a01/LICENSE.txt",
   "glb": "/files/assets/cleaning_measuring_scoop_a01/preview/cleaning_measuring_scoop_a01.glb"
  },
  "media": {
   "glb": "/files/assets/cleaning_measuring_scoop_a01/preview/cleaning_measuring_scoop_a01.glb",
   "collision_glb": "/files/assets/cleaning_measuring_scoop_a01/preview/cleaning_measuring_scoop_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.049,
     -0.0,
     -0.024
    ],
    "max": [
     0.049,
     0.048,
     0.024
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_18",
      "geom_19"
     ],
     "center": [
      -0.0,
      0.024,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.024,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "container_bucket_a01",
  "name": "Teal plastic bucket, charcoal handle",
  "description": "A small empty polypropylene utility bucket in teal with a charcoal bail handle that rotates on its pivots at the rim.",
  "category": "container",
  "subcategory": "bucket",
  "variant": "a01",
  "semantic_label": "bucket",
  "wikidata_qcode": "Q47107",
  "mechanism": "articulated",
  "dimensions_m": [
   0.2227,
   0.2145,
   0.19
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.265,
  "mass_source": "derived: PP 900 kg/m3 x 0.000269 m3 molded wall, floor, rolled rim and trunnions (2.5 mm wall, 5 mm floor) (+1 more bodies)",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "handle_bail",
    "type": "revolute",
    "range": [
     0.0,
     3.14159
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "299 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": true,
   "rest_interpenetration_mm": 3.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_container_bucket_a01_01.usd",
    "bytes": 381458,
    "sha256": "d4606dff3b34f3497f87b2439156c1881e96ef51de523ac99585bc5dda87e944"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_bucket_a01_01.usd.png",
    "bytes": 62944,
    "sha256": "d8d695d549c255d654d62ccdb49f795624cf3b83b218ffceed932cec5a568529"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_bucket_a01_01.usd_light.png",
    "bytes": 63710,
    "sha256": "9a36116a81ba440b403ce4a016f69f4f35ba195a8fb379cc82ecb8885bf17c86"
   },
   {
    "path": "container_bucket_a01.zip",
    "bytes": 232596,
    "sha256": "53e4cc2ccb4f7e90d21421bfb08e78ffda112f7bbf07433e96b7d774acc9e514"
   }
  ],
  "urls": {
   "usd": "/files/assets/container_bucket_a01/simready_usd/sm_container_bucket_a01_01.usd",
   "zip": "/files/assets/container_bucket_a01/container_bucket_a01.zip",
   "thumb": "/files/assets/container_bucket_a01/simready_usd/.thumbs/256x256/sm_container_bucket_a01_01.usd.png",
   "thumb_light": "/files/assets/container_bucket_a01/simready_usd/.thumbs/256x256/sm_container_bucket_a01_01.usd_light.png",
   "metadata": "/files/assets/container_bucket_a01/metadata.json",
   "license": "/files/assets/container_bucket_a01/LICENSE.txt",
   "glb": "/files/assets/container_bucket_a01/preview/container_bucket_a01.glb"
  },
  "media": {
   "glb": "/files/assets/container_bucket_a01/preview/container_bucket_a01.glb",
   "collision_glb": "/files/assets/container_bucket_a01/preview/container_bucket_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.11,
     -0.0,
     -0.1065
    ],
    "max": [
     0.11,
     0.19,
     0.1065
    ]
   },
   "parts": [
    {
     "node": "pail",
     "parent": null,
     "meshes": [
      "geom_289",
      "geom_290",
      "geom_291"
     ],
     "center": [
      0.0,
      0.095,
      -0.00497
     ],
     "joint": null
    },
    {
     "node": "handle_bail",
     "parent": "pail",
     "meshes": [
      "geom_302",
      "geom_303",
      "geom_304",
      "geom_305",
      "geom_306"
     ],
     "center": [
      0.0,
      0.13351,
      0.04778
     ],
     "joint": {
      "name": "handle_bail",
      "type": "revolute",
      "axis": [
       -1.0,
       0.0,
       0.0
      ],
      "origin": [
       0.0,
       0.165,
       -0.004967
      ],
      "range": [
       0.0,
       3.14159
      ],
      "units": "rad",
      "axis_parent": [
       -1.0,
       0.0,
       0.0
      ],
      "origin_parent": [
       0.0,
       0.165,
       0.0
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.095,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "container_milk_bottle_a01",
  "name": "Ivory plastic milk bottle, blue cap",
  "description": "A small squat HDPE bottle with an ivory cylindrical body, domed shoulders and a shallow foot ring. It has a ribbed blue screw cap.",
  "category": "container",
  "subcategory": "milk_bottle",
  "variant": "a01",
  "semantic_label": "milk bottle",
  "wikidata_qcode": "Q2995020",
  "mechanism": "articulated",
  "dimensions_m": [
   0.06,
   0.06,
   0.137
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0214,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 955 kg/m3 (HDPE 0.94-0.97 g/cm3 (amesweb.info Density of Plastics; Omnexus))",
  "materials": [
   "hdpe"
  ],
  "friction": {
   "static": 0.269,
   "dynamic": 0.269,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "screw_cap_turn",
    "type": "revolute",
    "range": [
     0.0,
     9.42478
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "screw_cap_lift",
    "type": "prismatic",
    "range": [
     0.0,
     0.06
    ],
    "continuous": false,
    "units": "m"
   }
  ],
  "collision": "39 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 6]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed; build.py has a conditional import/bake of input/mesh_hy31.glb that did not run (file absent).",
   "mechanism_note": "label expects rigid, package is articulated"
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_container_milk_bottle_a01_01.usd",
    "bytes": 3950468,
    "sha256": "28ad10097faa5e73a645c8e9a40f8ae8c6634a8cd3352640792804a8d9b88877"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_milk_bottle_a01_01.usd.png",
    "bytes": 58370,
    "sha256": "e07a16ecd1a7736d86168e81ffa761fbd1c2d28deac995054d8b4c3dd3cb0cc6"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_milk_bottle_a01_01.usd_light.png",
    "bytes": 58511,
    "sha256": "faf83dfcf814f0646c6d41dc81d3f807d239cecd2d1cadb6fd1114254f988ca2"
   },
   {
    "path": "container_milk_bottle_a01.zip",
    "bytes": 770379,
    "sha256": "e770d88e771870ee3549cf0fa488d435cee1f7f11313291a705e0ed9eaaf93f1"
   }
  ],
  "urls": {
   "usd": "/files/assets/container_milk_bottle_a01/simready_usd/sm_container_milk_bottle_a01_01.usd",
   "zip": "/files/assets/container_milk_bottle_a01/container_milk_bottle_a01.zip",
   "thumb": "/files/assets/container_milk_bottle_a01/simready_usd/.thumbs/256x256/sm_container_milk_bottle_a01_01.usd.png",
   "thumb_light": "/files/assets/container_milk_bottle_a01/simready_usd/.thumbs/256x256/sm_container_milk_bottle_a01_01.usd_light.png",
   "metadata": "/files/assets/container_milk_bottle_a01/metadata.json",
   "license": "/files/assets/container_milk_bottle_a01/LICENSE.txt"
  }
 },
 {
  "id": "container_plastic_tray_a01",
  "name": "Polypropylene sorting tray",
  "description": "A shallow rectangular polypropylene tray for sorting and holding small items. It is a single rigid moulded piece with no moving parts.",
  "category": "container",
  "subcategory": "plastic_tray",
  "variant": "a01",
  "semantic_label": "plastic tray",
  "wikidata_qcode": "Q613972",
  "mechanism": "rigid",
  "dimensions_m": [
   0.26,
   0.159,
   0.064
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.2023,
  "mass_source": "derived: spec: polypropylene homopolymer 905 kg/m3 (densities.json plastic_pp; resin datasheets ISO 1183 0.900 to 0.910 g/cm3) x modelled shell volume 223.6 cm3 (2.5 mm walls and floor, rim flange) = 202 g",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "27 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_container_plastic_tray_a01_01.usd",
    "bytes": 47192,
    "sha256": "8309950f2ee033b6fe97545e260b4b9ba16ba291b464b08c5fcc87f32ff1a03c"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_plastic_tray_a01_01.usd.png",
    "bytes": 60855,
    "sha256": "46410f3e849a10cf21365e70ff3005e17247270471ea2ec9e38a4ce20a713af4"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_plastic_tray_a01_01.usd_light.png",
    "bytes": 58638,
    "sha256": "7e3e0d9c9555cfaa4a1d66100859fdda8ed971f56f72affeb1fbfa9ab17eda7d"
   },
   {
    "path": "container_plastic_tray_a01.zip",
    "bytes": 133874,
    "sha256": "6eab234b6fe1819a0eeb776794ebc60ffcf564b94923770bc83cd485de657329"
   }
  ],
  "urls": {
   "usd": "/files/assets/container_plastic_tray_a01/simready_usd/sm_container_plastic_tray_a01_01.usd",
   "zip": "/files/assets/container_plastic_tray_a01/container_plastic_tray_a01.zip",
   "thumb": "/files/assets/container_plastic_tray_a01/simready_usd/.thumbs/256x256/sm_container_plastic_tray_a01_01.usd.png",
   "thumb_light": "/files/assets/container_plastic_tray_a01/simready_usd/.thumbs/256x256/sm_container_plastic_tray_a01_01.usd_light.png",
   "metadata": "/files/assets/container_plastic_tray_a01/metadata.json",
   "license": "/files/assets/container_plastic_tray_a01/LICENSE.txt",
   "glb": "/files/assets/container_plastic_tray_a01/preview/container_plastic_tray_a01.glb"
  },
  "media": {
   "glb": "/files/assets/container_plastic_tray_a01/preview/container_plastic_tray_a01.glb",
   "collision_glb": "/files/assets/container_plastic_tray_a01/preview/container_plastic_tray_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.13,
     -0.0,
     -0.0795
    ],
    "max": [
     0.13,
     0.064,
     0.0795
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_27"
     ],
     "center": [
      -0.0,
      0.032,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.032,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "container_stacking_crate_a01",
  "name": "Grey plastic lattice stacking crate",
  "description": "An empty grey polypropylene stacking crate with open lattice walls and integral handles. The plastic is scuffed, and the crate has no labels or moving parts.",
  "category": "container",
  "subcategory": "stacking_crate",
  "variant": "a01",
  "semantic_label": "stacking crate",
  "wikidata_qcode": "Q987767",
  "mechanism": "rigid",
  "dimensions_m": [
   0.4396,
   0.5896,
   0.3
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 4.6229,
  "mass_source": "derived: plastic_pp 905 kg/m3 x 0.00510815 m3 (sum molded rib and band volumes minus grid intersections; corner overlaps conservatively retained) = 4.623 kg; density source: polypropylene homopolymer 0.900 to 0.910 g/cm3 (ISO 1183 values in resin datasheets); 905 taken.",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "174 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_container_stacking_crate_a01_01.usd",
    "bytes": 17188645,
    "sha256": "ae317b400344b8e807f3b109ab4716e6308f542eb131d09808149255fa5348b9"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_stacking_crate_a01_01.usd.png",
    "bytes": 76810,
    "sha256": "89e1f934d2b0a284f8bb3d0fef6dddb440b158b1d30fce4585ba38197ebd7e62"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_stacking_crate_a01_01.usd_light.png",
    "bytes": 77804,
    "sha256": "9c341eb5233409c18775f794c0b0bf2e3142f5ff8f583fa19441bc1090624796"
   },
   {
    "path": "simready_usd/textures/edge_pp.png",
    "bytes": 841011,
    "sha256": "9900e5935008a7143c49581dbe71986d38ceac213863b8e5358da70450d3c9b9"
   },
   {
    "path": "simready_usd/textures/subtle_pp.png",
    "bytes": 736021,
    "sha256": "f475d6f663ca8f35622678438fc9e51fdf7bf066e0ca21974980fd870be73ebb"
   },
   {
    "path": "container_stacking_crate_a01.zip",
    "bytes": 5072173,
    "sha256": "fceebc26f0b29870fff3f24ffeb38ed4879280c8244b7bcc229aa18f5edb7ecd"
   }
  ],
  "urls": {
   "usd": "/files/assets/container_stacking_crate_a01/simready_usd/sm_container_stacking_crate_a01_01.usd",
   "zip": "/files/assets/container_stacking_crate_a01/container_stacking_crate_a01.zip",
   "thumb": "/files/assets/container_stacking_crate_a01/simready_usd/.thumbs/256x256/sm_container_stacking_crate_a01_01.usd.png",
   "thumb_light": "/files/assets/container_stacking_crate_a01/simready_usd/.thumbs/256x256/sm_container_stacking_crate_a01_01.usd_light.png",
   "metadata": "/files/assets/container_stacking_crate_a01/metadata.json",
   "license": "/files/assets/container_stacking_crate_a01/LICENSE.txt",
   "glb": "/files/assets/container_stacking_crate_a01/preview/container_stacking_crate_a01.glb"
  },
  "media": {
   "glb": "/files/assets/container_stacking_crate_a01/preview/container_stacking_crate_a01.glb",
   "collision_glb": "/files/assets/container_stacking_crate_a01/preview/container_stacking_crate_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.2,
     -0.0,
     -0.275
    ],
    "max": [
     0.2,
     0.3,
     0.275
    ]
   },
   "parts": [
    {
     "node": "crate",
     "parent": null,
     "meshes": [
      "geom_174",
      "geom_175",
      "geom_176",
      "geom_177",
      "geom_178",
      "geom_179",
      "geom_180",
      "geom_181",
      "geom_182",
      "geom_183",
      "geom_184",
      "geom_185",
      "geom_186",
      "geom_187",
      "geom_188",
      "geom_189",
      "geom_190",
      "geom_191",
      "geom_192",
      "geom_193",
      "geom_194",
      "geom_195",
      "geom_196",
      "geom_197",
      "geom_198",
      "geom_199",
      "geom_200",
      "geom_201",
      "geom_202",
      "geom_203",
      "geom_204",
      "geom_205",
      "geom_206",
      "geom_207",
      "geom_208",
      "geom_209",
      "geom_210",
      "geom_211",
      "geom_212",
      "geom_213",
      "geom_214",
      "geom_215",
      "geom_216",
      "geom_217",
      "geom_218",
      "geom_219",
      "geom_220",
      "geom_221",
      "geom_222",
      "geom_223",
      "geom_224",
      "geom_225",
      "geom_226",
      "geom_227",
      "geom_228",
      "geom_229",
      "geom_230",
      "geom_231",
      "geom_232",
      "geom_233",
      "geom_234",
      "geom_235",
      "geom_236",
      "geom_237",
      "geom_238",
      "geom_239",
      "geom_240",
      "geom_241",
      "geom_242",
      "geom_243",
      "geom_244",
      "geom_245",
      "geom_246",
      "geom_247",
      "geom_248",
      "geom_249",
      "geom_250",
      "geom_251",
      "geom_252",
      "geom_253",
      "geom_254",
      "geom_255",
      "geom_256",
      "geom_257",
      "geom_258",
      "geom_259",
      "geom_260",
      "geom_261",
      "geom_262",
      "geom_263",
      "geom_264",
      "geom_265",
      "geom_266",
      "geom_267",
      "geom_268",
      "geom_269",
      "geom_270",
      "geom_271",
      "geom_272",
      "geom_273",
      "geom_274",
      "geom_275",
      "geom_276",
      "geom_277",
      "geom_278",
      "geom_279",
      "geom_280",
      "geom_281",
      "geom_282",
      "geom_283",
      "geom_284",
      "geom_285",
      "geom_286",
      "geom_287",
      "geom_288",
      "geom_289",
      "geom_290",
      "geom_291",
      "geom_292",
      "geom_293",
      "geom_294",
      "geom_295",
      "geom_296",
      "geom_297",
      "geom_298",
      "geom_299",
      "geom_300",
      "geom_301",
      "geom_302",
      "geom_303",
      "geom_304",
      "geom_305",
      "geom_306",
      "geom_307",
      "geom_308",
      "geom_309",
      "geom_310",
      "geom_311",
      "geom_312",
      "geom_313",
      "geom_314",
      "geom_315",
      "geom_316",
      "geom_317",
      "geom_318",
      "geom_319",
      "geom_320",
      "geom_321",
      "geom_322",
      "geom_323",
      "geom_324",
      "geom_325",
      "geom_326",
      "geom_327",
      "geom_328",
      "geom_329",
      "geom_330",
      "geom_331",
      "geom_332",
      "geom_333",
      "geom_334",
      "geom_335",
      "geom_336",
      "geom_337",
      "geom_338",
      "geom_339"
     ],
     "center": [
      -0.0,
      0.15,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.15,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "container_storage_tin_a01",
  "name": "Rectangular metal storage tin, cream",
  "description": "A rectangular storage tin made of metal with a matte cream coating. It has a hinged lid that opens and closes over an empty interior.",
  "category": "container",
  "subcategory": "storage_tin",
  "variant": "a01",
  "semantic_label": "storage tin",
  "wikidata_qcode": "Q7807826",
  "mechanism": "articulated",
  "dimensions_m": [
   0.19,
   0.14,
   0.12
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.6381,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 7900 kg/m3 (AK Steel 304/304L data sheet 7.9 g/cm3 (as in R/simready/densities.json))",
  "materials": [
   "steel_stainless"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "measured: As R/simready/densities.json steel_stainless. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "lid",
    "type": "revolute",
    "range": [
     0.0,
     1.91986
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "18 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [6, 6, 6])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_container_storage_tin_a01_01.usd",
    "bytes": 1264902,
    "sha256": "9dab80afc5f75aa09331d8123f04a7d87d97684ac07cac88e9c8ce677fd842f2"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_storage_tin_a01_01.usd.png",
    "bytes": 62994,
    "sha256": "f2a0415079e0b5d701278e7060f2dc00e5adfa59b6a62742ac75e0fc8fa2f765"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_storage_tin_a01_01.usd_light.png",
    "bytes": 64482,
    "sha256": "bd69fc170ee36ed680a5c0657fa068217f772f8b4d6277fe751fd7f7bfccbb06"
   },
   {
    "path": "container_storage_tin_a01.zip",
    "bytes": 293691,
    "sha256": "08808bf858d808d13256c5932cc46fa7852866eef70aabfade0428f074404067"
   }
  ],
  "urls": {
   "usd": "/files/assets/container_storage_tin_a01/simready_usd/sm_container_storage_tin_a01_01.usd",
   "zip": "/files/assets/container_storage_tin_a01/container_storage_tin_a01.zip",
   "thumb": "/files/assets/container_storage_tin_a01/simready_usd/.thumbs/256x256/sm_container_storage_tin_a01_01.usd.png",
   "thumb_light": "/files/assets/container_storage_tin_a01/simready_usd/.thumbs/256x256/sm_container_storage_tin_a01_01.usd_light.png",
   "metadata": "/files/assets/container_storage_tin_a01/metadata.json",
   "license": "/files/assets/container_storage_tin_a01/LICENSE.txt",
   "glb": "/files/assets/container_storage_tin_a01/preview/container_storage_tin_a01.glb"
  },
  "media": {
   "glb": "/files/assets/container_storage_tin_a01/preview/container_storage_tin_a01.glb",
   "collision_glb": "/files/assets/container_storage_tin_a01/preview/container_storage_tin_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.095,
     -0.0,
     -0.07
    ],
    "max": [
     0.095,
     0.12002,
     0.07
    ]
   },
   "parts": [
    {
     "node": "base",
     "parent": null,
     "meshes": [
      "geom_6",
      "geom_7",
      "geom_8",
      "geom_9"
     ],
     "center": [
      -0.0005,
      0.04385,
      0.0
     ],
     "joint": null
    },
    {
     "node": "lid",
     "parent": "base",
     "meshes": [
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25",
      "geom_26",
      "geom_27",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34",
      "geom_35"
     ],
     "center": [
      0.0,
      0.10141,
      -0.0
     ],
     "joint": {
      "name": "lid",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       -0.0943,
       0.0878,
       0.0
      ],
      "range": [
       0.0,
       1.91986
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       -0.0943,
       0.0878,
       0.0
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.06001,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "container_supply_caddy_a01",
  "name": "Red plastic divided supply caddy",
  "description": "An empty polypropylene classroom supply caddy in scuffed red with three open compartments. It has an integrated rounded carry handle and no moving parts.",
  "category": "container",
  "subcategory": "supply_caddy",
  "variant": "a01",
  "semantic_label": "supply caddy",
  "wikidata_qcode": "Q117208304",
  "mechanism": "rigid",
  "dimensions_m": [
   0.245,
   0.1764,
   0.191
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.7086,
  "mass_source": "derived: plastic_pp 905 kg/m3 x 0.000783017 m3 (integrated mesh material volume minus 2 percent overlapping molded unions) = 0.7086 kg; density source: polypropylene homopolymer 0.900 to 0.910 g/cm3 (ISO 1183 values in resin datasheets); 905 taken.",
  "materials": [
   "plastic"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "91 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_container_supply_caddy_a01_01.usd",
    "bytes": 276880,
    "sha256": "57abbb74657f2d4903cbcd9e82a9f34f5cb91b7e062dbd044103917c2f8a4c68"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_supply_caddy_a01_01.usd.png",
    "bytes": 71199,
    "sha256": "fc1c46ad7a8dc88d1b542bb1e373a890f4f6a525bfb40481798fcfe2c4f0387b"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_supply_caddy_a01_01.usd_light.png",
    "bytes": 71462,
    "sha256": "3bc510fdbb624f8afbe843eedefd5cbb0ce51a0eb16c140654b5af1c05068ed4"
   },
   {
    "path": "simready_usd/textures/rim_red.png",
    "bytes": 2180634,
    "sha256": "75582015e8ce0b4779cea6cf8aa85b013e3bf5451ba62c789f688419768bae66"
   },
   {
    "path": "simready_usd/textures/scuffed_red.png",
    "bytes": 1882274,
    "sha256": "8de6b6f925d8795f57656f1d9bf764878dcded88025ea80a0c4773cf6065f0bb"
   },
   {
    "path": "container_supply_caddy_a01.zip",
    "bytes": 4284299,
    "sha256": "87fc45470099dd0bfd0aa4b2b2bd17c9a158c9ba9cc0e7e3e8266c16b37ff4cd"
   }
  ],
  "urls": {
   "usd": "/files/assets/container_supply_caddy_a01/simready_usd/sm_container_supply_caddy_a01_01.usd",
   "zip": "/files/assets/container_supply_caddy_a01/container_supply_caddy_a01.zip",
   "thumb": "/files/assets/container_supply_caddy_a01/simready_usd/.thumbs/256x256/sm_container_supply_caddy_a01_01.usd.png",
   "thumb_light": "/files/assets/container_supply_caddy_a01/simready_usd/.thumbs/256x256/sm_container_supply_caddy_a01_01.usd_light.png",
   "metadata": "/files/assets/container_supply_caddy_a01/metadata.json",
   "license": "/files/assets/container_supply_caddy_a01/LICENSE.txt",
   "glb": "/files/assets/container_supply_caddy_a01/preview/container_supply_caddy_a01.glb"
  },
  "media": {
   "glb": "/files/assets/container_supply_caddy_a01/preview/container_supply_caddy_a01.glb",
   "collision_glb": "/files/assets/container_supply_caddy_a01/preview/container_supply_caddy_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.1225,
     -0.0,
     -0.0882
    ],
    "max": [
     0.1225,
     0.19,
     0.0882
    ]
   },
   "parts": [
    {
     "node": "caddy",
     "parent": null,
     "meshes": [
      "geom_91",
      "geom_92",
      "geom_93",
      "geom_94",
      "geom_95",
      "geom_96",
      "geom_97",
      "geom_98",
      "geom_99"
     ],
     "center": [
      0.0,
      0.095,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.095,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "container_utility_bin_a01",
  "name": "Charcoal square plastic utility bin",
  "description": "A tall open-top square utility bin made of matte charcoal HDPE with rounded corners and slightly tapered walls. It has no lid or moving parts.",
  "category": "container",
  "subcategory": "utility_bin",
  "variant": "a01",
  "semantic_label": "utility bin",
  "wikidata_qcode": "Q111366670",
  "mechanism": "rigid",
  "dimensions_m": [
   0.242,
   0.242,
   0.278
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.9079,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 955 kg/m3 (HDPE 0.94-0.97 g/cm3 (amesweb.info Density of Plastics; Omnexus))",
  "materials": [
   "hdpe"
  ],
  "friction": {
   "static": 0.305,
   "dynamic": 0.305,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "234 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_container_utility_bin_a01_01.usd",
    "bytes": 284846,
    "sha256": "3da4cc8bce52d8be680847b52ecb4fe919b0558c5465b8f4596551012bd11722"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_utility_bin_a01_01.usd.png",
    "bytes": 59063,
    "sha256": "fbfcfb3c01b7a9f0fe7a9398ef2b4665ee0676c2eb85945dbef7b24189f6329c"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_utility_bin_a01_01.usd_light.png",
    "bytes": 60502,
    "sha256": "3ed8ed8533b6ed02e6bd7c51245d601deb03a777158b331c23681297047ccd0c"
   },
   {
    "path": "container_utility_bin_a01.zip",
    "bytes": 206218,
    "sha256": "7fe316a4af482f9cf087bfbb05a24ad24210cadaa8809ca5c5df5c9b1eabf70b"
   }
  ],
  "urls": {
   "usd": "/files/assets/container_utility_bin_a01/simready_usd/sm_container_utility_bin_a01_01.usd",
   "zip": "/files/assets/container_utility_bin_a01/container_utility_bin_a01.zip",
   "thumb": "/files/assets/container_utility_bin_a01/simready_usd/.thumbs/256x256/sm_container_utility_bin_a01_01.usd.png",
   "thumb_light": "/files/assets/container_utility_bin_a01/simready_usd/.thumbs/256x256/sm_container_utility_bin_a01_01.usd_light.png",
   "metadata": "/files/assets/container_utility_bin_a01/metadata.json",
   "license": "/files/assets/container_utility_bin_a01/LICENSE.txt",
   "glb": "/files/assets/container_utility_bin_a01/preview/container_utility_bin_a01.glb"
  },
  "media": {
   "glb": "/files/assets/container_utility_bin_a01/preview/container_utility_bin_a01.glb",
   "collision_glb": "/files/assets/container_utility_bin_a01/preview/container_utility_bin_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.121,
     0.0,
     -0.121
    ],
    "max": [
     0.121,
     0.278,
     0.121
    ]
   },
   "parts": [
    {
     "node": "bin",
     "parent": null,
     "meshes": [
      "geom_234"
     ],
     "center": [
      -0.0,
      0.139,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.139,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "container_waste_bin_c01",
  "name": "Charcoal plastic oval waste basket",
  "description": "An open-top waste basket made of rigid polypropylene, with an oval mouth and slightly tapered sides. It is empty, has no liner and has no moving parts.",
  "category": "container",
  "subcategory": "waste_bin",
  "variant": "c01",
  "semantic_label": "wastebasket",
  "wikidata_qcode": "Q216530",
  "mechanism": "rigid",
  "dimensions_m": [
   0.294,
   0.317,
   0.36
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 1.1587,
  "mass_source": "derived: plastic_pp 905 kg/m3 x 0.0012803 m3 (integral oval shell volume from exact piecewise conical meridian) = 1.159 kg; density source: polypropylene homopolymer 0.900 to 0.910 g/cm3 (ISO 1183 values in resin datasheets); 905 taken.",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "167 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [7])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_container_waste_bin_c01_01.usd",
    "bytes": 499620,
    "sha256": "3b5b072b49dd4d511589bec9361a494ffaba6c8575f7c395b5589c99086fba8a"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_waste_bin_c01_01.usd.png",
    "bytes": 58561,
    "sha256": "dd97143d85c8a06f46189709be776072752ffad4b870b0207da7009d718df491"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_container_waste_bin_c01_01.usd_light.png",
    "bytes": 58678,
    "sha256": "ecbae91e7dfe07cf6fb629d1c8ec19306401f18a63c1e72162d35bfd6cdae3e2"
   },
   {
    "path": "simready_usd/textures/charcoal.png",
    "bytes": 6264941,
    "sha256": "d5f8d8945495a783c6266fcd7786ca0f283c489434f1a10794e7e4f7193e655e"
   },
   {
    "path": "container_waste_bin_c01.zip",
    "bytes": 6477364,
    "sha256": "1f7aacf36d9a74f067d606a0c04eb8c3e8b08e292cd630b887200686551dec96"
   }
  ],
  "urls": {
   "usd": "/files/assets/container_waste_bin_c01/simready_usd/sm_container_waste_bin_c01_01.usd",
   "zip": "/files/assets/container_waste_bin_c01/container_waste_bin_c01.zip",
   "thumb": "/files/assets/container_waste_bin_c01/simready_usd/.thumbs/256x256/sm_container_waste_bin_c01_01.usd.png",
   "thumb_light": "/files/assets/container_waste_bin_c01/simready_usd/.thumbs/256x256/sm_container_waste_bin_c01_01.usd_light.png",
   "metadata": "/files/assets/container_waste_bin_c01/metadata.json",
   "license": "/files/assets/container_waste_bin_c01/LICENSE.txt"
  }
 },
 {
  "id": "decor_artificial_plant_a01",
  "name": "Artificial succulent in terracotta-colour planter",
  "description": "A small artificial succulent with thick green plastic leaves fixed into a solid matte terracotta-coloured planter. It is a single rigid decorative piece.",
  "category": "decor",
  "subcategory": "artificial_plant",
  "variant": "a01",
  "semantic_label": "artificial succulent planter",
  "wikidata_qcode": "Q106813216",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1635,
   0.1635,
   0.2521
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 1.2328,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 1050 kg/m3 (MatWeb overview of ABS, 1.04-1.06 g/cm3 (as in R/simready/densities.json plastic_abs))",
  "materials": [
   "plastic_abs"
  ],
  "friction": {
   "static": 0.35,
   "dynamic": 0.35,
   "source": "measured: As R/simready/densities.json plastic_abs (nylon on steel 0.4 and polyethylene on steel 0.2 bracket it, Engineering ToolBox); assumed. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "263 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [7, 6, 7])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_decor_artificial_plant_a01_01.usd",
    "bytes": 31197070,
    "sha256": "cf0d2b7ee97a1dd480cbcd0285a7299316b9ca22851357c89865b57a6001f6f6"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_decor_artificial_plant_a01_01.usd.png",
    "bytes": 64280,
    "sha256": "d955250cdf250a7be35d61aae7dfad01d3b6b22653568272c6ab48e740ba6c1f"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_decor_artificial_plant_a01_01.usd_light.png",
    "bytes": 64245,
    "sha256": "10e6f73b0290138841bddfe5c243f2fdf888b5106c30dc486e901bd1e280094b"
   },
   {
    "path": "decor_artificial_plant_a01.zip",
    "bytes": 11933809,
    "sha256": "d68c94e03b4deb431c1e2c581588d301c7dd853b7cf45746ac78d5f587a229db"
   }
  ],
  "urls": {
   "usd": "/files/assets/decor_artificial_plant_a01/simready_usd/sm_decor_artificial_plant_a01_01.usd",
   "zip": "/files/assets/decor_artificial_plant_a01/decor_artificial_plant_a01.zip",
   "thumb": "/files/assets/decor_artificial_plant_a01/simready_usd/.thumbs/256x256/sm_decor_artificial_plant_a01_01.usd.png",
   "thumb_light": "/files/assets/decor_artificial_plant_a01/simready_usd/.thumbs/256x256/sm_decor_artificial_plant_a01_01.usd_light.png",
   "metadata": "/files/assets/decor_artificial_plant_a01/metadata.json",
   "license": "/files/assets/decor_artificial_plant_a01/LICENSE.txt",
   "glb": "/files/assets/decor_artificial_plant_a01/preview/decor_artificial_plant_a01.glb"
  },
  "media": {
   "glb": "/files/assets/decor_artificial_plant_a01/preview/decor_artificial_plant_a01.glb",
   "collision_glb": "/files/assets/decor_artificial_plant_a01/preview/decor_artificial_plant_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.08,
     -0.0,
     -0.08
    ],
    "max": [
     0.08,
     0.25,
     0.08
    ]
   },
   "parts": [
    {
     "node": "fixed_planter",
     "parent": null,
     "meshes": [
      "geom_263",
      "geom_264",
      "geom_265"
     ],
     "center": [
      0.0,
      0.125,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.125,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "electronics_phone_charger_a01",
  "name": "White USB-A and USB-C wall charger",
  "description": "A white plastic wall charger with one USB-A port and one USB-C port, and stainless steel plug pins. It has no cable.",
  "category": "electronics",
  "subcategory": "phone_charger",
  "variant": "a01",
  "semantic_label": "phone charger",
  "wikidata_qcode": "Q64684632",
  "mechanism": "rigid",
  "dimensions_m": [
   0.045,
   0.0361,
   0.0554
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.058,
  "mass_source": "declared: 58 g compact 20 W dual-port charger; 12 g molded ABS housing, 3 g blades, 43 g encapsulated PCB transformer and connectors",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "8 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_electronics_phone_charger_a01_01.usd",
    "bytes": 137048,
    "sha256": "c46769c1d3f98d16cc81aa72ee45e403a0821a795519282bdce6d4c28e519395"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_electronics_phone_charger_a01_01.usd.png",
    "bytes": 62296,
    "sha256": "0b911e11674aeb2b9aee1bc65d45ac6d58056bd62c2b0778b74127758cc97e7a"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_electronics_phone_charger_a01_01.usd_light.png",
    "bytes": 62277,
    "sha256": "7178dce108fdc05c4e6caa976248a25fbd79b6dc6f84d5afd392a5fb0339a5b6"
   },
   {
    "path": "electronics_phone_charger_a01.zip",
    "bytes": 159776,
    "sha256": "8a927c5b87557e1465a2a44f1d33b298530f0ee0439f0394590f3eff5ebba2b4"
   }
  ],
  "urls": {
   "usd": "/files/assets/electronics_phone_charger_a01/simready_usd/sm_electronics_phone_charger_a01_01.usd",
   "zip": "/files/assets/electronics_phone_charger_a01/electronics_phone_charger_a01.zip",
   "thumb": "/files/assets/electronics_phone_charger_a01/simready_usd/.thumbs/256x256/sm_electronics_phone_charger_a01_01.usd.png",
   "thumb_light": "/files/assets/electronics_phone_charger_a01/simready_usd/.thumbs/256x256/sm_electronics_phone_charger_a01_01.usd_light.png",
   "metadata": "/files/assets/electronics_phone_charger_a01/metadata.json",
   "license": "/files/assets/electronics_phone_charger_a01/LICENSE.txt",
   "glb": "/files/assets/electronics_phone_charger_a01/preview/electronics_phone_charger_a01.glb"
  },
  "media": {
   "glb": "/files/assets/electronics_phone_charger_a01/preview/electronics_phone_charger_a01.glb",
   "collision_glb": "/files/assets/electronics_phone_charger_a01/preview/electronics_phone_charger_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0225,
     -0.0,
     -0.0175
    ],
    "max": [
     0.0225,
     0.055,
     0.0175
    ]
   },
   "parts": [
    {
     "node": "adapter",
     "parent": null,
     "meshes": [
      "geom_8",
      "geom_9",
      "geom_10",
      "geom_11",
      "geom_12",
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17",
      "geom_18",
      "geom_19",
      "geom_20",
      "geom_22",
      "geom_24",
      "geom_26",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34"
     ],
     "center": [
      -0.0,
      0.0275,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.0275,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "electronics_radio_a01",
  "name": "Compact plastic radio, cream",
  "description": "A small tabletop radio with a moulded plastic body and a perforated speaker front. It has rotary control knobs that turn.",
  "category": "electronics",
  "subcategory": "radio",
  "variant": "a01",
  "semantic_label": "radio",
  "wikidata_qcode": "Q159391",
  "mechanism": "articulated",
  "dimensions_m": [
   0.2418,
   0.1012,
   0.1613
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.528,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 1050 kg/m3 (MatWeb overview of ABS, 1.04-1.06 g/cm3 (as in R/simready/densities.json plastic_abs))",
  "materials": [
   "plastic_abs"
  ],
  "friction": {
   "static": 0.35,
   "dynamic": 0.35,
   "source": "measured: As R/simready/densities.json plastic_abs (nylon on steel 0.4 and polyethylene on steel 0.2 bracket it, Engineering ToolBox); assumed. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "knob_0",
    "type": "revolute",
    "range": [
     0.0,
     4.71239
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "knob_1",
    "type": "revolute",
    "range": [
     0.0,
     4.71239
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "14 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [7, 7, 7])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_electronics_radio_a01_01.usd",
    "bytes": 6537360,
    "sha256": "716ec426f0368a05d6287a6d7e66957d6f761a84db878bff746f0e462732f79b"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_electronics_radio_a01_01.usd.png",
    "bytes": 72797,
    "sha256": "abce4afd8b10ca13b09b57eb072da0d1b998727c48c2cdbf5a605f9cd3945a61"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_electronics_radio_a01_01.usd_light.png",
    "bytes": 75290,
    "sha256": "af9550c65a7e733c9c78edf8da914653a2e68d2561a1713d6094da7fdba5e73e"
   },
   {
    "path": "simready_usd/textures/cream_abs_microtexture.png",
    "bytes": 50605,
    "sha256": "810618c5c7094b719c3cf6176789c51f65f5c7c8e60052ec1965929af70d09b1"
   },
   {
    "path": "electronics_radio_a01.zip",
    "bytes": 1103833,
    "sha256": "528d029db8e2a08c4e48fbbab89b065b77c361455cd7f4f9d87d6a5fe332c498"
   }
  ],
  "urls": {
   "usd": "/files/assets/electronics_radio_a01/simready_usd/sm_electronics_radio_a01_01.usd",
   "zip": "/files/assets/electronics_radio_a01/electronics_radio_a01.zip",
   "thumb": "/files/assets/electronics_radio_a01/simready_usd/.thumbs/256x256/sm_electronics_radio_a01_01.usd.png",
   "thumb_light": "/files/assets/electronics_radio_a01/simready_usd/.thumbs/256x256/sm_electronics_radio_a01_01.usd_light.png",
   "metadata": "/files/assets/electronics_radio_a01/metadata.json",
   "license": "/files/assets/electronics_radio_a01/LICENSE.txt",
   "glb": "/files/assets/electronics_radio_a01/preview/electronics_radio_a01.glb"
  },
  "media": {
   "glb": "/files/assets/electronics_radio_a01/preview/electronics_radio_a01.glb",
   "collision_glb": "/files/assets/electronics_radio_a01/preview/electronics_radio_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.12,
     -0.0,
     -0.05
    ],
    "max": [
     0.12,
     0.16,
     0.05
    ]
   },
   "parts": [
    {
     "node": "housing",
     "parent": null,
     "meshes": [
      "geom_12",
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17",
      "geom_18",
      "geom_19",
      "geom_20",
      "geom_21",
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25",
      "geom_26",
      "geom_27"
     ],
     "center": [
      -0.0,
      0.08,
      -0.00692
     ],
     "joint": null
    },
    {
     "node": "knob_0",
     "parent": "housing",
     "meshes": [
      "geom_29",
      "geom_30",
      "geom_31"
     ],
     "center": [
      0.095,
      0.053,
      0.0416
     ],
     "joint": {
      "name": "knob_0",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       0.095,
       0.053,
       0.040119
      ],
      "range": [
       0.0,
       4.71239
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       0.095,
       0.053,
       0.039526
      ]
     }
    },
    {
     "node": "knob_1",
     "parent": "housing",
     "meshes": [
      "geom_33",
      "geom_34",
      "geom_35"
     ],
     "center": [
      0.095,
      0.113,
      0.0416
     ],
     "joint": {
      "name": "knob_1",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       0.095,
       0.113,
       0.040119
      ],
      "range": [
       0.0,
       4.71239
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       0.095,
       0.113,
       0.039526
      ]
     }
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.08,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_bakers_rack_a01",
  "name": "Low brushed steel baker's rack",
  "description": "A low baker's rack made of brushed steel with a solid top, two open wire shelves and four square legs. It has no moving parts.",
  "category": "furniture",
  "subcategory": "bakers_rack",
  "variant": "a01",
  "semantic_label": "baker's rack",
  "wikidata_qcode": "Q4849085",
  "mechanism": "rigid",
  "dimensions_m": [
   0.88,
   0.44,
   0.9
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 30.1132,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 7900 kg/m3 (AK Steel 304/304L data sheet 7.9 g/cm3 (as in R/simready/densities.json))",
  "materials": [
   "steel_stainless"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "measured: As R/simready/densities.json steel_stainless. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "119 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [7, 6, 7])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_bakers_rack_a01_01.usd",
    "bytes": 646646,
    "sha256": "f38d58eaacba8a343b349e8059687361f1c0f4fc9857bdec4f3b290230f362b5"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_bakers_rack_a01_01.usd.png",
    "bytes": 73205,
    "sha256": "a8472714e4b11cacd66cd8374a581d704248359ec62917e8e1189b7886646119"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_bakers_rack_a01_01.usd_light.png",
    "bytes": 71674,
    "sha256": "bf7befcd12d832709e2227894d36074d8c5caabfaada955bcde9c8cc5888c191"
   },
   {
    "path": "furniture_bakers_rack_a01.zip",
    "bytes": 255420,
    "sha256": "cc5e6d87e6196643347d33303f199251abc3302a2f2a6b5593d9af2936bc81e1"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_bakers_rack_a01/simready_usd/sm_furniture_bakers_rack_a01_01.usd",
   "zip": "/files/assets/furniture_bakers_rack_a01/furniture_bakers_rack_a01.zip",
   "thumb": "/files/assets/furniture_bakers_rack_a01/simready_usd/.thumbs/256x256/sm_furniture_bakers_rack_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_bakers_rack_a01/simready_usd/.thumbs/256x256/sm_furniture_bakers_rack_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_bakers_rack_a01/metadata.json",
   "license": "/files/assets/furniture_bakers_rack_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_bakers_rack_a01/preview/furniture_bakers_rack_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_bakers_rack_a01/preview/furniture_bakers_rack_a01.glb",
   "collision_glb": "/files/assets/furniture_bakers_rack_a01/preview/furniture_bakers_rack_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.44,
     -0.0,
     -0.22
    ],
    "max": [
     0.44,
     0.9,
     0.22
    ]
   },
   "parts": [
    {
     "node": "rack",
     "parent": null,
     "meshes": [
      "geom_119",
      "geom_120",
      "geom_121",
      "geom_122",
      "geom_123",
      "geom_124",
      "geom_125",
      "geom_126",
      "geom_127",
      "geom_128",
      "geom_129",
      "geom_130",
      "geom_131",
      "geom_132",
      "geom_133",
      "geom_134",
      "geom_135",
      "geom_136",
      "geom_137",
      "geom_138",
      "geom_139",
      "geom_140",
      "geom_141",
      "geom_142",
      "geom_143",
      "geom_144",
      "geom_145",
      "geom_146",
      "geom_147",
      "geom_148",
      "geom_149",
      "geom_150",
      "geom_151",
      "geom_152",
      "geom_153",
      "geom_154",
      "geom_155",
      "geom_156",
      "geom_157",
      "geom_158",
      "geom_159",
      "geom_160",
      "geom_161",
      "geom_162",
      "geom_163",
      "geom_164",
      "geom_165",
      "geom_166",
      "geom_167",
      "geom_168",
      "geom_169",
      "geom_170",
      "geom_171",
      "geom_172",
      "geom_173",
      "geom_174",
      "geom_175",
      "geom_176",
      "geom_177",
      "geom_178",
      "geom_179",
      "geom_180",
      "geom_181",
      "geom_182",
      "geom_183",
      "geom_184",
      "geom_185",
      "geom_186",
      "geom_187",
      "geom_188",
      "geom_189",
      "geom_190",
      "geom_191",
      "geom_192",
      "geom_193",
      "geom_194",
      "geom_195",
      "geom_196",
      "geom_197",
      "geom_198",
      "geom_199",
      "geom_200",
      "geom_201",
      "geom_202",
      "geom_203",
      "geom_204",
      "geom_205",
      "geom_206",
      "geom_207",
      "geom_208",
      "geom_209",
      "geom_210",
      "geom_211",
      "geom_212",
      "geom_213",
      "geom_214",
      "geom_215",
      "geom_216",
      "geom_217",
      "geom_218",
      "geom_219",
      "geom_220",
      "geom_221",
      "geom_222",
      "geom_223",
      "geom_224",
      "geom_225",
      "geom_226",
      "geom_227",
      "geom_228",
      "geom_229",
      "geom_230",
      "geom_231",
      "geom_232",
      "geom_233",
      "geom_234",
      "geom_235",
      "geom_236",
      "geom_237"
     ],
     "center": [
      0.0,
      0.45,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.45,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_corner_cupboard_a01",
  "name": "Sage laminate corner cupboard",
  "description": "A sage-coloured laminated particleboard corner cupboard with a pentagonal footprint and a flat top. The front doors are hinged and open.",
  "category": "furniture",
  "subcategory": "corner_cupboard",
  "variant": "a01",
  "semantic_label": "corner cupboard",
  "wikidata_qcode": "Q10532626",
  "mechanism": "articulated",
  "dimensions_m": [
   0.8622,
   0.5502,
   0.88
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 35.2074,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 700 kg/m3 (USDA Forest Service Wood Handbook FPL-GTR-190 ch. 11, particleboard 590-800 kg/m3 (as in R/simready/densities.json))",
  "materials": [
   "particleboard_laminate",
   "wood"
  ],
  "friction": {
   "static": 0.35,
   "dynamic": 0.35,
   "source": "measured: As R/simready/densities.json particleboard_laminate. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "door_left",
    "type": "revolute",
    "range": [
     0.0,
     1.91986
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "door_right",
    "type": "revolute",
    "range": [
     0.0,
     1.91986
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "36 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [7, 6, 7])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_corner_cupboard_a01_01.usd",
    "bytes": 2449431,
    "sha256": "c234149da0c5a97d030ee121d570014ec45006e75bb5bca761d1179b327dc802"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_corner_cupboard_a01_01.usd.png",
    "bytes": 60636,
    "sha256": "ea0f06ce4b9bfca15f33be42a70950e240fd413fb2dd00409325ef9decdb0758"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_corner_cupboard_a01_01.usd_light.png",
    "bytes": 61975,
    "sha256": "b31342fa9017e46cb64c6c30b34dd78e00c0db116f9993ac8b74106d33ff0ad4"
   },
   {
    "path": "simready_usd/textures/sage_laminate_microfinish.png",
    "bytes": 336293,
    "sha256": "bb520eda2d5650c1ca78d3ad01c014b87d324cf753562a3c4f652191d28ba955"
   },
   {
    "path": "furniture_corner_cupboard_a01.zip",
    "bytes": 714222,
    "sha256": "a1eafda14220e231f2b9257e3b3f4a57fec7c213736e2ae46e30f290d8b76611"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_corner_cupboard_a01/simready_usd/sm_furniture_corner_cupboard_a01_01.usd",
   "zip": "/files/assets/furniture_corner_cupboard_a01/furniture_corner_cupboard_a01.zip",
   "thumb": "/files/assets/furniture_corner_cupboard_a01/simready_usd/.thumbs/256x256/sm_furniture_corner_cupboard_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_corner_cupboard_a01/simready_usd/.thumbs/256x256/sm_furniture_corner_cupboard_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_corner_cupboard_a01/metadata.json",
   "license": "/files/assets/furniture_corner_cupboard_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_corner_cupboard_a01/preview/furniture_corner_cupboard_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_corner_cupboard_a01/preview/furniture_corner_cupboard_a01.glb",
   "collision_glb": "/files/assets/furniture_corner_cupboard_a01/preview/furniture_corner_cupboard_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.43,
     -0.0,
     -0.275
    ],
    "max": [
     0.43,
     0.88,
     0.275
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_0",
      "geom_1",
      "geom_2",
      "geom_3",
      "geom_4",
      "geom_5",
      "geom_6",
      "geom_7",
      "geom_8",
      "geom_9",
      "geom_10",
      "geom_11",
      "geom_12",
      "geom_13"
     ],
     "center": [
      0.0,
      0.44,
      -0.03
     ],
     "joint": null
    },
    {
     "node": "door_left",
     "parent": "carcass",
     "meshes": [
      "geom_38",
      "geom_39",
      "geom_40",
      "geom_41",
      "geom_42",
      "geom_43",
      "geom_44",
      "geom_45",
      "geom_46",
      "geom_47",
      "geom_48",
      "geom_49"
     ],
     "center": [
      -0.2055,
      0.49,
      0.244
     ],
     "joint": {
      "name": "door_left",
      "type": "revolute",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       -0.41,
       0.49,
       0.233
      ],
      "range": [
       0.0,
       1.91986
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       -0.41,
       0.49,
       0.233
      ]
     }
    },
    {
     "node": "door_right",
     "parent": "carcass",
     "meshes": [
      "geom_62",
      "geom_63",
      "geom_64",
      "geom_65",
      "geom_66",
      "geom_67",
      "geom_68",
      "geom_69",
      "geom_70",
      "geom_71",
      "geom_72",
      "geom_73"
     ],
     "center": [
      0.2055,
      0.49,
      0.244
     ],
     "joint": {
      "name": "door_right",
      "type": "revolute",
      "axis": [
       0.0,
       1.0,
       0.0
      ],
      "origin": [
       0.41,
       0.49,
       0.233
      ],
      "range": [
       0.0,
       1.91986
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       1.0,
       0.0
      ],
      "origin_parent": [
       0.41,
       0.49,
       0.233
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.44,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_cubby_console_a01",
  "name": "Open cubby console, warm grey",
  "description": "A low console made of laminated particleboard with a flat top and a recessed plinth. It has four open square storage cubbies and no moving parts.",
  "category": "furniture",
  "subcategory": "cubby_console",
  "variant": "a01",
  "semantic_label": "cubby console",
  "wikidata_qcode": "Q7887380",
  "mechanism": "rigid",
  "dimensions_m": [
   0.86,
   0.3916,
   0.9048
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 51.6431,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 700 kg/m3 (USDA Forest Service Wood Handbook FPL-GTR-190 ch. 11, particleboard 590-800 kg/m3 (as in R/simready/densities.json))",
  "materials": [
   "particleboard_laminate",
   "wood"
  ],
  "friction": {
   "static": 0.35,
   "dynamic": 0.35,
   "source": "measured: As R/simready/densities.json particleboard_laminate. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "9 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [9, 7, 9])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_cubby_console_a01_01.usd",
    "bytes": 111124,
    "sha256": "a6b0e61bca50dfa98e53b1220ecc6f75e375ca689cbaab958bedc114746ad4d1"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_cubby_console_a01_01.usd.png",
    "bytes": 61934,
    "sha256": "41e462f34944c3b75c1882ccf708ce17731abeae69e8484bac0c03401b4bebe4"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_cubby_console_a01_01.usd_light.png",
    "bytes": 63291,
    "sha256": "d37dcbf1027da030b752a37ddcd344182a17f699a0db291c57588204fb32a2c7"
   },
   {
    "path": "simready_usd/textures/laminate_albedo.png",
    "bytes": 168029,
    "sha256": "2e6979c4fdfd6fc0c16ce7a9c6339b90aa7d8ade8957ca6a3c9910219cb5a995"
   },
   {
    "path": "furniture_cubby_console_a01.zip",
    "bytes": 332870,
    "sha256": "33a20e60f2d490ab71e3d40bb54cbcff935fad7e0945a74a9a198e6e2611695e"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_cubby_console_a01/simready_usd/sm_furniture_cubby_console_a01_01.usd",
   "zip": "/files/assets/furniture_cubby_console_a01/furniture_cubby_console_a01.zip",
   "thumb": "/files/assets/furniture_cubby_console_a01/simready_usd/.thumbs/256x256/sm_furniture_cubby_console_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_cubby_console_a01/simready_usd/.thumbs/256x256/sm_furniture_cubby_console_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_cubby_console_a01/metadata.json",
   "license": "/files/assets/furniture_cubby_console_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_cubby_console_a01/preview/furniture_cubby_console_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_cubby_console_a01/preview/furniture_cubby_console_a01.glb",
   "collision_glb": "/files/assets/furniture_cubby_console_a01/preview/furniture_cubby_console_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.43,
     -0.0,
     -0.19
    ],
    "max": [
     0.43,
     0.9,
     0.19
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_9"
     ],
     "center": [
      -0.0,
      0.45,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.45,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_dining_chair_a01",
  "name": "Medium-brown slat-back wooden chair",
  "description": "A dining chair made of medium-brown hardwood with a solid seat and a narrow slatted back. It has no upholstery.",
  "category": "furniture",
  "subcategory": "dining_chair",
  "variant": "a01",
  "semantic_label": "dining chair",
  "wikidata_qcode": "Q124964396",
  "mechanism": "rigid",
  "dimensions_m": [
   0.4254,
   0.4594,
   0.8548
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 7.4369,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 650 kg/m3 (Engineering ToolBox, Densities of Wood Species (as in R/simready/densities.json wood_hardwood))",
  "materials": [
   "wood",
   "wood_hardwood"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "measured: As R/simready/densities.json wood_hardwood (wood on wood 0.25-0.5, Engineering ToolBox). (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "21 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [8, 6, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_dining_chair_a01_01.usd",
    "bytes": 756017,
    "sha256": "404eafceb9c1f5b9a9b6f0350b0479e1b2aae03a84c858192e838836d65344be"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_dining_chair_a01_01.usd.png",
    "bytes": 67141,
    "sha256": "7056b1e016b079289603f63daf312595269c23d32fc88fa841db9cad19f9b758"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_dining_chair_a01_01.usd_light.png",
    "bytes": 69037,
    "sha256": "789d75908fbb57d8fe07f86956596befb4f6116a8b259f0824d217f24f713cfc"
   },
   {
    "path": "simready_usd/textures/hardwood_basecolor.png",
    "bytes": 2219139,
    "sha256": "b4dada023db6bb0edfbf4ad4a048a5a541dfa9942e5210425f414dd0d3fc6b65"
   },
   {
    "path": "furniture_dining_chair_a01.zip",
    "bytes": 2597025,
    "sha256": "f1059d853012c35d16ceafee248ae06d8d4f4d434b47c952aebbc18d9e0ed3f3"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_dining_chair_a01/simready_usd/sm_furniture_dining_chair_a01_01.usd",
   "zip": "/files/assets/furniture_dining_chair_a01/furniture_dining_chair_a01.zip",
   "thumb": "/files/assets/furniture_dining_chair_a01/simready_usd/.thumbs/256x256/sm_furniture_dining_chair_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_dining_chair_a01/simready_usd/.thumbs/256x256/sm_furniture_dining_chair_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_dining_chair_a01/metadata.json",
   "license": "/files/assets/furniture_dining_chair_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_dining_chair_a01/preview/furniture_dining_chair_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_dining_chair_a01/preview/furniture_dining_chair_a01.glb",
   "collision_glb": "/files/assets/furniture_dining_chair_a01/preview/furniture_dining_chair_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.21,
     -0.0,
     -0.225
    ],
    "max": [
     0.21,
     0.85234,
     0.225
    ]
   },
   "parts": [
    {
     "node": "chair",
     "parent": null,
     "meshes": [
      "geom_21",
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25",
      "geom_26",
      "geom_27",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34",
      "geom_35",
      "geom_36",
      "geom_37",
      "geom_38",
      "geom_39",
      "geom_40",
      "geom_41"
     ],
     "center": [
      0.0,
      0.42617,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.42617,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_dish_cupboard_a01",
  "name": "Pale beech louvered dish cupboard",
  "description": "A freestanding dish cupboard made of pale beech wood with a flat top and empty shelves inside. The two louvered wooden doors are hinged and open.",
  "category": "furniture",
  "subcategory": "dish_cupboard",
  "variant": "a01",
  "semantic_label": "dish cupboard",
  "wikidata_qcode": "Q5662058",
  "mechanism": "articulated",
  "dimensions_m": [
   0.86,
   0.42,
   0.88
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 35.5357,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 650 kg/m3 (Engineering ToolBox, Densities of Wood Species (as in R/simready/densities.json wood_hardwood))",
  "materials": [
   "wood",
   "wood_hardwood"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "measured: As R/simready/densities.json wood_hardwood (wood on wood 0.25-0.5, Engineering ToolBox). (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "door_left",
    "type": "revolute",
    "range": [
     0.0,
     1.5708
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "door_right",
    "type": "revolute",
    "range": [
     0.0,
     1.5708
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "200 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [8, 6, 8])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed; build.py has a conditional import/bake of input/mesh_hy31.glb that did not run (file absent)."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_dish_cupboard_a01_01.usd",
    "bytes": 14461672,
    "sha256": "9874acbaa107d3defecc208316715429c936eda7b136ac3371e34523fc6e1935"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_dish_cupboard_a01_01.usd.png",
    "bytes": 79292,
    "sha256": "9558effe5a6cc540c246e3eb579cbb849ba24651aa37f8a622510b7f78e2c051"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_dish_cupboard_a01_01.usd_light.png",
    "bytes": 79817,
    "sha256": "05bdc698146f8ff0788d9eda7c6051bed25c8cb0ee9c4338c4ce6c25c303bea5"
   },
   {
    "path": "simready_usd/textures/beech_albedo.png",
    "bytes": 384813,
    "sha256": "165cedb84e8ef6ab50afe8294b9364edf64364292fd28cbc01b253f5e502fa82"
   },
   {
    "path": "furniture_dish_cupboard_a01.zip",
    "bytes": 3430676,
    "sha256": "480d743c8fb4bc0a073a940041787857abce10ba3983d3e75f197944ccd0447c"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_dish_cupboard_a01/simready_usd/sm_furniture_dish_cupboard_a01_01.usd",
   "zip": "/files/assets/furniture_dish_cupboard_a01/furniture_dish_cupboard_a01.zip",
   "thumb": "/files/assets/furniture_dish_cupboard_a01/simready_usd/.thumbs/256x256/sm_furniture_dish_cupboard_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_dish_cupboard_a01/simready_usd/.thumbs/256x256/sm_furniture_dish_cupboard_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_dish_cupboard_a01/metadata.json",
   "license": "/files/assets/furniture_dish_cupboard_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_dish_cupboard_a01/preview/furniture_dish_cupboard_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_dish_cupboard_a01/preview/furniture_dish_cupboard_a01.glb",
   "collision_glb": "/files/assets/furniture_dish_cupboard_a01/preview/furniture_dish_cupboard_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.43,
     0.0,
     -0.21
    ],
    "max": [
     0.43,
     0.88,
     0.21
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_12",
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17",
      "geom_18",
      "geom_19",
      "geom_20",
      "geom_21",
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25",
      "geom_26",
      "geom_27",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31"
     ],
     "center": [
      0.0,
      0.44,
      -0.015
     ],
     "joint": null
    },
    {
     "node": "door_left",
     "parent": "carcass",
     "meshes": [
      "geom_126",
      "geom_127",
      "geom_128",
      "geom_129",
      "geom_130",
      "geom_131"
     ],
     "center": [
      -0.2,
      0.489,
      0.18324
     ],
     "joint": {
      "name": "door_left",
      "type": "revolute",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       -0.393,
       0.477,
       0.161
      ],
      "range": [
       0.0,
       1.5708
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       -0.393,
       0.477,
       0.161
      ]
     }
    },
    {
     "node": "door_right",
     "parent": "carcass",
     "meshes": [
      "geom_226",
      "geom_227",
      "geom_228",
      "geom_229",
      "geom_230",
      "geom_231"
     ],
     "center": [
      0.2,
      0.489,
      0.18324
     ],
     "joint": {
      "name": "door_right",
      "type": "revolute",
      "axis": [
       0.0,
       1.0,
       0.0
      ],
      "origin": [
       0.393,
       0.477,
       0.161
      ],
      "range": [
       0.0,
       1.5708
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       1.0,
       0.0
      ],
      "origin_parent": [
       0.393,
       0.477,
       0.161
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.44,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_drawer_chest_a01",
  "name": "Cream kitchen drawer chest, four drawers",
  "description": "A kitchen drawer chest of cream laminated particleboard with a flat charcoal top, a recessed plinth and four wide drawers with solid pulls. The drawers slide open.",
  "category": "furniture",
  "subcategory": "drawer_chest",
  "variant": "a01",
  "semantic_label": "kitchen drawer chest",
  "wikidata_qcode": "Q14169227",
  "mechanism": "articulated",
  "dimensions_m": [
   0.84,
   0.4406,
   0.88
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 47.1052,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 700 kg/m3 (USDA Forest Service Wood Handbook FPL-GTR-190 ch. 11, particleboard 590-800 kg/m3 (as in R/simready/densities.json))",
  "materials": [
   "particleboard_laminate",
   "wood"
  ],
  "friction": {
   "static": 0.35,
   "dynamic": 0.35,
   "source": "measured: As R/simready/densities.json particleboard_laminate. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "drawer_1",
    "type": "prismatic",
    "range": [
     0.0,
     0.29
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_2",
    "type": "prismatic",
    "range": [
     0.0,
     0.29
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_3",
    "type": "prismatic",
    "range": [
     0.0,
     0.29
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_4",
    "type": "prismatic",
    "range": [
     0.0,
     0.29
    ],
    "continuous": false,
    "units": "m"
   }
  ],
  "collision": "339 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_drawer_chest_a01_01.usd",
    "bytes": 5167055,
    "sha256": "8612810f06699221d21fe1c629258a76f1e588fb8163db342c60f62f756b6b05"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_drawer_chest_a01_01.usd.png",
    "bytes": 64766,
    "sha256": "fb519b1afb5e9b7bc32f7ea2143b24a6f2b3f6f1187f63c18b5b3d523d278d90"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_drawer_chest_a01_01.usd_light.png",
    "bytes": 66591,
    "sha256": "db3baaa4ac0988a131142237624a6054b56ea28f2f20c8fefcd9fe6adb700064"
   },
   {
    "path": "simready_usd/textures/charcoal_laminate_basecolor.png",
    "bytes": 12144,
    "sha256": "72f9fcf99ce2ff04ea58d70704ebca3601a5cef3cb60721d5a5aed654a3d8e3f"
   },
   {
    "path": "simready_usd/textures/cream_laminate_basecolor.png",
    "bytes": 62482,
    "sha256": "d58a853cab34e544f3e1fb3fcf5a582130781fe41e2f7e4554acb5b32b5182e1"
   },
   {
    "path": "simready_usd/textures/interior_laminate_basecolor.png",
    "bytes": 60795,
    "sha256": "b3d1dc95b0d4b005bdb67f7e34957263eb2d301b1630359514a19d9d31fdd28c"
   },
   {
    "path": "furniture_drawer_chest_a01.zip",
    "bytes": 922363,
    "sha256": "9f0ebd8f5e8e9c9cdec985b0ab15a62426f64c30256446905a5578a2f3813592"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_drawer_chest_a01/simready_usd/sm_furniture_drawer_chest_a01_01.usd",
   "zip": "/files/assets/furniture_drawer_chest_a01/furniture_drawer_chest_a01.zip",
   "thumb": "/files/assets/furniture_drawer_chest_a01/simready_usd/.thumbs/256x256/sm_furniture_drawer_chest_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_drawer_chest_a01/simready_usd/.thumbs/256x256/sm_furniture_drawer_chest_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_drawer_chest_a01/metadata.json",
   "license": "/files/assets/furniture_drawer_chest_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_drawer_chest_a01/preview/furniture_drawer_chest_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_drawer_chest_a01/preview/furniture_drawer_chest_a01.glb",
   "collision_glb": "/files/assets/furniture_drawer_chest_a01/preview/furniture_drawer_chest_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.42,
     -0.0,
     -0.22
    ],
    "max": [
     0.42,
     0.88,
     0.22
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_19",
      "geom_20",
      "geom_21",
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25",
      "geom_26",
      "geom_27",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34",
      "geom_35",
      "geom_36",
      "geom_37"
     ],
     "center": [
      0.0,
      0.44,
      -0.012
     ],
     "joint": null
    },
    {
     "node": "drawer_1",
     "parent": "carcass",
     "meshes": [
      "geom_118",
      "geom_119",
      "geom_120",
      "geom_121",
      "geom_122",
      "geom_123",
      "geom_124"
     ],
     "center": [
      0.0,
      0.198,
      0.017
     ],
     "joint": {
      "name": "drawer_1",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       0.0,
       0.198,
       0.0
      ],
      "range": [
       0.0,
       0.29
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       0.0,
       0.198,
       0.0
      ]
     }
    },
    {
     "node": "drawer_2",
     "parent": "carcass",
     "meshes": [
      "geom_205",
      "geom_206",
      "geom_207",
      "geom_208",
      "geom_209",
      "geom_210",
      "geom_211"
     ],
     "center": [
      -0.0,
      0.382,
      0.017
     ],
     "joint": {
      "name": "drawer_2",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       0.0,
       0.382,
       0.0
      ],
      "range": [
       0.0,
       0.29
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       0.0,
       0.382,
       0.0
      ]
     }
    },
    {
     "node": "drawer_3",
     "parent": "carcass",
     "meshes": [
      "geom_292",
      "geom_293",
      "geom_294",
      "geom_295",
      "geom_296",
      "geom_297",
      "geom_298"
     ],
     "center": [
      0.0,
      0.566,
      0.017
     ],
     "joint": {
      "name": "drawer_3",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       0.0,
       0.566,
       0.0
      ],
      "range": [
       0.0,
       0.29
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       0.0,
       0.566,
       0.0
      ]
     }
    },
    {
     "node": "drawer_4",
     "parent": "carcass",
     "meshes": [
      "geom_379",
      "geom_380",
      "geom_381",
      "geom_382",
      "geom_383",
      "geom_384",
      "geom_385"
     ],
     "center": [
      0.0,
      0.75,
      0.017
     ],
     "joint": {
      "name": "drawer_4",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       0.0,
       0.75,
       0.0
      ],
      "range": [
       0.0,
       0.29
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       0.0,
       0.75,
       0.0
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.44,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_dresser_a01",
  "name": "Six-drawer walnut dresser",
  "description": "A free-standing bedroom dresser made of walnut wood with six drawers. The drawers slide in and out.",
  "category": "furniture",
  "subcategory": "dresser",
  "variant": "a01",
  "semantic_label": "dresser",
  "wikidata_qcode": "Q14169227",
  "mechanism": "articulated",
  "dimensions_m": [
   1.45,
   0.4502,
   0.8
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 58.1936,
  "mass_source": "derived: cabinet_particleboard_shell 700 kg/m3 x 0.0408799 m3 (carcass collision volume) = 28.62 kg; density source: Frameless kitchen cabinet carcasses are 18 mm melamine particleboard (KCMA and IKEA METOD/SEKTION product data, 18 mm panels); density as pa (+6 more bodies)",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "drawer_1_1",
    "type": "prismatic",
    "range": [
     0.0,
     0.31
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_1_2",
    "type": "prismatic",
    "range": [
     0.0,
     0.31
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_1_3",
    "type": "prismatic",
    "range": [
     0.0,
     0.31
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_2_1",
    "type": "prismatic",
    "range": [
     0.0,
     0.31
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_2_2",
    "type": "prismatic",
    "range": [
     0.0,
     0.31
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_2_3",
    "type": "prismatic",
    "range": [
     0.0,
     0.31
    ],
    "continuous": false,
    "units": "m"
   }
  ],
  "collision": "52 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 6])",
   "assembly_audit": null,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; build.py has a conditional import/bake of input/mesh_hy31.glb that did not run (file absent)."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_dresser_a01_01.usd",
    "bytes": 327361,
    "sha256": "a43649f4d91e5fe3d3f4d3184248ba9c0dac283bc55c6190a99e430b4c21e855"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_dresser_a01_01.usd.png",
    "bytes": 68011,
    "sha256": "98f6284f82cd69314d1673e965506a8fbe82f68e714b6c8d8b17cc96c93b9248"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_dresser_a01_01.usd_light.png",
    "bytes": 68111,
    "sha256": "cc450fedbe704f41d203f234be6a2c38e0fd200066268a228101968c9b1157d2"
   },
   {
    "path": "simready_usd/textures/product_walnut_albedo_balanced.png",
    "bytes": 1847950,
    "sha256": "63244f5b799027ff3c8e94e4a744e7e601a267054b96926218a293041f35c4f1"
   },
   {
    "path": "furniture_dresser_a01.zip",
    "bytes": 2054593,
    "sha256": "e26707fa18fcbf78c6b547726a45f229d334e200a40223c7a0e47a462ae74ef8"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_dresser_a01/simready_usd/sm_furniture_dresser_a01_01.usd",
   "zip": "/files/assets/furniture_dresser_a01/furniture_dresser_a01.zip",
   "thumb": "/files/assets/furniture_dresser_a01/simready_usd/.thumbs/256x256/sm_furniture_dresser_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_dresser_a01/simready_usd/.thumbs/256x256/sm_furniture_dresser_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_dresser_a01/metadata.json",
   "license": "/files/assets/furniture_dresser_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_dresser_a01/preview/furniture_dresser_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_dresser_a01/preview/furniture_dresser_a01.glb",
   "collision_glb": "/files/assets/furniture_dresser_a01/preview/furniture_dresser_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.725,
     -0.0,
     -0.22519
    ],
    "max": [
     0.725,
     0.8,
     0.225
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_10",
      "geom_11",
      "geom_12",
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17",
      "geom_18",
      "geom_19"
     ],
     "center": [
      0.0,
      0.4,
      -9e-05
     ],
     "joint": null
    },
    {
     "node": "drawer_1_1",
     "parent": "carcass",
     "meshes": [
      "geom_27",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33"
     ],
     "center": [
      -0.353,
      0.29283,
      0.01722
     ],
     "joint": {
      "name": "drawer_1_1",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       -0.353,
       0.292833,
       0.225
      ],
      "range": [
       0.0,
       0.31
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       -0.353,
       0.292833,
       0.22262
      ]
     }
    },
    {
     "node": "drawer_1_2",
     "parent": "carcass",
     "meshes": [
      "geom_41",
      "geom_42",
      "geom_43",
      "geom_44",
      "geom_45",
      "geom_46",
      "geom_47"
     ],
     "center": [
      -0.353,
      0.4865,
      0.01722
     ],
     "joint": {
      "name": "drawer_1_2",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       -0.353,
       0.4865,
       0.225
      ],
      "range": [
       0.0,
       0.31
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       -0.353,
       0.4865,
       0.22262
      ]
     }
    },
    {
     "node": "drawer_1_3",
     "parent": "carcass",
     "meshes": [
      "geom_55",
      "geom_56",
      "geom_57",
      "geom_58",
      "geom_59",
      "geom_60",
      "geom_61"
     ],
     "center": [
      -0.353,
      0.68017,
      0.01722
     ],
     "joint": {
      "name": "drawer_1_3",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       -0.353,
       0.680167,
       0.225
      ],
      "range": [
       0.0,
       0.31
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       -0.353,
       0.680167,
       0.22262
      ]
     }
    },
    {
     "node": "drawer_2_1",
     "parent": "carcass",
     "meshes": [
      "geom_69",
      "geom_70",
      "geom_71",
      "geom_72",
      "geom_73",
      "geom_74",
      "geom_75"
     ],
     "center": [
      0.353,
      0.29283,
      0.01722
     ],
     "joint": {
      "name": "drawer_2_1",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       0.353,
       0.292833,
       0.225
      ],
      "range": [
       0.0,
       0.31
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       0.353,
       0.292833,
       0.22262
      ]
     }
    },
    {
     "node": "drawer_2_2",
     "parent": "carcass",
     "meshes": [
      "geom_83",
      "geom_84",
      "geom_85",
      "geom_86",
      "geom_87",
      "geom_88",
      "geom_89"
     ],
     "center": [
      0.353,
      0.4865,
      0.01722
     ],
     "joint": {
      "name": "drawer_2_2",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       0.353,
       0.4865,
       0.225
      ],
      "range": [
       0.0,
       0.31
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       0.353,
       0.4865,
       0.22262
      ]
     }
    },
    {
     "node": "drawer_2_3",
     "parent": "carcass",
     "meshes": [
      "geom_97",
      "geom_98",
      "geom_99",
      "geom_100",
      "geom_101",
      "geom_102",
      "geom_103"
     ],
     "center": [
      0.353,
      0.68017,
      0.01722
     ],
     "joint": {
      "name": "drawer_2_3",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       0.353,
       0.680167,
       0.225
      ],
      "range": [
       0.0,
       0.31
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       0.353,
       0.680167,
       0.22262
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.4,
     -9e-05
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_drop_leaf_console_table_a01",
  "name": "Hardwood drop-leaf console table, honey brown",
  "description": "A hardwood console table with a fixed central top and two hinged side leaves. The leaves fold down and are held up by pivoting support brackets.",
  "category": "furniture",
  "subcategory": "drop_leaf_console_table",
  "variant": "a01",
  "semantic_label": "drop-leaf console table",
  "wikidata_qcode": "Q5308374",
  "mechanism": "articulated",
  "dimensions_m": [
   0.8,
   0.4,
   0.84
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 18.9815,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 650 kg/m3 (Engineering ToolBox, Densities of Wood Species (as in R/simready/densities.json wood_hardwood))",
  "materials": [
   "wood_hardwood"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "measured: As R/simready/densities.json wood_hardwood (wood on wood 0.25-0.5, Engineering ToolBox). (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "leaf_left",
    "type": "revolute",
    "range": [
     0.0,
     1.5708
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "support_bracket_left",
    "type": "revolute",
    "range": [
     0.0,
     1.5708
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "leaf_right",
    "type": "revolute",
    "range": [
     0.0,
     1.5708
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "support_bracket_right",
    "type": "revolute",
    "range": [
     0.0,
     1.5708
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "16 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [6, 6, 6])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_drop_leaf_console_table_a01_01.usd",
    "bytes": 176404,
    "sha256": "e3c06a6ace396a3b7c085b50b4cbca95ac2469620bd22e46577f1d2f59a52440"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_drop_leaf_console_table_a01_01.usd.png",
    "bytes": 69854,
    "sha256": "67f00d0b127f4729f69de5329e703608b1a5f272b4155dbf1bac5477993e54a4"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_drop_leaf_console_table_a01_01.usd_light.png",
    "bytes": 71015,
    "sha256": "d2e0f505d74121b957b7bde98d41a71af58c87d41218bdc114516662ae93f274"
   },
   {
    "path": "simready_usd/textures/wood_finish_albedo.png",
    "bytes": 1991768,
    "sha256": "b1f6ec9260250d920bcf6d37e4c90aaaf3db3b46b3dcdf7e73df7f7ae3db8482"
   },
   {
    "path": "furniture_drop_leaf_console_table_a01.zip",
    "bytes": 2173160,
    "sha256": "b7412eb499504e3a6ac1ab935cfc2b511cfa6fb8dc29c3718f693bf75eae38ac"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_drop_leaf_console_table_a01/simready_usd/sm_furniture_drop_leaf_console_table_a01_01.usd",
   "zip": "/files/assets/furniture_drop_leaf_console_table_a01/furniture_drop_leaf_console_table_a01.zip",
   "thumb": "/files/assets/furniture_drop_leaf_console_table_a01/simready_usd/.thumbs/256x256/sm_furniture_drop_leaf_console_table_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_drop_leaf_console_table_a01/simready_usd/.thumbs/256x256/sm_furniture_drop_leaf_console_table_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_drop_leaf_console_table_a01/metadata.json",
   "license": "/files/assets/furniture_drop_leaf_console_table_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_drop_leaf_console_table_a01/preview/furniture_drop_leaf_console_table_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_drop_leaf_console_table_a01/preview/furniture_drop_leaf_console_table_a01.glb",
   "collision_glb": "/files/assets/furniture_drop_leaf_console_table_a01/preview/furniture_drop_leaf_console_table_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.4,
     0.0,
     -0.2
    ],
    "max": [
     0.4,
     0.84,
     0.2
    ]
   },
   "parts": [
    {
     "node": "frame",
     "parent": null,
     "meshes": [
      "geom_12",
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17",
      "geom_18",
      "geom_19",
      "geom_20",
      "geom_21",
      "geom_22",
      "geom_23"
     ],
     "center": [
      0.0,
      0.42,
      0.0
     ],
     "joint": null
    },
    {
     "node": "leaf_left",
     "parent": "frame",
     "meshes": [
      "geom_25"
     ],
     "center": [
      -0.387,
      0.677,
      0.0
     ],
     "joint": {
      "name": "leaf_left",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       -0.387,
       0.812,
       0.0
      ],
      "range": [
       0.0,
       1.5708
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       -0.387,
       0.812,
       0.0
      ]
     }
    },
    {
     "node": "support_bracket_left",
     "parent": "frame",
     "meshes": [
      "geom_27"
     ],
     "center": [
      -0.3465,
      0.778,
      0.05
     ],
     "joint": {
      "name": "support_bracket_left",
      "type": "revolute",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       -0.334,
       0.778,
       0.0
      ],
      "range": [
       0.0,
       1.5708
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       -0.334,
       0.778,
       0.0
      ]
     }
    },
    {
     "node": "leaf_right",
     "parent": "frame",
     "meshes": [
      "geom_29"
     ],
     "center": [
      0.387,
      0.677,
      0.0
     ],
     "joint": {
      "name": "leaf_right",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       0.387,
       0.812,
       0.0
      ],
      "range": [
       0.0,
       1.5708
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       0.387,
       0.812,
       0.0
      ]
     }
    },
    {
     "node": "support_bracket_right",
     "parent": "frame",
     "meshes": [
      "geom_31"
     ],
     "center": [
      0.3465,
      0.778,
      0.05
     ],
     "joint": {
      "name": "support_bracket_right",
      "type": "revolute",
      "axis": [
       0.0,
       1.0,
       0.0
      ],
      "origin": [
       0.334,
       0.778,
       0.0
      ],
      "range": [
       0.0,
       1.5708
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       1.0,
       0.0
      ],
      "origin_parent": [
       0.334,
       0.778,
       0.0
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.42,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_etagere_a01",
  "name": "Maple ladder etagere, three shelves",
  "description": "A freestanding maple etagere with two ladder-style side frames and three flat shelves, open at the front and back. It has no moving parts.",
  "category": "furniture",
  "subcategory": "etagere",
  "variant": "a01",
  "semantic_label": "etagere",
  "wikidata_qcode": "Q1370886",
  "mechanism": "rigid",
  "dimensions_m": [
   0.82,
   0.4,
   0.9624
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 13.3756,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 650 kg/m3 (Engineering ToolBox, Densities of Wood Species (as in R/simready/densities.json wood_hardwood))",
  "materials": [
   "wood_hardwood"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "measured: As R/simready/densities.json wood_hardwood (wood on wood 0.25-0.5, Engineering ToolBox). (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "13 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [8, 6, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_etagere_a01_01.usd",
    "bytes": 176178,
    "sha256": "80343d334ff8449931a6f31f0b1f37fbb487c825921c36b36364404999d33cd3"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_etagere_a01_01.usd.png",
    "bytes": 70415,
    "sha256": "7a6dfe23f3fc128014e06fd9a25e39674c58d70ee2b18c8ad10df0c5e7269d0f"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_etagere_a01_01.usd_light.png",
    "bytes": 72750,
    "sha256": "d86e1f63b53f39dba72a44bf161e7c84de8725052f5736c5dffbbd93842f15ff"
   },
   {
    "path": "simready_usd/textures/maple_finish_albedo.png",
    "bytes": 1803365,
    "sha256": "381b5f57dbde6c86ec5c471c871a3ba911b95e7364fbbe17579db5756e6b8c6b"
   },
   {
    "path": "furniture_etagere_a01.zip",
    "bytes": 2001291,
    "sha256": "55d07e561d028b0f8b9b7e9e71777612c05659a0d504742dd97ceb2916b76d8b"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_etagere_a01/simready_usd/sm_furniture_etagere_a01_01.usd",
   "zip": "/files/assets/furniture_etagere_a01/furniture_etagere_a01.zip",
   "thumb": "/files/assets/furniture_etagere_a01/simready_usd/.thumbs/256x256/sm_furniture_etagere_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_etagere_a01/simready_usd/.thumbs/256x256/sm_furniture_etagere_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_etagere_a01/metadata.json",
   "license": "/files/assets/furniture_etagere_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_etagere_a01/preview/furniture_etagere_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_etagere_a01/preview/furniture_etagere_a01.glb",
   "collision_glb": "/files/assets/furniture_etagere_a01/preview/furniture_etagere_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.41,
     0.0,
     -0.2
    ],
    "max": [
     0.41,
     0.96239,
     0.2
    ]
   },
   "parts": [
    {
     "node": "frame",
     "parent": null,
     "meshes": [
      "geom_13"
     ],
     "center": [
      0.0,
      0.4812,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.4812,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_pantry_cabinet_a01",
  "name": "Tilt-out bin pantry cabinet, mushroom grey",
  "description": "A low pantry cabinet made of laminated particleboard with a flat top. It has two tilt-out storage bins behind plain solid fronts.",
  "category": "furniture",
  "subcategory": "pantry_cabinet",
  "variant": "a01",
  "semantic_label": "pantry cabinet",
  "wikidata_qcode": "Q1306022",
  "mechanism": "articulated",
  "dimensions_m": [
   0.86,
   0.42,
   0.88
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 45.983,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 700 kg/m3 (USDA Forest Service Wood Handbook FPL-GTR-190 ch. 11, particleboard 590-800 kg/m3 (as in R/simready/densities.json))",
  "materials": [
   "particleboard_laminate",
   "wood"
  ],
  "friction": {
   "static": 0.35,
   "dynamic": 0.35,
   "source": "measured: As R/simready/densities.json particleboard_laminate. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "door_tilt_bin_1",
    "type": "revolute",
    "range": [
     0.0,
     0.610865
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "door_tilt_bin_2",
    "type": "revolute",
    "range": [
     0.0,
     0.610865
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "186 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed; build.py has a conditional import/bake of input/mesh_hy31.glb that did not run (file absent)."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_pantry_cabinet_a01_01.usd",
    "bytes": 1345295,
    "sha256": "7e9de0c6603bc9f1330f78aa812d085d3b4a9b63a3b0a805555a00f7ddfd2b4e"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_pantry_cabinet_a01_01.usd.png",
    "bytes": 60084,
    "sha256": "37c0b12258c0f8be6a94b79e376d63a3b012446e5501c6ebe7b128c23b82babb"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_pantry_cabinet_a01_01.usd_light.png",
    "bytes": 60263,
    "sha256": "177fc71c8b9f8c4a80aeaf31bf466842ba38a0b6fe9042728e5f087c283952a7"
   },
   {
    "path": "simready_usd/textures/laminate_albedo.png",
    "bytes": 40374,
    "sha256": "18057f7bf20733b3f8de6b4aae8a8edf23e3b401037f18b5b64c0a749719a947"
   },
   {
    "path": "furniture_pantry_cabinet_a01.zip",
    "bytes": 335270,
    "sha256": "ca420330938664f541cf01962a1045cdb38727124598cb523a2ac81bc3ae3289"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_pantry_cabinet_a01/simready_usd/sm_furniture_pantry_cabinet_a01_01.usd",
   "zip": "/files/assets/furniture_pantry_cabinet_a01/furniture_pantry_cabinet_a01.zip",
   "thumb": "/files/assets/furniture_pantry_cabinet_a01/simready_usd/.thumbs/256x256/sm_furniture_pantry_cabinet_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_pantry_cabinet_a01/simready_usd/.thumbs/256x256/sm_furniture_pantry_cabinet_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_pantry_cabinet_a01/metadata.json",
   "license": "/files/assets/furniture_pantry_cabinet_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_pantry_cabinet_a01/preview/furniture_pantry_cabinet_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_pantry_cabinet_a01/preview/furniture_pantry_cabinet_a01.glb",
   "collision_glb": "/files/assets/furniture_pantry_cabinet_a01/preview/furniture_pantry_cabinet_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.43,
     -0.0,
     -0.21
    ],
    "max": [
     0.43,
     0.88,
     0.21
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_26",
      "geom_27",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34",
      "geom_35",
      "geom_36",
      "geom_37",
      "geom_38",
      "geom_39"
     ],
     "center": [
      0.0,
      0.44,
      -0.0
     ],
     "joint": null
    },
    {
     "node": "door_tilt_bin_1",
     "parent": "carcass",
     "meshes": [
      "geom_120",
      "geom_121",
      "geom_122",
      "geom_123",
      "geom_124",
      "geom_125",
      "geom_126",
      "geom_127",
      "geom_128",
      "geom_129",
      "geom_130",
      "geom_131",
      "geom_132",
      "geom_133",
      "geom_134",
      "geom_135"
     ],
     "center": [
      -0.2105,
      0.47,
      0.027
     ],
     "joint": {
      "name": "door_tilt_bin_1",
      "type": "revolute",
      "axis": [
       1.0,
       0.0,
       0.0
      ],
      "origin": [
       -0.2105,
       0.108,
       0.146
      ],
      "range": [
       0.0,
       0.610865
      ],
      "units": "rad",
      "axis_parent": [
       1.0,
       0.0,
       0.0
      ],
      "origin_parent": [
       -0.2105,
       0.108,
       0.146
      ]
     }
    },
    {
     "node": "door_tilt_bin_2",
     "parent": "carcass",
     "meshes": [
      "geom_216",
      "geom_217",
      "geom_218",
      "geom_219",
      "geom_220",
      "geom_221",
      "geom_222",
      "geom_223",
      "geom_224",
      "geom_225",
      "geom_226",
      "geom_227",
      "geom_228",
      "geom_229",
      "geom_230",
      "geom_231"
     ],
     "center": [
      0.2105,
      0.47,
      0.027
     ],
     "joint": {
      "name": "door_tilt_bin_2",
      "type": "revolute",
      "axis": [
       1.0,
       0.0,
       0.0
      ],
      "origin": [
       0.2105,
       0.108,
       0.146
      ],
      "range": [
       0.0,
       0.610865
      ],
      "units": "rad",
      "axis_parent": [
       1.0,
       0.0,
       0.0
      ],
      "origin_parent": [
       0.2105,
       0.108,
       0.146
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.44,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_serving_console_b01",
  "name": "Quartz waterfall serving console, cream",
  "description": "A free-standing serving console made of quartz composite with a flat top. Two full-depth slab legs support the top and leave open space beneath. It has no moving parts.",
  "category": "furniture",
  "subcategory": "serving_console",
  "variant": "b01",
  "semantic_label": "serving console",
  "wikidata_qcode": "Q7887380",
  "mechanism": "rigid",
  "dimensions_m": [
   0.88,
   0.42,
   0.86
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 101.4392,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 2400 kg/m3 (Caesarstone technical specification 2.3-2.4 g/cm3 (as in R/simready/densities.json))",
  "materials": [
   "stone",
   "stone_quartz_composite"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "measured: As R/simready/densities.json stone_quartz_composite. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "3 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_serving_console_b01_01.usd",
    "bytes": 45203,
    "sha256": "cd5cce730c6ddcd856fa309a7f538f2e566c6e25ba8f112dae636f4a0f3324a4"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_serving_console_b01_01.usd.png",
    "bytes": 59508,
    "sha256": "1cd85aed7e9caa9a9ca0de950a05cc69d3b9e86e74d851e8f799048b40d22a72"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_serving_console_b01_01.usd_light.png",
    "bytes": 58322,
    "sha256": "23e92b0603a71d0b6e9d8b59df3f77ba74bf25704ba49e1234e2f209d06ec07d"
   },
   {
    "path": "simready_usd/textures/quartz_waterfall_baked.png",
    "bytes": 2519803,
    "sha256": "8a5877d1ad6aff9ac65d223a742014b5bff8c0efc83dba3b95899bcc103d5e71"
   },
   {
    "path": "furniture_serving_console_b01.zip",
    "bytes": 2614900,
    "sha256": "39d96e89b3c48f1bcb9aa7511e6f9965fc63b2ca93fc52b3ae1d75a58b971597"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_serving_console_b01/simready_usd/sm_furniture_serving_console_b01_01.usd",
   "zip": "/files/assets/furniture_serving_console_b01/furniture_serving_console_b01.zip",
   "thumb": "/files/assets/furniture_serving_console_b01/simready_usd/.thumbs/256x256/sm_furniture_serving_console_b01_01.usd.png",
   "thumb_light": "/files/assets/furniture_serving_console_b01/simready_usd/.thumbs/256x256/sm_furniture_serving_console_b01_01.usd_light.png",
   "metadata": "/files/assets/furniture_serving_console_b01/metadata.json",
   "license": "/files/assets/furniture_serving_console_b01/LICENSE.txt",
   "glb": "/files/assets/furniture_serving_console_b01/preview/furniture_serving_console_b01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_serving_console_b01/preview/furniture_serving_console_b01.glb",
   "collision_glb": "/files/assets/furniture_serving_console_b01/preview/furniture_serving_console_b01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.44,
     0.0,
     -0.21
    ],
    "max": [
     0.44,
     0.86,
     0.21
    ]
   },
   "parts": [
    {
     "node": "fixed_quartz",
     "parent": null,
     "meshes": [
      "geom_3"
     ],
     "center": [
      -0.0,
      0.43,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.43,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_sink_cabinet_a01",
  "name": "Brushed steel sink cabinet with basin",
  "description": "A freestanding brushed steel sink cabinet with an integral basin on the left, a flat landing surface on the right and a faucet. The lower doors swing open and the faucet handle moves.",
  "category": "furniture",
  "subcategory": "sink_cabinet",
  "variant": "a01",
  "semantic_label": "sink cabinet",
  "wikidata_qcode": "Q2425869",
  "mechanism": "articulated",
  "dimensions_m": [
   0.9,
   0.6,
   0.9147
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 53.2451,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 7900 kg/m3 (AK Steel 304/304L data sheet 7.9 g/cm3 (as in R/simready/densities.json))",
  "materials": [
   "steel_stainless"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "measured: As R/simready/densities.json steel_stainless. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "door_left",
    "type": "revolute",
    "range": [
     0.0,
     1.8326
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "door_right",
    "type": "revolute",
    "range": [
     0.0,
     1.8326
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "lever_lift",
    "type": "revolute",
    "range": [
     0.0,
     0.610865
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "37 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [7, 6, 7])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_sink_cabinet_a01_01.usd",
    "bytes": 4585957,
    "sha256": "090daaf0b0ac1e80645883929d1723f1406240b1e65330fcbd723df2f8c17cd6"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_sink_cabinet_a01_01.usd.png",
    "bytes": 64543,
    "sha256": "f74aacdcb5d22c9b3779e44181de87a38181281d0a8e32b83b9cb62efaa09356"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_sink_cabinet_a01_01.usd_light.png",
    "bytes": 63426,
    "sha256": "a3aa22264a64fa026317814188e4a77d3764aee3277ad34f818e6dff495b144b"
   },
   {
    "path": "simready_usd/textures/brushed_steel.png",
    "bytes": 750084,
    "sha256": "249e21419225896dfdfc66489dd316e54ac98072a6277c324a24bc9bc65e0fe7"
   },
   {
    "path": "furniture_sink_cabinet_a01.zip",
    "bytes": 2019166,
    "sha256": "21f8255d79100910b6f8f51d3db6119b9fe5150cffadd9c920780dd6dbf44d01"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_sink_cabinet_a01/simready_usd/sm_furniture_sink_cabinet_a01_01.usd",
   "zip": "/files/assets/furniture_sink_cabinet_a01/furniture_sink_cabinet_a01.zip",
   "thumb": "/files/assets/furniture_sink_cabinet_a01/simready_usd/.thumbs/256x256/sm_furniture_sink_cabinet_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_sink_cabinet_a01/simready_usd/.thumbs/256x256/sm_furniture_sink_cabinet_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_sink_cabinet_a01/metadata.json",
   "license": "/files/assets/furniture_sink_cabinet_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_sink_cabinet_a01/preview/furniture_sink_cabinet_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_sink_cabinet_a01/preview/furniture_sink_cabinet_a01.glb",
   "collision_glb": "/files/assets/furniture_sink_cabinet_a01/preview/furniture_sink_cabinet_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.45,
     0.0,
     -0.3
    ],
    "max": [
     0.45,
     0.88,
     0.3
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34",
      "geom_35",
      "geom_36",
      "geom_37",
      "geom_38",
      "geom_39",
      "geom_40",
      "geom_41",
      "geom_42",
      "geom_43",
      "geom_44",
      "geom_45",
      "geom_46",
      "geom_47",
      "geom_48",
      "geom_49",
      "geom_50",
      "geom_51",
      "geom_52",
      "geom_53",
      "geom_54",
      "geom_55",
      "geom_56",
      "geom_57",
      "geom_58",
      "geom_59",
      "geom_60",
      "geom_61",
      "geom_62",
      "geom_63",
      "geom_64",
      "geom_65",
      "geom_66",
      "geom_67",
      "geom_68",
      "geom_69",
      "geom_70",
      "geom_71",
      "geom_72",
      "geom_73"
     ],
     "center": [
      0.0,
      0.44,
      -0.0
     ],
     "joint": null
    },
    {
     "node": "door_left",
     "parent": "carcass",
     "meshes": [
      "geom_78",
      "geom_79",
      "geom_80",
      "geom_81",
      "geom_82",
      "geom_83"
     ],
     "center": [
      -0.225,
      0.37977,
      0.2815
     ],
     "joint": {
      "name": "door_left",
      "type": "revolute",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       -0.442,
       0.387935,
       0.269
      ],
      "range": [
       0.0,
       1.8326
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       -0.442,
       0.387935,
       0.269
      ]
     }
    },
    {
     "node": "door_right",
     "parent": "carcass",
     "meshes": [
      "geom_88",
      "geom_89",
      "geom_90",
      "geom_91",
      "geom_92",
      "geom_93"
     ],
     "center": [
      0.225,
      0.37977,
      0.2815
     ],
     "joint": {
      "name": "door_right",
      "type": "revolute",
      "axis": [
       0.0,
       1.0,
       0.0
      ],
      "origin": [
       0.442,
       0.387935,
       0.269
      ],
      "range": [
       0.0,
       1.8326
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       1.0,
       0.0
      ],
      "origin_parent": [
       0.442,
       0.387935,
       0.269
      ]
     }
    },
    {
     "node": "lever_lift",
     "parent": "carcass",
     "meshes": [
      "geom_95"
     ],
     "center": [
      -0.144,
      0.74524,
      -0.26
     ],
     "joint": {
      "name": "lever_lift",
      "type": "revolute",
      "axis": [
       1.0,
       0.0,
       0.0
      ],
      "origin": [
       -0.15,
       0.745244,
       -0.23
      ],
      "range": [
       0.0,
       0.610865
      ],
      "units": "rad",
      "axis_parent": [
       1.0,
       0.0,
       0.0
      ],
      "origin_parent": [
       -0.15,
       0.745244,
       -0.23
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.44,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_steel_cabinet_a01",
  "name": "Brushed steel two-door cabinet",
  "description": "A compact cabinet made of brushed stainless steel with a flat top and short feet. It has two hinged doors that open and close.",
  "category": "furniture",
  "subcategory": "steel_cabinet",
  "variant": "a01",
  "semantic_label": "steel cabinet",
  "wikidata_qcode": "Q2741056",
  "mechanism": "articulated",
  "dimensions_m": [
   0.85,
   0.401,
   0.85
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 74.144,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 7900 kg/m3 (AK Steel 304/304L data sheet 7.9 g/cm3 (as in R/simready/densities.json))",
  "materials": [
   "steel_stainless"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "measured: As R/simready/densities.json steel_stainless. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "door_left",
    "type": "revolute",
    "range": [
     0.0,
     1.91986
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "door_right",
    "type": "revolute",
    "range": [
     0.0,
     1.91986
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "56 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [6, 6, 6])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_steel_cabinet_a01_01.usd",
    "bytes": 5140892,
    "sha256": "4c3f1d3c13fedfa6b0d28c38c216340eee2a0055edc8c31b83eb4650ba11df95"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_steel_cabinet_a01_01.usd.png",
    "bytes": 60736,
    "sha256": "de459f32391d950f04120179074e7827ec1a897c9743643bed998cc5b4240846"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_steel_cabinet_a01_01.usd_light.png",
    "bytes": 61225,
    "sha256": "58684f5d34f2bcb41075a7b7066555d3df5c6e57ecc15c0bdbb500c39d92e601"
   },
   {
    "path": "simready_usd/textures/steel_brush.png",
    "bytes": 917642,
    "sha256": "9c9a786bdc883d2d4c391d4d3a1012abac0ae9701e926eea984c516bf902de52"
   },
   {
    "path": "furniture_steel_cabinet_a01.zip",
    "bytes": 1529927,
    "sha256": "5793c71e4b8c99701fd92ac932cf03e9196a0ed12776c6e889a33ffa6c920559"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_steel_cabinet_a01/simready_usd/sm_furniture_steel_cabinet_a01_01.usd",
   "zip": "/files/assets/furniture_steel_cabinet_a01/furniture_steel_cabinet_a01.zip",
   "thumb": "/files/assets/furniture_steel_cabinet_a01/simready_usd/.thumbs/256x256/sm_furniture_steel_cabinet_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_steel_cabinet_a01/simready_usd/.thumbs/256x256/sm_furniture_steel_cabinet_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_steel_cabinet_a01/metadata.json",
   "license": "/files/assets/furniture_steel_cabinet_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_steel_cabinet_a01/preview/furniture_steel_cabinet_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_steel_cabinet_a01/preview/furniture_steel_cabinet_a01.glb",
   "collision_glb": "/files/assets/furniture_steel_cabinet_a01/preview/furniture_steel_cabinet_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.425,
     -0.0,
     -0.2005
    ],
    "max": [
     0.425,
     0.85,
     0.2005
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34",
      "geom_35",
      "geom_36",
      "geom_37",
      "geom_38",
      "geom_39",
      "geom_40",
      "geom_41",
      "geom_42",
      "geom_43",
      "geom_44",
      "geom_45",
      "geom_46",
      "geom_47",
      "geom_48",
      "geom_49",
      "geom_50",
      "geom_51",
      "geom_52",
      "geom_53",
      "geom_54",
      "geom_55",
      "geom_56",
      "geom_57",
      "geom_58",
      "geom_59",
      "geom_60",
      "geom_61",
      "geom_62",
      "geom_63",
      "geom_64",
      "geom_65",
      "geom_66",
      "geom_67",
      "geom_68",
      "geom_69",
      "geom_70",
      "geom_71",
      "geom_72",
      "geom_73"
     ],
     "center": [
      0.0,
      0.425,
      -0.025
     ],
     "joint": null
    },
    {
     "node": "door_left",
     "parent": "carcass",
     "meshes": [
      "geom_87",
      "geom_88",
      "geom_89",
      "geom_90",
      "geom_91",
      "geom_92",
      "geom_93",
      "geom_94",
      "geom_95",
      "geom_96",
      "geom_97",
      "geom_98",
      "geom_99",
      "geom_100"
     ],
     "center": [
      -0.213,
      0.451,
      0.1655
     ],
     "joint": {
      "name": "door_left",
      "type": "revolute",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       -0.422,
       0.45,
       0.1505
      ],
      "range": [
       0.0,
       1.91986
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       -0.422,
       0.45,
       0.15
      ]
     }
    },
    {
     "node": "door_right",
     "parent": "carcass",
     "meshes": [
      "geom_114",
      "geom_115",
      "geom_116",
      "geom_117",
      "geom_118",
      "geom_119",
      "geom_120",
      "geom_121",
      "geom_122",
      "geom_123",
      "geom_124",
      "geom_125",
      "geom_126",
      "geom_127"
     ],
     "center": [
      0.213,
      0.451,
      0.1655
     ],
     "joint": {
      "name": "door_right",
      "type": "revolute",
      "axis": [
       0.0,
       1.0,
       0.0
      ],
      "origin": [
       0.422,
       0.45,
       0.1505
      ],
      "range": [
       0.0,
       1.91986
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       1.0,
       0.0
      ],
      "origin_parent": [
       0.422,
       0.45,
       0.15
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.425,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_stool_a01",
  "name": "Square oak stool",
  "description": "A small stool made of oak with a solid square seat, four splayed legs and low stretchers. It has no upholstery and no moving parts.",
  "category": "furniture",
  "subcategory": "stool",
  "variant": "a01",
  "semantic_label": "stool",
  "wikidata_qcode": "Q33163",
  "mechanism": "rigid",
  "dimensions_m": [
   0.3565,
   0.3565,
   0.5043
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 4.418,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 650 kg/m3 (Engineering ToolBox, Densities of Wood Species (as in R/simready/densities.json wood_hardwood))",
  "materials": [
   "wood_hardwood"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "measured: As R/simready/densities.json wood_hardwood (wood on wood 0.25-0.5, Engineering ToolBox). (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "13 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_stool_a01_01.usd",
    "bytes": 62787,
    "sha256": "6ecdfc149c71707ec6b9a0046c94001c76e5e0bf3888c8d943bb0355d3fa7a50"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_stool_a01_01.usd.png",
    "bytes": 65266,
    "sha256": "2351b68acc49b271658862baf3902dd19fcafdd377591365551751426be3cbaf"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_stool_a01_01.usd_light.png",
    "bytes": 67611,
    "sha256": "804d07a4b77880ab60f3f8a75f55c43f7a9da28f101f916d4787e35151681d51"
   },
   {
    "path": "simready_usd/textures/Oak_grain.png",
    "bytes": 1472948,
    "sha256": "baf59d172ecedbf38b44fc8e46ffe371e56d47a2d348b401e2670ea73118e146"
   },
   {
    "path": "furniture_stool_a01.zip",
    "bytes": 1624097,
    "sha256": "4a57260b5b7e0c9829e42309b2b3020ffef54a6e640781736fcea97f5ab78cd3"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_stool_a01/simready_usd/sm_furniture_stool_a01_01.usd",
   "zip": "/files/assets/furniture_stool_a01/furniture_stool_a01.zip",
   "thumb": "/files/assets/furniture_stool_a01/simready_usd/.thumbs/256x256/sm_furniture_stool_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_stool_a01/simready_usd/.thumbs/256x256/sm_furniture_stool_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_stool_a01/metadata.json",
   "license": "/files/assets/furniture_stool_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_stool_a01/preview/furniture_stool_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_stool_a01/preview/furniture_stool_a01.glb",
   "collision_glb": "/files/assets/furniture_stool_a01/preview/furniture_stool_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.16,
     -0.0,
     -0.16
    ],
    "max": [
     0.16,
     0.5,
     0.16
    ]
   },
   "parts": [
    {
     "node": "stool",
     "parent": null,
     "meshes": [
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17",
      "geom_18",
      "geom_19",
      "geom_20",
      "geom_21",
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25"
     ],
     "center": [
      0.0,
      0.25,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.25,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_table_frame_a01",
  "name": "Stainless steel four-leg table frame",
  "description": "A four-legged table frame made of satin stainless steel with rigid cross rails. The feet are adjustable for leveling, changing the height by about two centimetres.",
  "category": "furniture",
  "subcategory": "table_frame",
  "variant": "a01",
  "semantic_label": "table frame",
  "wikidata_qcode": "Q60606486",
  "mechanism": "articulated",
  "dimensions_m": [
   0.5801,
   1.28,
   0.72
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 24.2595,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 7900 kg/m3 (AK Steel 304/304L data sheet 7.9 g/cm3 (as in R/simready/densities.json))",
  "materials": [
   "steel_stainless"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "measured: As R/simready/densities.json steel_stainless. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "leveling_foot_0_turn",
    "type": "revolute",
    "range": [
     -31.4159,
     31.4159
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "leveling_foot_0_lift",
    "type": "prismatic",
    "range": [
     -0.01,
     0.01
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "leveling_foot_1_turn",
    "type": "revolute",
    "range": [
     -31.4159,
     31.4159
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "leveling_foot_1_lift",
    "type": "prismatic",
    "range": [
     -0.01,
     0.01
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "leveling_foot_2_turn",
    "type": "revolute",
    "range": [
     -31.4159,
     31.4159
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "leveling_foot_2_lift",
    "type": "prismatic",
    "range": [
     -0.01,
     0.01
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "leveling_foot_3_turn",
    "type": "revolute",
    "range": [
     -31.4159,
     31.4159
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "leveling_foot_3_lift",
    "type": "prismatic",
    "range": [
     -0.01,
     0.01
    ],
    "continuous": false,
    "units": "m"
   }
  ],
  "collision": "28 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [7, 6, 7])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_table_frame_a01_01.usd",
    "bytes": 579172,
    "sha256": "ee62e4a213e1b287560291bf455b946641866ef1acf766f700caeb64bb66202a"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_table_frame_a01_01.usd.png",
    "bytes": 65793,
    "sha256": "4b912b4a9cc90b3c59cac1c3578fb7e8d76eb8755778dff3fc78075e8e3a828d"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_table_frame_a01_01.usd_light.png",
    "bytes": 65324,
    "sha256": "765ee082307cca63c83c5d93f4f0342ad7cd6686e2b7165990fff0f3823190eb"
   },
   {
    "path": "furniture_table_frame_a01.zip",
    "bytes": 236392,
    "sha256": "8257d7e14b8c48740d18410cd5d89d28a989f10ee580f88a692211ef76fa0235"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_table_frame_a01/simready_usd/sm_furniture_table_frame_a01_01.usd",
   "zip": "/files/assets/furniture_table_frame_a01/furniture_table_frame_a01.zip",
   "thumb": "/files/assets/furniture_table_frame_a01/simready_usd/.thumbs/256x256/sm_furniture_table_frame_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_table_frame_a01/simready_usd/.thumbs/256x256/sm_furniture_table_frame_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_table_frame_a01/metadata.json",
   "license": "/files/assets/furniture_table_frame_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_table_frame_a01/preview/furniture_table_frame_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_table_frame_a01/preview/furniture_table_frame_a01.glb",
   "collision_glb": "/files/assets/furniture_table_frame_a01/preview/furniture_table_frame_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.29,
     0.0,
     -0.64
    ],
    "max": [
     0.29,
     0.72,
     0.64
    ]
   },
   "parts": [
    {
     "node": "welded_frame",
     "parent": null,
     "meshes": [
      "geom_12",
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17",
      "geom_18",
      "geom_19",
      "geom_20",
      "geom_21",
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25",
      "geom_26",
      "geom_27",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34",
      "geom_35",
      "geom_36",
      "geom_37",
      "geom_38",
      "geom_39",
      "geom_40",
      "geom_41",
      "geom_42",
      "geom_43",
      "geom_44",
      "geom_45",
      "geom_46",
      "geom_47",
      "geom_48",
      "geom_49",
      "geom_50",
      "geom_51",
      "geom_52",
      "geom_53",
      "geom_54",
      "geom_55",
      "geom_56",
      "geom_57",
      "geom_58",
      "geom_59",
      "geom_60",
      "geom_61",
      "geom_62",
      "geom_63",
      "geom_64",
      "geom_65",
      "geom_66",
      "geom_67",
      "geom_68",
      "geom_69",
      "geom_70",
      "geom_71",
      "geom_72",
      "geom_73",
      "geom_74",
      "geom_75",
      "geom_76",
      "geom_77",
      "geom_78",
      "geom_79"
     ],
     "center": [
      0.0,
      0.39,
      0.0
     ],
     "joint": null
    },
    {
     "node": "leveling_foot_0",
     "parent": "welded_frame",
     "meshes": [
      "geom_84",
      "geom_85",
      "geom_86",
      "geom_87"
     ],
     "center": [
      -0.26815,
      0.0565,
      0.61807
     ],
     "joint": {
      "name": "leveling_foot_0_lift",
      "type": "prismatic",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       -0.268151,
       0.04,
       0.618069
      ],
      "range": [
       -0.01,
       0.01
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       -0.268151,
       0.04,
       0.618069
      ]
     }
    },
    {
     "node": "leveling_foot_1",
     "parent": "welded_frame",
     "meshes": [
      "geom_92",
      "geom_93",
      "geom_94",
      "geom_95"
     ],
     "center": [
      -0.26815,
      0.0565,
      -0.61807
     ],
     "joint": {
      "name": "leveling_foot_1_lift",
      "type": "prismatic",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       -0.268151,
       0.04,
       -0.618069
      ],
      "range": [
       -0.01,
       0.01
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       -0.268151,
       0.04,
       -0.618069
      ]
     }
    },
    {
     "node": "leveling_foot_2",
     "parent": "welded_frame",
     "meshes": [
      "geom_100",
      "geom_101",
      "geom_102",
      "geom_103"
     ],
     "center": [
      0.26815,
      0.0565,
      0.61807
     ],
     "joint": {
      "name": "leveling_foot_2_lift",
      "type": "prismatic",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       0.268151,
       0.04,
       0.618069
      ],
      "range": [
       -0.01,
       0.01
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       0.268151,
       0.04,
       0.618069
      ]
     }
    },
    {
     "node": "leveling_foot_3",
     "parent": "welded_frame",
     "meshes": [
      "geom_108",
      "geom_109",
      "geom_110",
      "geom_111"
     ],
     "center": [
      0.26815,
      0.0565,
      -0.61807
     ],
     "joint": {
      "name": "leveling_foot_3_lift",
      "type": "prismatic",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       0.268151,
       0.04,
       -0.618069
      ],
      "range": [
       -0.01,
       0.01
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       0.268151,
       0.04,
       -0.618069
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.36,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_utility_cart_a01",
  "name": "Narrow steel utility cart with drawers",
  "description": "A narrow utility cart made of steel with a flat top and closed drawers that slide open. It rolls on locking casters, shown in the locked state.",
  "category": "furniture",
  "subcategory": "utility_cart",
  "variant": "a01",
  "semantic_label": "utility cart",
  "wikidata_qcode": "Q117208351",
  "mechanism": "articulated",
  "dimensions_m": [
   0.48,
   0.4,
   0.78
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 41.7381,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 7900 kg/m3 (AK Steel 304/304L data sheet 7.9 g/cm3 (as in R/simready/densities.json))",
  "materials": [
   "steel_stainless"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "measured: As R/simready/densities.json steel_stainless. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "drawer_1",
    "type": "prismatic",
    "range": [
     0.0,
     0.31
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_2",
    "type": "prismatic",
    "range": [
     0.0,
     0.31
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "drawer_3",
    "type": "prismatic",
    "range": [
     0.0,
     0.31
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "caster_wheel_-0.175_-0.15",
    "type": "revolute",
    "range": null,
    "continuous": true,
    "units": "rad"
   },
   {
    "name": "caster_brake_-0.175_-0.15",
    "type": "revolute",
    "range": [
     0.0,
     0.523599
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "caster_wheel_-0.175_0.15",
    "type": "revolute",
    "range": null,
    "continuous": true,
    "units": "rad"
   },
   {
    "name": "caster_brake_-0.175_0.15",
    "type": "revolute",
    "range": [
     0.0,
     0.523599
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "caster_wheel_0.175_-0.15",
    "type": "revolute",
    "range": null,
    "continuous": true,
    "units": "rad"
   },
   {
    "name": "caster_brake_0.175_-0.15",
    "type": "revolute",
    "range": [
     0.0,
     0.523599
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "caster_wheel_0.175_0.15",
    "type": "revolute",
    "range": null,
    "continuous": true,
    "units": "rad"
   },
   {
    "name": "caster_brake_0.175_0.15",
    "type": "revolute",
    "range": [
     0.0,
     0.523599
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "558 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [7, 6, 7])",
   "assembly_audit": true,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_utility_cart_a01_01.usd",
    "bytes": 2822495,
    "sha256": "1a18eed7ee16974a1d3cc02f21cdeccae572e980b76a36ec9ced5eff886880d9"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_utility_cart_a01_01.usd.png",
    "bytes": 58663,
    "sha256": "8cf562acbe642629b6eca4278bd07da9a267dd286453889ed4ccef9f7dc70b65"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_utility_cart_a01_01.usd_light.png",
    "bytes": 58672,
    "sha256": "9eec2e24875f8edb76489ace36e92de50783f1aa425b6231f5c856f8d5014a6c"
   },
   {
    "path": "simready_usd/textures/brushed_steel.png",
    "bytes": 661700,
    "sha256": "5b76a13f64c50c03a9d9010c423528d9561a362be31b9046c134c49c87819396"
   },
   {
    "path": "furniture_utility_cart_a01.zip",
    "bytes": 1080165,
    "sha256": "1f3c1be60a98f14e3481a6fa76c2f5962adfb51f058c0cdf4757be55ceac5090"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_utility_cart_a01/simready_usd/sm_furniture_utility_cart_a01_01.usd",
   "zip": "/files/assets/furniture_utility_cart_a01/furniture_utility_cart_a01.zip",
   "thumb": "/files/assets/furniture_utility_cart_a01/simready_usd/.thumbs/256x256/sm_furniture_utility_cart_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_utility_cart_a01/simready_usd/.thumbs/256x256/sm_furniture_utility_cart_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_utility_cart_a01/metadata.json",
   "license": "/files/assets/furniture_utility_cart_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_utility_cart_a01/preview/furniture_utility_cart_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_utility_cart_a01/preview/furniture_utility_cart_a01.glb",
   "collision_glb": "/files/assets/furniture_utility_cart_a01/preview/furniture_utility_cart_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.24,
     -0.0,
     -0.2
    ],
    "max": [
     0.24,
     0.78,
     0.2
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_84",
      "geom_85",
      "geom_86",
      "geom_87",
      "geom_88",
      "geom_89",
      "geom_90",
      "geom_91",
      "geom_92",
      "geom_93",
      "geom_94",
      "geom_95",
      "geom_96",
      "geom_97",
      "geom_98",
      "geom_99",
      "geom_100",
      "geom_101",
      "geom_102",
      "geom_103",
      "geom_104",
      "geom_105",
      "geom_106",
      "geom_107",
      "geom_108",
      "geom_109",
      "geom_110",
      "geom_111",
      "geom_112",
      "geom_113",
      "geom_114",
      "geom_115",
      "geom_116",
      "geom_117",
      "geom_118",
      "geom_119",
      "geom_120",
      "geom_121",
      "geom_122",
      "geom_123",
      "geom_124",
      "geom_125",
      "geom_126",
      "geom_127",
      "geom_128",
      "geom_129",
      "geom_130",
      "geom_131",
      "geom_132",
      "geom_133",
      "geom_134",
      "geom_135",
      "geom_136",
      "geom_137",
      "geom_138",
      "geom_139",
      "geom_140",
      "geom_141",
      "geom_142",
      "geom_143",
      "geom_144",
      "geom_145",
      "geom_146",
      "geom_147",
      "geom_148",
      "geom_149",
      "geom_150",
      "geom_151",
      "geom_152",
      "geom_153",
      "geom_154",
      "geom_155",
      "geom_156",
      "geom_157"
     ],
     "center": [
      0.0,
      0.4095,
      0.0
     ],
     "joint": null
    },
    {
     "node": "drawer_1",
     "parent": "carcass",
     "meshes": [
      "geom_232",
      "geom_233",
      "geom_234",
      "geom_235",
      "geom_236",
      "geom_237",
      "geom_238",
      "geom_239",
      "geom_240",
      "geom_241"
     ],
     "center": [
      0.0235,
      0.658,
      -0.0
     ],
     "joint": {
      "name": "drawer_1",
      "type": "prismatic",
      "axis": [
       1.0,
       0.0,
       0.0
      ],
      "origin": [
       0.0,
       0.0,
       0.0
      ],
      "range": [
       0.0,
       0.31
      ],
      "units": "m",
      "axis_parent": [
       1.0,
       0.0,
       0.0
      ],
      "origin_parent": [
       0.0,
       0.0,
       0.0
      ]
     }
    },
    {
     "node": "drawer_2",
     "parent": "carcass",
     "meshes": [
      "geom_316",
      "geom_317",
      "geom_318",
      "geom_319",
      "geom_320",
      "geom_321",
      "geom_322",
      "geom_323",
      "geom_324",
      "geom_325"
     ],
     "center": [
      0.0235,
      0.447,
      0.0
     ],
     "joint": {
      "name": "drawer_2",
      "type": "prismatic",
      "axis": [
       1.0,
       0.0,
       0.0
      ],
      "origin": [
       0.0,
       0.0,
       0.0
      ],
      "range": [
       0.0,
       0.31
      ],
      "units": "m",
      "axis_parent": [
       1.0,
       0.0,
       0.0
      ],
      "origin_parent": [
       0.0,
       0.0,
       0.0
      ]
     }
    },
    {
     "node": "drawer_3",
     "parent": "carcass",
     "meshes": [
      "geom_400",
      "geom_401",
      "geom_402",
      "geom_403",
      "geom_404",
      "geom_405",
      "geom_406",
      "geom_407",
      "geom_408",
      "geom_409"
     ],
     "center": [
      0.0235,
      0.236,
      0.0
     ],
     "joint": {
      "name": "drawer_3",
      "type": "prismatic",
      "axis": [
       1.0,
       0.0,
       0.0
      ],
      "origin": [
       0.0,
       0.0,
       0.0
      ],
      "range": [
       0.0,
       0.31
      ],
      "units": "m",
      "axis_parent": [
       1.0,
       0.0,
       0.0
      ],
      "origin_parent": [
       0.0,
       0.0,
       0.0
      ]
     }
    },
    {
     "node": "caster_wheel__0_175__0_15",
     "parent": "carcass",
     "meshes": [
      "geom_470"
     ],
     "center": [
      -0.175,
      0.0443,
      0.15
     ],
     "joint": {
      "name": "caster_wheel__0_175__0_15",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       -0.175,
       0.045,
       0.15
      ],
      "range": null,
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       -0.175,
       0.045,
       0.15
      ]
     }
    },
    {
     "node": "caster_brake__0_175__0_15",
     "parent": "carcass",
     "meshes": [
      "geom_474",
      "geom_475",
      "geom_476",
      "geom_477"
     ],
     "center": [
      -0.1455,
      0.0925,
      0.15
     ],
     "joint": {
      "name": "caster_brake__0_175__0_15",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       -0.14,
       0.105,
       0.15
      ],
      "range": [
       0.0,
       0.523599
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       -0.14,
       0.105,
       0.15
      ]
     }
    },
    {
     "node": "caster_wheel__0_175_0_15",
     "parent": "carcass",
     "meshes": [
      "geom_538"
     ],
     "center": [
      -0.175,
      0.0443,
      -0.15
     ],
     "joint": {
      "name": "caster_wheel__0_175_0_15",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       -0.175,
       0.045,
       -0.15
      ],
      "range": null,
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       -0.175,
       0.045,
       -0.15
      ]
     }
    },
    {
     "node": "caster_brake__0_175_0_15",
     "parent": "carcass",
     "meshes": [
      "geom_542",
      "geom_543",
      "geom_544",
      "geom_545"
     ],
     "center": [
      -0.1455,
      0.0925,
      -0.15
     ],
     "joint": {
      "name": "caster_brake__0_175_0_15",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       -0.14,
       0.105,
       -0.15
      ],
      "range": [
       0.0,
       0.523599
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       -0.14,
       0.105,
       -0.15
      ]
     }
    },
    {
     "node": "caster_wheel_0_175__0_15",
     "parent": "carcass",
     "meshes": [
      "geom_606"
     ],
     "center": [
      0.175,
      0.0443,
      0.15
     ],
     "joint": {
      "name": "caster_wheel_0_175__0_15",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       0.175,
       0.045,
       0.15
      ],
      "range": null,
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       0.175,
       0.045,
       0.15
      ]
     }
    },
    {
     "node": "caster_brake_0_175__0_15",
     "parent": "carcass",
     "meshes": [
      "geom_610",
      "geom_611",
      "geom_612",
      "geom_613"
     ],
     "center": [
      0.2045,
      0.0925,
      0.15
     ],
     "joint": {
      "name": "caster_brake_0_175__0_15",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       0.21,
       0.105,
       0.15
      ],
      "range": [
       0.0,
       0.523599
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       0.21,
       0.105,
       0.15
      ]
     }
    },
    {
     "node": "caster_wheel_0_175_0_15",
     "parent": "carcass",
     "meshes": [
      "geom_674"
     ],
     "center": [
      0.175,
      0.0443,
      -0.15
     ],
     "joint": {
      "name": "caster_wheel_0_175_0_15",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       0.175,
       0.045,
       -0.15
      ],
      "range": null,
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       0.175,
       0.045,
       -0.15
      ]
     }
    },
    {
     "node": "caster_brake_0_175_0_15",
     "parent": "carcass",
     "meshes": [
      "geom_678",
      "geom_679",
      "geom_680",
      "geom_681"
     ],
     "center": [
      0.2045,
      0.0925,
      -0.15
     ],
     "joint": {
      "name": "caster_brake_0_175_0_15",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       0.21,
       0.105,
       -0.15
      ],
      "range": [
       0.0,
       0.523599
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       0.21,
       0.105,
       -0.15
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.39,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "furniture_wine_rack_a01",
  "name": "Hardwood wine rack, dark oak",
  "description": "A hardwood wine rack with diagonal bottle compartments, a flat solid top and four short feet. It has no moving parts.",
  "category": "furniture",
  "subcategory": "wine_rack",
  "variant": "a01",
  "semantic_label": "wine rack",
  "wikidata_qcode": "Q2941029",
  "mechanism": "rigid",
  "dimensions_m": [
   0.8,
   0.3836,
   0.8217
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 41.1462,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 650 kg/m3 (Engineering ToolBox, Densities of Wood Species (as in R/simready/densities.json wood_hardwood))",
  "materials": [
   "wood_hardwood"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "measured: As R/simready/densities.json wood_hardwood (wood on wood 0.25-0.5, Engineering ToolBox). (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "14 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [7, 6, 7])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_furniture_wine_rack_a01_01.usd",
    "bytes": 90696422,
    "sha256": "1777f4cbe869b80bdd40969870eb65526c8ae32f4440a2ad45aa80ff3703e55c"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_wine_rack_a01_01.usd.png",
    "bytes": 66256,
    "sha256": "94ce0f7e9d68961a357ce55cf596aae4f40e9017edfc6a78e134ff59a38b573f"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_furniture_wine_rack_a01_01.usd_light.png",
    "bytes": 66925,
    "sha256": "feb63c7228ac01bffb28391a5e225dffe2f636937c995c84961f0120594e942f"
   },
   {
    "path": "simready_usd/textures/oak_grain.png",
    "bytes": 4955320,
    "sha256": "27efae8948a2ae519ac39c5437f273597796b04148344cbc13a99c018130c92d"
   },
   {
    "path": "furniture_wine_rack_a01.zip",
    "bytes": 28434584,
    "sha256": "b76438495f222f9e8f68c5037aaab83a576e4ed05c0d2c96fe98c219fbe30d62"
   }
  ],
  "urls": {
   "usd": "/files/assets/furniture_wine_rack_a01/simready_usd/sm_furniture_wine_rack_a01_01.usd",
   "zip": "/files/assets/furniture_wine_rack_a01/furniture_wine_rack_a01.zip",
   "thumb": "/files/assets/furniture_wine_rack_a01/simready_usd/.thumbs/256x256/sm_furniture_wine_rack_a01_01.usd.png",
   "thumb_light": "/files/assets/furniture_wine_rack_a01/simready_usd/.thumbs/256x256/sm_furniture_wine_rack_a01_01.usd_light.png",
   "metadata": "/files/assets/furniture_wine_rack_a01/metadata.json",
   "license": "/files/assets/furniture_wine_rack_a01/LICENSE.txt",
   "glb": "/files/assets/furniture_wine_rack_a01/preview/furniture_wine_rack_a01.glb"
  },
  "media": {
   "glb": "/files/assets/furniture_wine_rack_a01/preview/furniture_wine_rack_a01.glb",
   "collision_glb": "/files/assets/furniture_wine_rack_a01/preview/furniture_wine_rack_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.4,
     -0.0,
     -0.19
    ],
    "max": [
     0.4,
     0.82,
     0.19
    ]
   },
   "parts": [
    {
     "node": "rack",
     "parent": null,
     "meshes": [
      "geom_14"
     ],
     "center": [
      -0.0,
      0.41,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.41,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_cake_stand_a01",
  "name": "Mini pedestal cake stand",
  "description": "A small pedestal cake stand about 100 mm wide and 76 mm tall, with a flat round top on a short base. It is a single rigid piece with no moving parts.",
  "category": "kitchenware",
  "subcategory": "cake_stand",
  "variant": "a01",
  "semantic_label": "cake stand",
  "wikidata_qcode": "Q25388407",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1016,
   0.1016,
   0.0764
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.227,
  "mass_source": "measured/spec: American Metalcraft PSP4 porcelain cake stand, 4 in diameter, 3 in high, weight 0.5 lb (0.227 kg), https://www.gofoodservice.com/p/american-metalcraft-psp4 (also 0.54 lb at restaurantsupply.com); collider densities scaled so the mass equals 0.227 kg",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "3 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_cake_stand_a01_01.usd",
    "bytes": 57765,
    "sha256": "84cd730f2a2449634afbe080636e39ebffe02ce7d5adeafff95103c9cf03bde3"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_cake_stand_a01_01.usd.png",
    "bytes": 59604,
    "sha256": "b8835a5c4495638bb026cf5c1b718a0d458b021be3237782317e805555cbe939"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_cake_stand_a01_01.usd_light.png",
    "bytes": 57192,
    "sha256": "55cb8bdb6326de0a7f5fbeaedcb57ed661a898d8efdbcd5509ea13424afafe1d"
   },
   {
    "path": "kitchenware_cake_stand_a01.zip",
    "bytes": 142535,
    "sha256": "894b720fe6f68ecc25cd05ce5bbce4880c8b9a18f6ee080b50deed476eda182f"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_cake_stand_a01/simready_usd/sm_kitchenware_cake_stand_a01_01.usd",
   "zip": "/files/assets/kitchenware_cake_stand_a01/kitchenware_cake_stand_a01.zip",
   "thumb": "/files/assets/kitchenware_cake_stand_a01/simready_usd/.thumbs/256x256/sm_kitchenware_cake_stand_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_cake_stand_a01/simready_usd/.thumbs/256x256/sm_kitchenware_cake_stand_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_cake_stand_a01/metadata.json",
   "license": "/files/assets/kitchenware_cake_stand_a01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_cake_stand_a01/preview/kitchenware_cake_stand_a01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_cake_stand_a01/preview/kitchenware_cake_stand_a01.glb",
   "collision_glb": "/files/assets/kitchenware_cake_stand_a01/preview/kitchenware_cake_stand_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0508,
     0.0,
     -0.0508
    ],
    "max": [
     0.0508,
     0.0764,
     0.0508
    ]
   },
   "parts": [
    {
     "node": "stand",
     "parent": null,
     "meshes": [
      "mini_cake_stand_porcelain"
     ],
     "center": [
      0.0,
      0.0382,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.0382,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_camp_mug_a01",
  "name": "Enamelled steel camp mug, navy",
  "description": "A straight-sided steel mug with a navy enamel coating and a white rolled rim. It has a narrow strap handle and no moving parts.",
  "category": "kitchenware",
  "subcategory": "camp_mug",
  "variant": "a01",
  "semantic_label": "enamel mug",
  "wikidata_qcode": "Q81727",
  "mechanism": "rigid",
  "dimensions_m": [
   0.086,
   0.1292,
   0.0965
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.1864,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 7850 kg/m3 (Engineering ToolBox, Metals and Alloys Densities, carbon steel 7850 kg/m3 (the 0.1-0.2 mm vitreous enamel coat is neglected in the 1 mm wall))",
  "materials": [
   "steel_enamelled"
  ],
  "friction": {
   "static": 0.244,
   "dynamic": 0.244,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "148 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [7, 7, 7])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_camp_mug_a01_01.usd",
    "bytes": 1296514,
    "sha256": "2fb6bdfc119e746693eaebf898e5ec4e21f6c416610529d245934c14a5c13ca1"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_camp_mug_a01_01.usd.png",
    "bytes": 59190,
    "sha256": "02dce0d959ccbec1156a30a2a2a8ee86be96ba5348c301932160ae48c92628f0"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_camp_mug_a01_01.usd_light.png",
    "bytes": 58760,
    "sha256": "f5affbe5d830acc2a31b667633a2b3cf49ef2ad3fb2f7c8b25d6d4ae53ba66a4"
   },
   {
    "path": "simready_usd/textures/enamel_navy_base.png",
    "bytes": 56286,
    "sha256": "f3aa9f32910e08a663b7e99da800d6ed0489637c871050d9bc0720a4d5ff2793"
   },
   {
    "path": "simready_usd/textures/enamel_white_base.png",
    "bytes": 78917,
    "sha256": "73e810e7dd2695a1c7f820666304cb29a292e92ce554ad4f5162cdd81f6a5afe"
   },
   {
    "path": "kitchenware_camp_mug_a01.zip",
    "bytes": 647124,
    "sha256": "6fa4fe46c11fbd73256786eec20514081b3985a8c26220d09cf920425855fd51"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_camp_mug_a01/simready_usd/sm_kitchenware_camp_mug_a01_01.usd",
   "zip": "/files/assets/kitchenware_camp_mug_a01/kitchenware_camp_mug_a01.zip",
   "thumb": "/files/assets/kitchenware_camp_mug_a01/simready_usd/.thumbs/256x256/sm_kitchenware_camp_mug_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_camp_mug_a01/simready_usd/.thumbs/256x256/sm_kitchenware_camp_mug_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_camp_mug_a01/metadata.json",
   "license": "/files/assets/kitchenware_camp_mug_a01/LICENSE.txt"
  }
 },
 {
  "id": "kitchenware_cereal_bowl_a01",
  "name": "Cream porcelain cereal bowl",
  "description": "A single empty cereal bowl made of cream glazed porcelain. It is a rigid piece with no moving parts.",
  "category": "kitchenware",
  "subcategory": "cereal_bowl",
  "variant": "a01",
  "semantic_label": "cereal bowl",
  "wikidata_qcode": "Q153988",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1508,
   0.1508,
   0.0651
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.2936,
  "mass_source": "derived: ceramic_glazed 2400 kg/m3 x 0.000122323 m3 (closed lathed porcelain mesh and loop handle volume) = 0.2936 kg; density source: Density: Engineering ToolBox, porcelain 2300 to 2500, stoneware 2200 to 2500, 2400 taken. Friction: assumed 0.4, glazed ceramic on laminate,",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "361 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [8])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_cereal_bowl_a01_01.usd",
    "bytes": 1935447,
    "sha256": "f630d625765bf908c4d4be7a808df2cc752cd4a3a87ceaac4d9dd164c9021cc4"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_cereal_bowl_a01_01.usd.png",
    "bytes": 58660,
    "sha256": "90e78776c2f5cdaf9b31ca7e89a2445a883cb1f965d22ba9c6ce9117272f947e"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_cereal_bowl_a01_01.usd_light.png",
    "bytes": 57218,
    "sha256": "14a7a6012c700a7c98f89e3d55f6e5859202750475c12dd9fd768f9d259cc09b"
   },
   {
    "path": "kitchenware_cereal_bowl_a01.zip",
    "bytes": 548293,
    "sha256": "4800957af7b78f891fef73eeba656ec5d11e5e72de0d5e88959ae3c2658a740f"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_cereal_bowl_a01/simready_usd/sm_kitchenware_cereal_bowl_a01_01.usd",
   "zip": "/files/assets/kitchenware_cereal_bowl_a01/kitchenware_cereal_bowl_a01.zip",
   "thumb": "/files/assets/kitchenware_cereal_bowl_a01/simready_usd/.thumbs/256x256/sm_kitchenware_cereal_bowl_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_cereal_bowl_a01/simready_usd/.thumbs/256x256/sm_kitchenware_cereal_bowl_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_cereal_bowl_a01/metadata.json",
   "license": "/files/assets/kitchenware_cereal_bowl_a01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_cereal_bowl_a01/preview/kitchenware_cereal_bowl_a01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_cereal_bowl_a01/preview/kitchenware_cereal_bowl_a01.glb",
   "collision_glb": "/files/assets/kitchenware_cereal_bowl_a01/preview/kitchenware_cereal_bowl_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.075,
     -0.0,
     -0.075
    ],
    "max": [
     0.075,
     0.065,
     0.075
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_361"
     ],
     "center": [
      -0.0,
      0.0325,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.0325,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_cutting_board_a01",
  "name": "Small rectangular maple cutting board",
  "description": "A solid rectangular cutting board made of maple hardwood with softened corners and no rim. It is a single flat rigid piece.",
  "category": "kitchenware",
  "subcategory": "cutting_board",
  "variant": "a01",
  "semantic_label": "cutting board",
  "wikidata_qcode": "Q617239",
  "mechanism": "rigid",
  "dimensions_m": [
   0.26,
   0.18,
   0.03
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.9078,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 650 kg/m3 (Engineering ToolBox, Densities of Wood Species (as in R/simready/densities.json wood_hardwood))",
  "materials": [
   "wood_hardwood"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "measured: As R/simready/densities.json wood_hardwood (wood on wood 0.25-0.5, Engineering ToolBox). (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "1 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [8, 8, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_cutting_board_a01_01.usd",
    "bytes": 18376,
    "sha256": "f1145d3ea936ac40d9308772f85630fc1a3d5705ca1655c5e856be944c2f8348"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_cutting_board_a01_01.usd.png",
    "bytes": 64016,
    "sha256": "688a85e6cd772a0857ddb5f25899fef875e1cf53df221bf4a0fbfdb1c48d76d7"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_cutting_board_a01_01.usd_light.png",
    "bytes": 62586,
    "sha256": "3f15eaee55b3d85f084c389455bdada9ce214f7db16087761a845a1969fd94f1"
   },
   {
    "path": "simready_usd/textures/maple_end_albedo.png",
    "bytes": 1686297,
    "sha256": "2b01617c13599e5812570dc06e673f92c1dd4e419ed4ac67ecb9681e968a64f2"
   },
   {
    "path": "simready_usd/textures/maple_finish_albedo.png",
    "bytes": 1788734,
    "sha256": "6c7fe2ee51a387a160feba337c4d5bcc01a50290e7d8e8590d4e9a1d91122591"
   },
   {
    "path": "kitchenware_cutting_board_a01.zip",
    "bytes": 3608368,
    "sha256": "82be30006de1bc0175283116f6b661169fd588f51ad32b11a04e37d78289005c"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_cutting_board_a01/simready_usd/sm_kitchenware_cutting_board_a01_01.usd",
   "zip": "/files/assets/kitchenware_cutting_board_a01/kitchenware_cutting_board_a01.zip",
   "thumb": "/files/assets/kitchenware_cutting_board_a01/simready_usd/.thumbs/256x256/sm_kitchenware_cutting_board_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_cutting_board_a01/simready_usd/.thumbs/256x256/sm_kitchenware_cutting_board_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_cutting_board_a01/metadata.json",
   "license": "/files/assets/kitchenware_cutting_board_a01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_cutting_board_a01/preview/kitchenware_cutting_board_a01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_cutting_board_a01/preview/kitchenware_cutting_board_a01.glb",
   "collision_glb": "/files/assets/kitchenware_cutting_board_a01/preview/kitchenware_cutting_board_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.13,
     0.0,
     -0.09
    ],
    "max": [
     0.13,
     0.03,
     0.09
    ]
   },
   "parts": [
    {
     "node": "board",
     "parent": null,
     "meshes": [
      "geom_1",
      "geom_2"
     ],
     "center": [
      0.0,
      0.015,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.015,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_dinner_plate_a01",
  "name": "Cream porcelain dinner plate",
  "description": "A single empty dinner plate made of cream glazed porcelain. It is a flat, rigid piece with no moving parts.",
  "category": "kitchenware",
  "subcategory": "dinner_plate",
  "variant": "a01",
  "semantic_label": "dinner plate",
  "wikidata_qcode": "Q117321684",
  "mechanism": "rigid",
  "dimensions_m": [
   0.26,
   0.26,
   0.0221
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.5631,
  "mass_source": "derived: ceramic_glazed 2400 kg/m3 x 0.000234615 m3 (closed lathed porcelain mesh and loop handle volume) = 0.5631 kg; density source: Density: Engineering ToolBox, porcelain 2300 to 2500, stoneware 2200 to 2500, 2400 taken. Friction: assumed 0.4, glazed ceramic on laminate,",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "201 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [8])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_dinner_plate_a01_01.usd",
    "bytes": 2036934,
    "sha256": "6e46b9c545c9666964d279e227329fdeae7b4a2f895d4d0e380b9d068279734a"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_a01_01.usd.png",
    "bytes": 57505,
    "sha256": "ee71f205432082f56f766819fd5f4ea30832da4960a8502556f9e14c720a94eb"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_a01_01.usd_light.png",
    "bytes": 55567,
    "sha256": "e5fbf7ab0dd06347bc55127019cc2aabf616a0df4fdc951793a0b92f73f2606c"
   },
   {
    "path": "kitchenware_dinner_plate_a01.zip",
    "bytes": 556719,
    "sha256": "cfe02c6166d16a9dc348dc07f00320dc0644ab9bda7206beb2b0fcfcbfd1ed23"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_dinner_plate_a01/simready_usd/sm_kitchenware_dinner_plate_a01_01.usd",
   "zip": "/files/assets/kitchenware_dinner_plate_a01/kitchenware_dinner_plate_a01.zip",
   "thumb": "/files/assets/kitchenware_dinner_plate_a01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_dinner_plate_a01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_dinner_plate_a01/metadata.json",
   "license": "/files/assets/kitchenware_dinner_plate_a01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_dinner_plate_a01/preview/kitchenware_dinner_plate_a01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_dinner_plate_a01/preview/kitchenware_dinner_plate_a01.glb",
   "collision_glb": "/files/assets/kitchenware_dinner_plate_a01/preview/kitchenware_dinner_plate_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.13,
     0.0,
     -0.13
    ],
    "max": [
     0.13,
     0.022,
     0.13
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_201"
     ],
     "center": [
      0.0,
      0.011,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.011,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_dinner_plate_b01",
  "name": "Ceramic dinner plate, glossy navy",
  "description": "A glazed ceramic dinner plate with a recessed round well, a stepped raised rim and a circular foot ring. It is rigid with no moving parts.",
  "category": "kitchenware",
  "subcategory": "dinner_plate",
  "variant": "b01",
  "semantic_label": "dinner plate",
  "wikidata_qcode": "Q117321684",
  "mechanism": "rigid",
  "dimensions_m": [
   0.2126,
   0.2126,
   0.0362
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.5999,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 2400 kg/m3 (Engineering ToolBox, Densities of Common Materials: porcelain 2300-2500, stoneware 2200-2500 kg/m3 (as in R/simready/densities.json ceramic_glazed))",
  "materials": [
   "ceramic_glazed"
  ],
  "friction": {
   "static": 0.349,
   "dynamic": 0.349,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "257 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_dinner_plate_b01_01.usd",
    "bytes": 1914663,
    "sha256": "f95a35a4b3c72128fa687e1cded79ede30ac2bde402ff8949f67d7596fd471e7"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_b01_01.usd.png",
    "bytes": 61131,
    "sha256": "020e56a9447b0b9586dc17f9a9ac74aec88b6e120b406c2a631172dcc05e192f"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_b01_01.usd_light.png",
    "bytes": 61465,
    "sha256": "6b3df3bdfa50c211f04d8d1bee956c417fa1918408ebf51b348ae7f62cc56c56"
   },
   {
    "path": "simready_usd/textures/continuous_ceramic_plate_baked.png",
    "bytes": 79977,
    "sha256": "bead530cac72a8f1aeaa7de035f59b5a904b67004aae232fb913a9e6a8048197"
   },
   {
    "path": "kitchenware_dinner_plate_b01.zip",
    "bytes": 670801,
    "sha256": "25499b6860592549350a319eb57562f7174904cdc712f95121151e9288c4bbcc"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_dinner_plate_b01/simready_usd/sm_kitchenware_dinner_plate_b01_01.usd",
   "zip": "/files/assets/kitchenware_dinner_plate_b01/kitchenware_dinner_plate_b01.zip",
   "thumb": "/files/assets/kitchenware_dinner_plate_b01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_b01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_dinner_plate_b01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_b01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_dinner_plate_b01/metadata.json",
   "license": "/files/assets/kitchenware_dinner_plate_b01/LICENSE.txt"
  }
 },
 {
  "id": "kitchenware_dinner_plate_c01",
  "name": "Melamine dinner plate, satin plum",
  "description": "A melamine dinner plate with a broad round well, a curved raised shoulder, a flared narrow rim and a low moulded foot ring. It is rigid with no moving parts.",
  "category": "kitchenware",
  "subcategory": "dinner_plate",
  "variant": "c01",
  "semantic_label": "dinner plate",
  "wikidata_qcode": "Q117321684",
  "mechanism": "rigid",
  "dimensions_m": [
   0.225,
   0.225,
   0.032
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.3622,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 1500 kg/m3 (Melamine-formaldehyde moulding compound about 1.3-1.9 g/cm3 depending on filler (MakeItFrom, PC vs melamine moulding compound); 1.5 taken for cellulose-filled tableware grade inside that range)",
  "materials": [
   "melamine",
   "plastic"
  ],
  "friction": {
   "static": 0.349,
   "dynamic": 0.349,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "289 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [8, 8, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_dinner_plate_c01_01.usd",
    "bytes": 2150110,
    "sha256": "3540e391c399ff5c155d6e21fc233e8b9940995305f570bc204a0d788d9de95a"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_c01_01.usd.png",
    "bytes": 59990,
    "sha256": "faa1fda8b5f6876eaa86261973d724f6987c3cdbc12f4f8c7717fc66e9cd33a1"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_c01_01.usd_light.png",
    "bytes": 59560,
    "sha256": "6db3fade4181ac3604a6db08a8d02e04793fec38e4317c92ef5e392e1f911a5d"
   },
   {
    "path": "simready_usd/textures/satin_plum_albedo.png",
    "bytes": 39073,
    "sha256": "143e742e6788c6941b7cafff65456e25d688fb9048bbe031141e5cafe6d1e155"
   },
   {
    "path": "kitchenware_dinner_plate_c01.zip",
    "bytes": 663301,
    "sha256": "5415b0543c1dc99fd3f73a164d7863ed092561988f693ef929fd250a6e91b293"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_dinner_plate_c01/simready_usd/sm_kitchenware_dinner_plate_c01_01.usd",
   "zip": "/files/assets/kitchenware_dinner_plate_c01/kitchenware_dinner_plate_c01.zip",
   "thumb": "/files/assets/kitchenware_dinner_plate_c01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_c01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_dinner_plate_c01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_c01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_dinner_plate_c01/metadata.json",
   "license": "/files/assets/kitchenware_dinner_plate_c01/LICENSE.txt"
  }
 },
 {
  "id": "kitchenware_dinner_plate_d01",
  "name": "Plastic dinner plate, sunflower yellow",
  "description": "An opaque polypropylene dinner plate with a recessed round well and a sloping rim with one low concentric ridge. It has a flat ring base and no moving parts.",
  "category": "kitchenware",
  "subcategory": "dinner_plate",
  "variant": "d01",
  "semantic_label": "dinner plate",
  "wikidata_qcode": "Q117321684",
  "mechanism": "rigid",
  "dimensions_m": [
   0.205,
   0.205,
   0.026
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.13,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 905 kg/m3 (PP homopolymer and copolymer 0.900-0.910 g/cm3 (amesweb.info Density of Plastics; MakeItFrom PP homopolymer))",
  "materials": [
   "polypropylene"
  ],
  "friction": {
   "static": 0.305,
   "dynamic": 0.305,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "321 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [8, 8, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_dinner_plate_d01_01.usd",
    "bytes": 18994399,
    "sha256": "c49d5922a1bbb7e079dcc4466b5d7640136162e23341a95899e96e93dc1aacbc"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_d01_01.usd.png",
    "bytes": 62893,
    "sha256": "f272bc6451f35cff23d0ec9763d9a2559ffab3040a35f70f1ad143cbdaf2a7da"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_d01_01.usd_light.png",
    "bytes": 62454,
    "sha256": "f70c0df58836da54061f498a62fd272c669df0064fbc013c32ec2704d5f8ddbd"
   },
   {
    "path": "simready_usd/textures/sunflower_pigment.png",
    "bytes": 57138,
    "sha256": "fbcc49ee03a305db84459089278cd4fbd764c40cf5540a18140c070c76d73957"
   },
   {
    "path": "kitchenware_dinner_plate_d01.zip",
    "bytes": 4621603,
    "sha256": "6d229e6752fd86e2126b7c91c9336929ba35e8fd8d24103ead3f36178fd88194"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_dinner_plate_d01/simready_usd/sm_kitchenware_dinner_plate_d01_01.usd",
   "zip": "/files/assets/kitchenware_dinner_plate_d01/kitchenware_dinner_plate_d01.zip",
   "thumb": "/files/assets/kitchenware_dinner_plate_d01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_d01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_dinner_plate_d01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_d01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_dinner_plate_d01/metadata.json",
   "license": "/files/assets/kitchenware_dinner_plate_d01/LICENSE.txt"
  }
 },
 {
  "id": "kitchenware_dinner_plate_e01",
  "name": "Plastic dinner plate, matte slate blue",
  "description": "An opaque matte polypropylene dinner plate with a broad round well, a tall curved shoulder, a narrow outward lip and an integral foot ring. It is rigid with no moving parts.",
  "category": "kitchenware",
  "subcategory": "dinner_plate",
  "variant": "e01",
  "semantic_label": "dinner plate",
  "wikidata_qcode": "Q117321684",
  "mechanism": "rigid",
  "dimensions_m": [
   0.228,
   0.228,
   0.0342
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.1598,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 905 kg/m3 (PP homopolymer and copolymer 0.900-0.910 g/cm3 (amesweb.info Density of Plastics; MakeItFrom PP homopolymer))",
  "materials": [
   "polypropylene"
  ],
  "friction": {
   "static": 0.305,
   "dynamic": 0.305,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "513 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [9, 8, 9])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed; build.py has a conditional import/bake of input/mesh_hy31.glb that did not run (file absent)."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_dinner_plate_e01_01.usd",
    "bytes": 2963032,
    "sha256": "c1891470cc5e49fdc8f3873d9c144a57f32a53b49c0605d9eb69837d46be1737"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_e01_01.usd.png",
    "bytes": 57765,
    "sha256": "9bf4731bfeeb4356fe51d51d28d9d21827d904dcee97c9b9193c1181a94374ae"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_e01_01.usd_light.png",
    "bytes": 57285,
    "sha256": "db2d2d4dd68cace8d35f7bdc2ffed129488ba1f587790d9acd73f9682f3c7538"
   },
   {
    "path": "simready_usd/textures/slate_blue_microtexture.png",
    "bytes": 267659,
    "sha256": "61df89420ac950f242c7677db72ec24fd45f4d616088dfe90b43f33aee4a0e7d"
   },
   {
    "path": "kitchenware_dinner_plate_e01.zip",
    "bytes": 1069099,
    "sha256": "b1109f008046c47c76de1eafc856c099c48677e72fe9d3f9b31dd81b6395a341"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_dinner_plate_e01/simready_usd/sm_kitchenware_dinner_plate_e01_01.usd",
   "zip": "/files/assets/kitchenware_dinner_plate_e01/kitchenware_dinner_plate_e01.zip",
   "thumb": "/files/assets/kitchenware_dinner_plate_e01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_e01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_dinner_plate_e01/simready_usd/.thumbs/256x256/sm_kitchenware_dinner_plate_e01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_dinner_plate_e01/metadata.json",
   "license": "/files/assets/kitchenware_dinner_plate_e01/LICENSE.txt"
  }
 },
 {
  "id": "kitchenware_dish_rack_b01",
  "name": "Compact ivory polypropylene dish rack",
  "description": "A compact dish rack made of matte ivory polypropylene with a rounded rectangular outline, an open ladder-rail base and low rounded ribbed fins for holding plates. It is a single rigid piece.",
  "category": "kitchenware",
  "subcategory": "dish_rack",
  "variant": "b01",
  "semantic_label": "dish rack",
  "wikidata_qcode": "Q2571478",
  "mechanism": "rigid",
  "dimensions_m": [
   0.31,
   0.205,
   0.113
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.4788,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 905 kg/m3 (PP homopolymer and copolymer 0.900-0.910 g/cm3 (amesweb.info Density of Plastics; MakeItFrom PP homopolymer))",
  "materials": [
   "polypropylene"
  ],
  "friction": {
   "static": 0.305,
   "dynamic": 0.305,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "336 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_dish_rack_b01_01.usd",
    "bytes": 2765279,
    "sha256": "fd933acc954c68bbbe8d9c109dacb266d974c9230a269dbbed173859ff57beee"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dish_rack_b01_01.usd.png",
    "bytes": 74152,
    "sha256": "20920bc292b36625808d0d65397fba675d509817354f5fc824521f4436b7aab0"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dish_rack_b01_01.usd_light.png",
    "bytes": 74535,
    "sha256": "566d1a69fdba4639083de0bba9bc8574878176d585c73d86ec753e7c2adb58d4"
   },
   {
    "path": "kitchenware_dish_rack_b01.zip",
    "bytes": 541518,
    "sha256": "f073cf1dfe7c5c7fecc827dd0e9802532e790eec6920533850613c1b35e5888f"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_dish_rack_b01/simready_usd/sm_kitchenware_dish_rack_b01_01.usd",
   "zip": "/files/assets/kitchenware_dish_rack_b01/kitchenware_dish_rack_b01.zip",
   "thumb": "/files/assets/kitchenware_dish_rack_b01/simready_usd/.thumbs/256x256/sm_kitchenware_dish_rack_b01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_dish_rack_b01/simready_usd/.thumbs/256x256/sm_kitchenware_dish_rack_b01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_dish_rack_b01/metadata.json",
   "license": "/files/assets/kitchenware_dish_rack_b01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_dish_rack_b01/preview/kitchenware_dish_rack_b01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_dish_rack_b01/preview/kitchenware_dish_rack_b01.glb",
   "collision_glb": "/files/assets/kitchenware_dish_rack_b01/preview/kitchenware_dish_rack_b01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.155,
     0.0,
     -0.1025
    ],
    "max": [
     0.155,
     0.113,
     0.1025
    ]
   },
   "parts": [
    {
     "node": "rack",
     "parent": null,
     "meshes": [
      "geom_336"
     ],
     "center": [
      0.0,
      0.0565,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.0565,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_dish_rack_c01",
  "name": "Large pale-blue ABS dish rack",
  "description": "A large dish rack made of satin pale-blue ABS with arched end frames, an open rail base on four flat feet and tall gusseted fins for holding plates. It is a single rigid piece.",
  "category": "kitchenware",
  "subcategory": "dish_rack",
  "variant": "c01",
  "semantic_label": "dish rack",
  "wikidata_qcode": "Q2571478",
  "mechanism": "rigid",
  "dimensions_m": [
   0.4801,
   0.36,
   0.2
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.7404,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 1050 kg/m3 (MatWeb overview of ABS, 1.04-1.06 g/cm3 (as in R/simready/densities.json plastic_abs))",
  "materials": [
   "plastic_abs"
  ],
  "friction": {
   "static": 0.305,
   "dynamic": 0.305,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "208 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [8, 6, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_dish_rack_c01_01.usd",
    "bytes": 97234424,
    "sha256": "bcbca335cb8639cc6819b63531777b8a2dcf92a495b9f493643bd47be670ff95"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dish_rack_c01_01.usd.png",
    "bytes": 75601,
    "sha256": "fe32ae7096dc0f9bb9c3034ff8ce7939605ecbaff73f0d80dbd16c49ca794d8e"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_dish_rack_c01_01.usd_light.png",
    "bytes": 76710,
    "sha256": "5e1027b00fc08198d978ec8e86a72ec06ca060a86d498e80fdc3abe6a36001ee"
   },
   {
    "path": "kitchenware_dish_rack_c01.zip",
    "bytes": 10639334,
    "sha256": "f05a4b8b4f84150bfea0f00982376eb99b98aa774c402726d251ee3b472e9e69"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_dish_rack_c01/simready_usd/sm_kitchenware_dish_rack_c01_01.usd",
   "zip": "/files/assets/kitchenware_dish_rack_c01/kitchenware_dish_rack_c01.zip",
   "thumb": "/files/assets/kitchenware_dish_rack_c01/simready_usd/.thumbs/256x256/sm_kitchenware_dish_rack_c01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_dish_rack_c01/simready_usd/.thumbs/256x256/sm_kitchenware_dish_rack_c01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_dish_rack_c01/metadata.json",
   "license": "/files/assets/kitchenware_dish_rack_c01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_dish_rack_c01/preview/kitchenware_dish_rack_c01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_dish_rack_c01/preview/kitchenware_dish_rack_c01.glb",
   "collision_glb": "/files/assets/kitchenware_dish_rack_c01/preview/kitchenware_dish_rack_c01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.24,
     -0.0,
     -0.18
    ],
    "max": [
     0.24,
     0.19996,
     0.18
    ]
   },
   "parts": [
    {
     "node": "rack",
     "parent": null,
     "meshes": [
      "geom_208"
     ],
     "center": [
      0.0,
      0.09998,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.09998,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_footed_bowl_a01",
  "name": "Ceramic footed bowl, gray-green",
  "description": "A small shallow ceramic bowl in gray-green standing on a low foot ring. It is a single rigid piece with no moving parts.",
  "category": "kitchenware",
  "subcategory": "footed_bowl",
  "variant": "a01",
  "semantic_label": "ceramic bowl",
  "wikidata_qcode": "Q153988",
  "mechanism": "rigid",
  "dimensions_m": [
   0.2201,
   0.2201,
   0.11
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.7407,
  "mass_source": "derived: ceramic_glazed 2400 kg/m3 x 0.000308614 m3 (closed lathe basin and hollow foot ceramic volume) = 0.7407 kg; density source: Density: Engineering ToolBox, porcelain 2300 to 2500, stoneware 2200 to 2500, 2400 taken. Friction: assumed 0.4, glazed ceramic on laminate,",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "521 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [8, 8])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; build.py has a conditional import/bake of input/mesh_hy31.glb that did not run (file absent)."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_footed_bowl_a01_01.usd",
    "bytes": 1927418,
    "sha256": "8430a6cf19b3f0002676dfcda98138be1ffac28b7251763084b8cb8775c5e5f0"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_footed_bowl_a01_01.usd.png",
    "bytes": 66937,
    "sha256": "c16e160963dcacb6f51e68fd7b942d80f94bd3ec5837c4fd6c0d7e8cf0d4f188"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_footed_bowl_a01_01.usd_light.png",
    "bytes": 65542,
    "sha256": "cdd8a23519b8ffb630a2e21ac69835d6bb0d4912a4c5a8254f6777e94486046c"
   },
   {
    "path": "simready_usd/textures/glaze_from_product.png",
    "bytes": 108529,
    "sha256": "afce86a71d9edab316a7f5b1da4a3218052d21bdd0b37325a90f6924398f2e94"
   },
   {
    "path": "kitchenware_footed_bowl_a01.zip",
    "bytes": 622286,
    "sha256": "7c13d426c948526c363d770d4b94a76dfdca0e294845dca29af027d0efb0f461"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_footed_bowl_a01/simready_usd/sm_kitchenware_footed_bowl_a01_01.usd",
   "zip": "/files/assets/kitchenware_footed_bowl_a01/kitchenware_footed_bowl_a01.zip",
   "thumb": "/files/assets/kitchenware_footed_bowl_a01/simready_usd/.thumbs/256x256/sm_kitchenware_footed_bowl_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_footed_bowl_a01/simready_usd/.thumbs/256x256/sm_kitchenware_footed_bowl_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_footed_bowl_a01/metadata.json",
   "license": "/files/assets/kitchenware_footed_bowl_a01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_footed_bowl_a01/preview/kitchenware_footed_bowl_a01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_footed_bowl_a01/preview/kitchenware_footed_bowl_a01.glb",
   "collision_glb": "/files/assets/kitchenware_footed_bowl_a01/preview/kitchenware_footed_bowl_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.11,
     0.0,
     -0.11
    ],
    "max": [
     0.11,
     0.11,
     0.11
    ]
   },
   "parts": [
    {
     "node": "ceramic_bowl",
     "parent": null,
     "meshes": [
      "geom_521",
      "geom_522",
      "geom_523",
      "geom_524"
     ],
     "center": [
      -0.0,
      0.055,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.055,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_melamine_mug_a01",
  "name": "Melamine picnic mug, glossy cream",
  "description": "A straight-sided melamine mug with a glossy cream finish, a rounded rim, a low foot ring and a D-shaped handle. It is rigid with no moving parts.",
  "category": "kitchenware",
  "subcategory": "melamine_mug",
  "variant": "a01",
  "semantic_label": "melamine mug",
  "wikidata_qcode": "Q81727",
  "mechanism": "rigid",
  "dimensions_m": [
   0.08,
   0.1262,
   0.0967
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.1201,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 1500 kg/m3 (Melamine-formaldehyde moulding compound about 1.3-1.9 g/cm3 depending on filler (MakeItFrom, PC vs melamine moulding compound); 1.5 taken for cellulose-filled tableware grade inside that range)",
  "materials": [
   "melamine"
  ],
  "friction": {
   "static": 0.349,
   "dynamic": 0.349,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "110 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [7, 7, 7])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed; build.py has a conditional import/bake of input/mesh_hy31.glb that did not run (file absent)."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_melamine_mug_a01_01.usd",
    "bytes": 4435226,
    "sha256": "b484f73f4d33dae0c46b90bf6648653d1ce781c9ec339d1415133483c3cebe91"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_melamine_mug_a01_01.usd.png",
    "bytes": 57395,
    "sha256": "8ee418b37247f19388d33a25325e38b9094d61dceb56eeb57510a6ac93be8513"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_melamine_mug_a01_01.usd_light.png",
    "bytes": 57223,
    "sha256": "a813a6acfdc418119702e0aaac7b5167974c44dbd534c3cc5730648c327f19b5"
   },
   {
    "path": "kitchenware_melamine_mug_a01.zip",
    "bytes": 1059137,
    "sha256": "8f7664b51903476ce6bc5d2dbea563aa6775e11349baa39c123c46580d5cab5c"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_melamine_mug_a01/simready_usd/sm_kitchenware_melamine_mug_a01_01.usd",
   "zip": "/files/assets/kitchenware_melamine_mug_a01/kitchenware_melamine_mug_a01.zip",
   "thumb": "/files/assets/kitchenware_melamine_mug_a01/simready_usd/.thumbs/256x256/sm_kitchenware_melamine_mug_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_melamine_mug_a01/simready_usd/.thumbs/256x256/sm_kitchenware_melamine_mug_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_melamine_mug_a01/metadata.json",
   "license": "/files/assets/kitchenware_melamine_mug_a01/LICENSE.txt"
  }
 },
 {
  "id": "kitchenware_milk_bottle_a01",
  "name": "Glass milk bottle, blue cap",
  "description": "A reusable clear glass milk bottle filled with milk. It has a blue ribbed polypropylene screw cap.",
  "category": "kitchenware",
  "subcategory": "milk_bottle",
  "variant": "a01",
  "semantic_label": "milk bottle",
  "wikidata_qcode": "Q2995020",
  "mechanism": "articulated",
  "dimensions_m": [
   0.0815,
   0.0815,
   0.21
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.8637,
  "mass_source": "derived: integrated glass mesh volume*2500 kg/m3 scaled(21/22)^3, plus actual particle milk mass (+2 more bodies)",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "cap_remove",
    "type": "prismatic",
    "range": [
     0.0,
     0.09
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "cap_turn",
    "type": "revolute",
    "range": [
     0.0,
     9.42478
    ],
    "continuous": false,
    "units": "rad"
   },
   {
    "name": "cap_lift",
    "type": "prismatic",
    "range": [
     0.0,
     0.00429545
    ],
    "continuous": false,
    "units": "m"
   }
  ],
  "collision": "450 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [7])",
   "assembly_audit": null,
   "joint_sweep": true,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures.",
   "mechanism_note": "label expects rigid, package is articulated"
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_milk_bottle_a01_01.usd",
    "bytes": 6396076,
    "sha256": "90ac1dd2251b36e52bd627a4255363ab474c8743365bdee03e310e10116df937"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_milk_bottle_a01_01.usd.png",
    "bytes": 56698,
    "sha256": "083bd92ecab498dedca4a331c1e80675b0f4a273a3a0b5d8dd150c88317a5018"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_milk_bottle_a01_01.usd_light.png",
    "bytes": 56817,
    "sha256": "4361523846b1c2432354fbe9fd9bd3d59d7e26a70c2b77b9e2eaa7b862f99dfc"
   },
   {
    "path": "kitchenware_milk_bottle_a01.zip",
    "bytes": 1148283,
    "sha256": "d3ecddad0647ae59160f3025e7c7e54d3836839ff887f78ead97bbbd04d38d14"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_milk_bottle_a01/simready_usd/sm_kitchenware_milk_bottle_a01_01.usd",
   "zip": "/files/assets/kitchenware_milk_bottle_a01/kitchenware_milk_bottle_a01.zip",
   "thumb": "/files/assets/kitchenware_milk_bottle_a01/simready_usd/.thumbs/256x256/sm_kitchenware_milk_bottle_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_milk_bottle_a01/simready_usd/.thumbs/256x256/sm_kitchenware_milk_bottle_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_milk_bottle_a01/metadata.json",
   "license": "/files/assets/kitchenware_milk_bottle_a01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_milk_bottle_a01/preview/kitchenware_milk_bottle_a01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_milk_bottle_a01/preview/kitchenware_milk_bottle_a01.glb",
   "collision_glb": "/files/assets/kitchenware_milk_bottle_a01/preview/kitchenware_milk_bottle_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.04057,
     -0.0,
     -0.04057
    ],
    "max": [
     0.04057,
     0.21,
     0.04057
    ]
   },
   "parts": [
    {
     "node": "body",
     "parent": null,
     "meshes": [
      "geom_417",
      "geom_418",
      "geom_419",
      "geom_420"
     ],
     "center": [
      0.0,
      0.10166,
      0.0
     ],
     "joint": null
    },
    {
     "node": "cap_remove",
     "parent": "body",
     "meshes": [],
     "center": null,
     "joint": {
      "name": "cap_remove",
      "type": "prismatic",
      "axis": [
       0.0,
       1.0,
       0.0
      ],
      "origin": [
       0.0,
       0.193773,
       0.0
      ],
      "range": [
       0.0,
       0.09
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       1.0,
       0.0
      ],
      "origin_parent": [
       0.0,
       0.193773,
       0.0
      ]
     }
    },
    {
     "node": "cap",
     "parent": "cap_remove",
     "meshes": [
      "geom_454",
      "geom_455",
      "geom_456",
      "geom_457",
      "geom_458",
      "geom_459",
      "geom_460",
      "geom_461",
      "geom_462",
      "geom_463",
      "geom_464",
      "geom_465",
      "geom_466",
      "geom_467",
      "geom_468",
      "geom_469",
      "geom_470",
      "geom_471",
      "geom_472",
      "geom_473",
      "geom_474",
      "geom_475",
      "geom_476",
      "geom_477",
      "geom_478",
      "geom_479",
      "geom_480",
      "geom_481",
      "geom_482",
      "geom_483",
      "geom_484",
      "geom_485",
      "geom_486",
      "geom_487",
      "geom_488",
      "geom_489",
      "geom_490",
      "geom_491",
      "geom_492",
      "geom_493",
      "geom_494",
      "geom_495",
      "geom_496",
      "geom_497",
      "geom_498",
      "geom_499",
      "geom_500",
      "geom_501",
      "geom_502",
      "geom_503",
      "geom_504",
      "geom_505",
      "geom_506",
      "geom_507",
      "geom_508",
      "geom_509",
      "geom_510",
      "geom_511",
      "geom_512",
      "geom_513",
      "geom_514",
      "geom_515",
      "geom_516",
      "geom_517",
      "geom_518",
      "geom_519",
      "geom_520",
      "geom_521",
      "geom_522",
      "geom_523",
      "geom_524",
      "geom_525",
      "geom_526",
      "geom_527",
      "geom_528",
      "geom_529",
      "geom_530",
      "geom_531",
      "geom_532",
      "geom_533",
      "geom_534"
     ],
     "center": [
      0.0,
      0.20189,
      0.0
     ],
     "joint": {
      "name": "cap_lift",
      "type": "prismatic",
      "axis": [
       0.0,
       1.0,
       0.0
      ],
      "origin": [
       0.0,
       0.193773,
       0.0
      ],
      "range": [
       0.0,
       0.004295
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       1.0,
       0.0
      ],
      "origin_parent": [
       0.0,
       0.0,
       0.0
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.105,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_mug_c01",
  "name": "Glossy red polycarbonate mug",
  "description": "An opaque glossy red polycarbonate mug with a slightly bulbous body, a rounded lip, a low annular foot and a broad C-shaped handle. It has no moving parts.",
  "category": "kitchenware",
  "subcategory": "mug",
  "variant": "c01",
  "semantic_label": "plastic mug",
  "wikidata_qcode": "Q81727",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1031,
   0.1465,
   0.088
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.1501,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 1200 kg/m3 (Polycarbonate 1.20 g/cm3 (Professional Plastics mechanical properties table; Omnexus 1.15-1.20))",
  "materials": [
   "polycarbonate"
  ],
  "friction": {
   "static": 0.305,
   "dynamic": 0.305,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "152 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_mug_c01_01.usd",
    "bytes": 4299046,
    "sha256": "dffc7ad7da3862b75116d95025b0c61640f135892dd0653680b04f4de55b269c"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_mug_c01_01.usd.png",
    "bytes": 59827,
    "sha256": "5413d34593ab57472c2f6fb87f51353826047ea65a69df4fef5f09b7f20c7708"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_mug_c01_01.usd_light.png",
    "bytes": 60919,
    "sha256": "c85f25f8b00938ecb2c04bf9a746ff80a639ae0b958a9cdc1408bb84551cf0cf"
   },
   {
    "path": "kitchenware_mug_c01.zip",
    "bytes": 1118233,
    "sha256": "63084c1192963519821c21ecbaac30a65aecc64088c9cc33e9a6337e62ee61fe"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_mug_c01/simready_usd/sm_kitchenware_mug_c01_01.usd",
   "zip": "/files/assets/kitchenware_mug_c01/kitchenware_mug_c01.zip",
   "thumb": "/files/assets/kitchenware_mug_c01/simready_usd/.thumbs/256x256/sm_kitchenware_mug_c01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_mug_c01/simready_usd/.thumbs/256x256/sm_kitchenware_mug_c01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_mug_c01/metadata.json",
   "license": "/files/assets/kitchenware_mug_c01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_mug_c01/preview/kitchenware_mug_c01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_mug_c01/preview/kitchenware_mug_c01.glb",
   "collision_glb": "/files/assets/kitchenware_mug_c01/preview/kitchenware_mug_c01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0515,
     0.0,
     -0.0725
    ],
    "max": [
     0.0515,
     0.087,
     0.0725
    ]
   },
   "parts": [
    {
     "node": "mug",
     "parent": null,
     "meshes": [
      "geom_152",
      "geom_153"
     ],
     "center": [
      0.0,
      0.0435,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.0435,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_mug_d01",
  "name": "Melamine mug, terracotta tulip shape",
  "description": "A tulip-shaped melamine mug with a satin terracotta finish, a gently flared lip, a small round foot and an oval handle. It has no moving parts.",
  "category": "kitchenware",
  "subcategory": "mug",
  "variant": "d01",
  "semantic_label": "melamine mug",
  "wikidata_qcode": "Q81727",
  "mechanism": "rigid",
  "dimensions_m": [
   0.098,
   0.1413,
   0.1049
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.2051,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 1500 kg/m3 (Melamine-formaldehyde moulding compound about 1.3-1.9 g/cm3 depending on filler (MakeItFrom, PC vs melamine moulding compound); 1.5 taken for cellulose-filled tableware grade inside that range)",
  "materials": [
   "melamine"
  ],
  "friction": {
   "static": 0.349,
   "dynamic": 0.349,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "252 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_mug_d01_01.usd",
    "bytes": 34866668,
    "sha256": "051d929d5eeabba403c0a20cd5173b45f68cccc5ff1773e77135734ba45ae2d4"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_mug_d01_01.usd.png",
    "bytes": 61528,
    "sha256": "05d16a30b3bdf86b1899a091562c2034e76f9e3d5fd5ef616066d7b652019d6d"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_mug_d01_01.usd_light.png",
    "bytes": 60190,
    "sha256": "543d5d014db68d43dca7553ea69b28c6c641a16f28cae996898e722f75b1be4b"
   },
   {
    "path": "kitchenware_mug_d01.zip",
    "bytes": 12820252,
    "sha256": "6dcab272a7a7ed03902972e5be8ab1a2b8134387a25659191b6af64fb4a0d966"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_mug_d01/simready_usd/sm_kitchenware_mug_d01_01.usd",
   "zip": "/files/assets/kitchenware_mug_d01/kitchenware_mug_d01.zip",
   "thumb": "/files/assets/kitchenware_mug_d01/simready_usd/.thumbs/256x256/sm_kitchenware_mug_d01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_mug_d01/simready_usd/.thumbs/256x256/sm_kitchenware_mug_d01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_mug_d01/metadata.json",
   "license": "/files/assets/kitchenware_mug_d01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_mug_d01/preview/kitchenware_mug_d01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_mug_d01/preview/kitchenware_mug_d01.glb",
   "collision_glb": "/files/assets/kitchenware_mug_d01/preview/kitchenware_mug_d01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.049,
     -0.0,
     -0.06935
    ],
    "max": [
     0.049,
     0.09474,
     0.06935
    ]
   },
   "parts": [
    {
     "node": "mug",
     "parent": null,
     "meshes": [
      "geom_252"
     ],
     "center": [
      -0.0,
      0.04737,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.04737,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_mug_e01",
  "name": "Cream porcelain mug",
  "description": "A single empty mug made of cream glazed porcelain with a side handle. It is a rigid piece with no moving parts.",
  "category": "kitchenware",
  "subcategory": "mug",
  "variant": "e01",
  "semantic_label": "mug",
  "wikidata_qcode": "Q81727",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1158,
   0.09,
   0.1002
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.2596,
  "mass_source": "derived: ceramic_glazed 2400 kg/m3 x 0.000108164 m3 (closed lathed porcelain mesh and loop handle volume) = 0.2596 kg; density source: Density: Engineering ToolBox, porcelain 2300 to 2500, stoneware 2200 to 2500, 2400 taken. Friction: assumed 0.4, glazed ceramic on laminate,",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "127 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [7])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_mug_e01_01.usd",
    "bytes": 2439959,
    "sha256": "2ba945e8075b8d4f397645b1ed3fc4f53482774d5e9b835919f529885ea671b8"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_mug_e01_01.usd.png",
    "bytes": 58232,
    "sha256": "643dbc2a7b6fd4ff96d907adaa4039eabd4a52bd767a5fe28c235263cf8b7e04"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_mug_e01_01.usd_light.png",
    "bytes": 57871,
    "sha256": "8f8afccb69bd87b80990829188422ceb7a14dbed21bd9584e50b6d3c1f67bdd3"
   },
   {
    "path": "kitchenware_mug_e01.zip",
    "bytes": 743181,
    "sha256": "2679a5525a584f75b6466465fd8d564ac90f9866f27ab48fb23c3cbba04f2286"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_mug_e01/simready_usd/sm_kitchenware_mug_e01_01.usd",
   "zip": "/files/assets/kitchenware_mug_e01/kitchenware_mug_e01.zip",
   "thumb": "/files/assets/kitchenware_mug_e01/simready_usd/.thumbs/256x256/sm_kitchenware_mug_e01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_mug_e01/simready_usd/.thumbs/256x256/sm_kitchenware_mug_e01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_mug_e01/metadata.json",
   "license": "/files/assets/kitchenware_mug_e01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_mug_e01/preview/kitchenware_mug_e01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_mug_e01/preview/kitchenware_mug_e01.glb",
   "collision_glb": "/files/assets/kitchenware_mug_e01/preview/kitchenware_mug_e01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0575,
     -0.0,
     -0.045
    ],
    "max": [
     0.0575,
     0.10019,
     0.045
    ]
   },
   "parts": [
    {
     "node": "carcass",
     "parent": null,
     "meshes": [
      "geom_127",
      "geom_128"
     ],
     "center": [
      -0.0,
      0.05009,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.05009,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_mug_f01",
  "name": "Ceramic mug, white, rounded square",
  "description": "A glazed ceramic mug with a softly squared body, a rounded square rim and a flat base on low foot edges. It has a squared loop handle and no moving parts.",
  "category": "kitchenware",
  "subcategory": "mug",
  "variant": "f01",
  "semantic_label": "mug",
  "wikidata_qcode": "Q81727",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1158,
   0.1559,
   0.1163
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.6867,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 2400 kg/m3 (Engineering ToolBox, Densities of Common Materials: porcelain 2300-2500, stoneware 2200-2500 kg/m3 (as in R/simready/densities.json ceramic_glazed))",
  "materials": [
   "ceramic_glazed"
  ],
  "friction": {
   "static": 0.21,
   "dynamic": 0.21,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "292 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [7, 7, 7])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_mug_f01_01.usd",
    "bytes": 6891070,
    "sha256": "28ccfb011baf27d32cf0ae0edb02646bd0687f651dcddc8fc7095f4fcb49d77b"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_mug_f01_01.usd.png",
    "bytes": 58618,
    "sha256": "842eec4ed8b57866eb484ff50160befe41b8eb2a271e90515e3f9901cf491c37"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_mug_f01_01.usd_light.png",
    "bytes": 58199,
    "sha256": "5948f0b4738be6378ccea9ae14879729322427916ef2ff9f43d125b258cf1c5b"
   },
   {
    "path": "simready_usd/textures/white_satin_albedo.png",
    "bytes": 29764,
    "sha256": "3a7de5fec1f5a79e3760c26cb1a1b69198209925cca128cff1a4cec07186ac7c"
   },
   {
    "path": "kitchenware_mug_f01.zip",
    "bytes": 3286807,
    "sha256": "ce8b7aba3dc1a2ec87b60ff7a18761373d5c37f6ba43361509650790a6703af1"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_mug_f01/simready_usd/sm_kitchenware_mug_f01_01.usd",
   "zip": "/files/assets/kitchenware_mug_f01/kitchenware_mug_f01.zip",
   "thumb": "/files/assets/kitchenware_mug_f01/simready_usd/.thumbs/256x256/sm_kitchenware_mug_f01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_mug_f01/simready_usd/.thumbs/256x256/sm_kitchenware_mug_f01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_mug_f01/metadata.json",
   "license": "/files/assets/kitchenware_mug_f01/LICENSE.txt"
  }
 },
 {
  "id": "kitchenware_plastic_mug_b01",
  "name": "Large plastic utility mug, blue",
  "description": "A large cylindrical polypropylene mug with a matte royal-blue finish, a slightly flared rim and a broad rounded handle. It is rigid with no moving parts.",
  "category": "kitchenware",
  "subcategory": "plastic_mug",
  "variant": "b01",
  "semantic_label": "plastic mug",
  "wikidata_qcode": "Q81727",
  "mechanism": "rigid",
  "dimensions_m": [
   0.109,
   0.1691,
   0.1364
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.1782,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 905 kg/m3 (PP homopolymer and copolymer 0.900-0.910 g/cm3 (amesweb.info Density of Plastics; MakeItFrom PP homopolymer))",
  "materials": [
   "polypropylene"
  ],
  "friction": {
   "static": 0.305,
   "dynamic": 0.305,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "108 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_plastic_mug_b01_01.usd",
    "bytes": 661094,
    "sha256": "76dc2e933d0e7a2d2736024556badd725bd886174f6c2aec12fca64b5f353fc0"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_plastic_mug_b01_01.usd.png",
    "bytes": 58630,
    "sha256": "7fae832e0ee8a7ab75a1155ae06f020fef9a5fb128ce8f6b7aac4bdd4914cc52"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_plastic_mug_b01_01.usd_light.png",
    "bytes": 58669,
    "sha256": "ccbbbe6c7a8e0d78dfb5fa7624b25960008288f87c6014013b0d11b068d751af"
   },
   {
    "path": "simready_usd/textures/royal_blue_matte_albedo.png",
    "bytes": 130421,
    "sha256": "72cfd25c3fe5cc5b749b805014652808503fdcecdccc070f2aa3f418c2b912c8"
   },
   {
    "path": "kitchenware_plastic_mug_b01.zip",
    "bytes": 461966,
    "sha256": "e957702e8174c4f7422a8640b560e9e5e40812a88644631c9ff77b70285d4d72"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_plastic_mug_b01/simready_usd/sm_kitchenware_plastic_mug_b01_01.usd",
   "zip": "/files/assets/kitchenware_plastic_mug_b01/kitchenware_plastic_mug_b01.zip",
   "thumb": "/files/assets/kitchenware_plastic_mug_b01/simready_usd/.thumbs/256x256/sm_kitchenware_plastic_mug_b01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_plastic_mug_b01/simready_usd/.thumbs/256x256/sm_kitchenware_plastic_mug_b01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_plastic_mug_b01/metadata.json",
   "license": "/files/assets/kitchenware_plastic_mug_b01/LICENSE.txt"
  }
 },
 {
  "id": "kitchenware_salad_plate_a01",
  "name": "Orange polypropylene salad plate",
  "description": "A small round salad plate made of satin orange polypropylene with a flat central well and a shallow swept rim. It is a single rigid piece with no moving parts.",
  "category": "kitchenware",
  "subcategory": "salad_plate",
  "variant": "a01",
  "semantic_label": "salad plate",
  "wikidata_qcode": "Q55688336",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1552,
   0.1552,
   0.0127
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0325,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 905 kg/m3 (PP homopolymer and copolymer 0.900-0.910 g/cm3 (amesweb.info Density of Plastics; MakeItFrom PP homopolymer))",
  "materials": [
   "plastic",
   "polypropylene"
  ],
  "friction": {
   "static": 0.305,
   "dynamic": 0.305,
   "source": "measured: Matheus K., Dollar A. M., \"Benchmarking grasping and manipulation: properties of the Objects of Daily Living\", IROS 2010, https://www.eng.yale.edu/grablab/pubs/matheus_iros2010.pdf; static friction = displacement force / weight, mean +- sd of 5 trials (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "449 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [9, 8, 9])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; an ow-generate call was attempted and failed, so no generated mesh existed; build.py has a conditional import/bake of input/mesh_hy31.glb that did not run (file absent)."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_salad_plate_a01_01.usd",
    "bytes": 1188530,
    "sha256": "44f35c2a15cfce71c1600f4468592c97b9a3f2e7eadf7ecf383e5d068d995d51"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_salad_plate_a01_01.usd.png",
    "bytes": 61285,
    "sha256": "c1b865f4dd9e021e86e415d18c9e0b95224f62c0737b367d62a8119eba09d6b9"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_salad_plate_a01_01.usd_light.png",
    "bytes": 61292,
    "sha256": "61a473a56168606d2a5de1253ecd3aa7edc61805a90a21e032888e54c359f2b8"
   },
   {
    "path": "simready_usd/textures/continuous_molded_plate_baked.png",
    "bytes": 42813,
    "sha256": "bfce5ba45631cc65cf0b2d7651a2bab886c33a527d0cd966e41df6bc8f40c41c"
   },
   {
    "path": "kitchenware_salad_plate_a01.zip",
    "bytes": 453558,
    "sha256": "641dc0a33db5b1f587da345ca9584a708901f9205160a2ef86e306086e1a8025"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_salad_plate_a01/simready_usd/sm_kitchenware_salad_plate_a01_01.usd",
   "zip": "/files/assets/kitchenware_salad_plate_a01/kitchenware_salad_plate_a01.zip",
   "thumb": "/files/assets/kitchenware_salad_plate_a01/simready_usd/.thumbs/256x256/sm_kitchenware_salad_plate_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_salad_plate_a01/simready_usd/.thumbs/256x256/sm_kitchenware_salad_plate_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_salad_plate_a01/metadata.json",
   "license": "/files/assets/kitchenware_salad_plate_a01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_salad_plate_a01/preview/kitchenware_salad_plate_a01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_salad_plate_a01/preview/kitchenware_salad_plate_a01.glb",
   "collision_glb": "/files/assets/kitchenware_salad_plate_a01/preview/kitchenware_salad_plate_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0775,
     0.0,
     -0.0775
    ],
    "max": [
     0.0775,
     0.012,
     0.0775
    ]
   },
   "parts": [
    {
     "node": "plate",
     "parent": null,
     "meshes": [
      "geom_449"
     ],
     "center": [
      0.0,
      0.006,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.006,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_side_plate_a01",
  "name": "Plain round side plate",
  "description": "A small round side plate about 165 mm across with a shallow rim, used for bread, desserts or small portions. It is a single rigid piece with no moving parts.",
  "category": "kitchenware",
  "subcategory": "side_plate",
  "variant": "a01",
  "semantic_label": "side plate",
  "wikidata_qcode": "Q57216",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1651,
   0.1651,
   0.0095
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.1837,
  "mass_source": "derived: lathe section volume 76.6 cm3 x porcelain 2400 kg/m3 = 0.1837 kg; cross-check: Arcoroc S0606 case of 36 ships at 17.6 lb (0.222 kg per plate including packaging), https://www.webstaurantstore.com/arcoroc-s0606-horizon-6-1-2-white-porcelain-bread-and-butter-plate-by-arc-cardinal-case/552S0606.html",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "25 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_side_plate_a01_01.usd",
    "bytes": 53629,
    "sha256": "c07377c731af894287f7a6c1ce99d435f53ad97a6a1e0e6a17c9221080f2f336"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_side_plate_a01_01.usd.png",
    "bytes": 57179,
    "sha256": "61163322a7efa72ffae2d5eff7ab24a42ffa6fdbd85b9c7abe59d6c76da539bf"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_side_plate_a01_01.usd_light.png",
    "bytes": 54743,
    "sha256": "2a918f7b18fadefd0d13e7417fcc1d54a4944b63b263898eeae7fb656071c4b1"
   },
   {
    "path": "kitchenware_side_plate_a01.zip",
    "bytes": 136341,
    "sha256": "3f5b6822aab31d0a7df78594151be1bffb36feb5f1361b3d70e097d544b858ca"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_side_plate_a01/simready_usd/sm_kitchenware_side_plate_a01_01.usd",
   "zip": "/files/assets/kitchenware_side_plate_a01/kitchenware_side_plate_a01.zip",
   "thumb": "/files/assets/kitchenware_side_plate_a01/simready_usd/.thumbs/256x256/sm_kitchenware_side_plate_a01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_side_plate_a01/simready_usd/.thumbs/256x256/sm_kitchenware_side_plate_a01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_side_plate_a01/metadata.json",
   "license": "/files/assets/kitchenware_side_plate_a01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_side_plate_a01/preview/kitchenware_side_plate_a01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_side_plate_a01/preview/kitchenware_side_plate_a01.glb",
   "collision_glb": "/files/assets/kitchenware_side_plate_a01/preview/kitchenware_side_plate_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.08255,
     0.0,
     -0.08255
    ],
    "max": [
     0.08255,
     0.0095,
     0.08255
    ]
   },
   "parts": [
    {
     "node": "plate",
     "parent": null,
     "meshes": [
      "side_plate_165_porcelain"
     ],
     "center": [
      0.0,
      0.00475,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.00475,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "kitchenware_trivet_b01",
  "name": "Square ceramic trivet, sand ribbed",
  "description": "A solid square trivet made of glazed ceramic in a sand colour, with shallow parallel ribs on the surface. It is used to protect surfaces from hot cookware and has no moving parts.",
  "category": "kitchenware",
  "subcategory": "trivet",
  "variant": "b01",
  "semantic_label": "trivet",
  "wikidata_qcode": "Q15707852",
  "mechanism": "rigid",
  "dimensions_m": [
   0.18,
   0.18,
   0.03
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 2.263,
  "mass_source": "mass = density x closed-solid wall volume of the package, times scale^3; inertia from the same solid; density 2400 kg/m3 (Engineering ToolBox, Densities of Common Materials: porcelain 2300-2500, stoneware 2200-2500 kg/m3 (as in R/simready/densities.json ceramic_glazed))",
  "materials": [
   "ceramic_glazed"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "measured: No measured coefficient for glazed ceramic on wood or laminate found (searched 2026-10-31); proxies: wood on stone 0.2-0.4 (Engineering ToolBox friction coefficients, https://engineeringtoolbox.com/friction-coefficients-d_778.html). 0.4 assumed. (object on laminate; MuJoCo sliding coefficient used for both)"
  },
  "articulated": false,
  "joints": [],
  "collision": "13 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [8, 7, 8])",
   "assembly_audit": true,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures; build.py has a conditional import/bake of input/mesh_hy31.glb that did not run (file absent)."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_kitchenware_trivet_b01_01.usd",
    "bytes": 279929,
    "sha256": "0f75cc17b4ff82090fd68703a758f82d6c17a9c7e921055d2422eca1c228b7ca"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_trivet_b01_01.usd.png",
    "bytes": 68219,
    "sha256": "662a873a27a2a085ceb9b3d5101c4e6b68051ddfeea4c36e3831f6078df1947a"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_kitchenware_trivet_b01_01.usd_light.png",
    "bytes": 68469,
    "sha256": "a6c42f43e13b65045537a21ecf6c89ce2c8c135dc657bacbd275b374774cc4b5"
   },
   {
    "path": "kitchenware_trivet_b01.zip",
    "bytes": 190078,
    "sha256": "2ca1105ce01b4b831f49d0be80971941c7dea1bb1e17158690ded2e2b8d1f52d"
   }
  ],
  "urls": {
   "usd": "/files/assets/kitchenware_trivet_b01/simready_usd/sm_kitchenware_trivet_b01_01.usd",
   "zip": "/files/assets/kitchenware_trivet_b01/kitchenware_trivet_b01.zip",
   "thumb": "/files/assets/kitchenware_trivet_b01/simready_usd/.thumbs/256x256/sm_kitchenware_trivet_b01_01.usd.png",
   "thumb_light": "/files/assets/kitchenware_trivet_b01/simready_usd/.thumbs/256x256/sm_kitchenware_trivet_b01_01.usd_light.png",
   "metadata": "/files/assets/kitchenware_trivet_b01/metadata.json",
   "license": "/files/assets/kitchenware_trivet_b01/LICENSE.txt",
   "glb": "/files/assets/kitchenware_trivet_b01/preview/kitchenware_trivet_b01.glb"
  },
  "media": {
   "glb": "/files/assets/kitchenware_trivet_b01/preview/kitchenware_trivet_b01.glb",
   "collision_glb": "/files/assets/kitchenware_trivet_b01/preview/kitchenware_trivet_b01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.09,
     -0.0,
     -0.09
    ],
    "max": [
     0.09,
     0.03,
     0.09
    ]
   },
   "parts": [
    {
     "node": "solid_ceramic",
     "parent": null,
     "meshes": [
      "geom_13"
     ],
     "center": [
      0.0,
      0.015,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.015,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "office_ballpoint_pen_a01",
  "name": "Black retractable ballpoint pen",
  "description": "A used black ballpoint pen with an ABS plastic body and steel parts. The tip extends and retracts with a push button.",
  "category": "office",
  "subcategory": "ballpoint_pen",
  "variant": "a01",
  "semantic_label": "retractable ballpoint pen",
  "wikidata_qcode": "Q160137",
  "mechanism": "articulated",
  "dimensions_m": [
   0.0096,
   0.145,
   0.015
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0077,
  "mass_source": "derived: ABS 1050 kg/m3 times 5.43e-6 m3 molded barrel, nose and clip volume, 0.8 mm typical wall (+2 more bodies)",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "refill_retract",
    "type": "prismatic",
    "range": [
     0.0,
     0.0025
    ],
    "continuous": false,
    "units": "m"
   },
   {
    "name": "click_button",
    "type": "prismatic",
    "range": [
     0.0,
     0.0025
    ],
    "continuous": false,
    "units": "m"
   }
  ],
  "collision": "16 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_office_ballpoint_pen_a01_01.usd",
    "bytes": 558205,
    "sha256": "fd21c0cdb4454f9668c827295307748ab749baad70a1222e6f9a122f5e966023"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_ballpoint_pen_a01_01.usd.png",
    "bytes": 57795,
    "sha256": "3528996728c99056cfa33bbe910bfb55544cee5784ded1ed342cf1c8c984efa0"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_ballpoint_pen_a01_01.usd_light.png",
    "bytes": 56115,
    "sha256": "db3c0696f729fe5d6002d27254607e7f7f1b817104dbb887beb8604a4f24f350"
   },
   {
    "path": "office_ballpoint_pen_a01.zip",
    "bytes": 204128,
    "sha256": "040b3a0fff7bc0a6f8c4fa86cb934a49802a04d8e5c060e5062cc1c5cadc8fbf"
   }
  ],
  "urls": {
   "usd": "/files/assets/office_ballpoint_pen_a01/simready_usd/sm_office_ballpoint_pen_a01_01.usd",
   "zip": "/files/assets/office_ballpoint_pen_a01/office_ballpoint_pen_a01.zip",
   "thumb": "/files/assets/office_ballpoint_pen_a01/simready_usd/.thumbs/256x256/sm_office_ballpoint_pen_a01_01.usd.png",
   "thumb_light": "/files/assets/office_ballpoint_pen_a01/simready_usd/.thumbs/256x256/sm_office_ballpoint_pen_a01_01.usd_light.png",
   "metadata": "/files/assets/office_ballpoint_pen_a01/metadata.json",
   "license": "/files/assets/office_ballpoint_pen_a01/LICENSE.txt",
   "glb": "/files/assets/office_ballpoint_pen_a01/preview/office_ballpoint_pen_a01.glb"
  },
  "media": {
   "glb": "/files/assets/office_ballpoint_pen_a01/preview/office_ballpoint_pen_a01.glb",
   "collision_glb": "/files/assets/office_ballpoint_pen_a01/preview/office_ballpoint_pen_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0048,
     -0.0,
     -0.0725
    ],
    "max": [
     0.0048,
     0.0149,
     0.0725
    ]
   },
   "parts": [
    {
     "node": "barrel",
     "parent": null,
     "meshes": [
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17"
     ],
     "center": [
      0.0,
      0.00745,
      0.00275
     ],
     "joint": null
    },
    {
     "node": "refill_retract",
     "parent": "barrel",
     "meshes": [
      "geom_20",
      "geom_21"
     ],
     "center": [
      0.0,
      0.0048,
      0.01625
     ],
     "joint": {
      "name": "refill_retract",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       0.0,
       0.0048,
       0.0
      ],
      "range": [
       0.0,
       0.0025
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       0.0,
       0.0048,
       0.0
      ]
     }
    },
    {
     "node": "click_button",
     "parent": "barrel",
     "meshes": [
      "geom_23"
     ],
     "center": [
      0.0,
      0.0048,
      -0.06625
     ],
     "joint": {
      "name": "click_button",
      "type": "prismatic",
      "axis": [
       0.0,
       0.0,
       1.0
      ],
      "origin": [
       0.0,
       0.0048,
       -0.063
      ],
      "range": [
       0.0,
       0.0025
      ],
      "units": "m",
      "axis_parent": [
       0.0,
       0.0,
       1.0
      ],
      "origin_parent": [
       0.0,
       0.0048,
       -0.063
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.00745,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "office_envelope_a01",
  "name": "Closed kraft paper envelope",
  "description": "A small closed envelope made of kraft paper containing folded cream receipt paper. It is a single flat paper object.",
  "category": "office",
  "subcategory": "envelope",
  "variant": "a01",
  "semantic_label": "kraft envelope",
  "wikidata_qcode": "Q170124",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1101,
   0.1901,
   0.0082
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0458,
  "mass_source": "derived: 90g/m2 kraft blank area 2.5 x 0.11m x 0.19m plus 28 folded receipt layers x 0.102m x 0.18m x 80g/m2. Layer thickness 147um declared for folded light receipt paper with micro air gaps.",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "6 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_office_envelope_a01_01.usd",
    "bytes": 440472,
    "sha256": "cd72e1b9c71ab20ae7cbec42589ed8f1ea2863e25ff70f1fb6408f25e992e6df"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_envelope_a01_01.usd.png",
    "bytes": 61349,
    "sha256": "b699ff92d2537589984b952ee24e75b2315d70cfd6209519f967b079bd9abcc9"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_envelope_a01_01.usd_light.png",
    "bytes": 60639,
    "sha256": "0dcfacc8ab9af16aebdd3e0501be2ed046f274eddcc55a5f71ae40b5382a461a"
   },
   {
    "path": "simready_usd/textures/albedo.png",
    "bytes": 1945865,
    "sha256": "c7ad9eb7055db8c5e847b3ebb56acee90f4c9a83982774039ffed550dec4ed28"
   },
   {
    "path": "simready_usd/textures/albedo.png.png",
    "bytes": 1373654,
    "sha256": "61bb9a4387d52e4ca43a8f8a3d6b9b4ff1da263cc7a99321463cf3a0e052d12e"
   },
   {
    "path": "office_envelope_a01.zip",
    "bytes": 3455190,
    "sha256": "ec8d7eb88275a786e8301b3c7bc9aa883608b90b434e52775b440078862a0299"
   }
  ],
  "urls": {
   "usd": "/files/assets/office_envelope_a01/simready_usd/sm_office_envelope_a01_01.usd",
   "zip": "/files/assets/office_envelope_a01/office_envelope_a01.zip",
   "thumb": "/files/assets/office_envelope_a01/simready_usd/.thumbs/256x256/sm_office_envelope_a01_01.usd.png",
   "thumb_light": "/files/assets/office_envelope_a01/simready_usd/.thumbs/256x256/sm_office_envelope_a01_01.usd_light.png",
   "metadata": "/files/assets/office_envelope_a01/metadata.json",
   "license": "/files/assets/office_envelope_a01/LICENSE.txt",
   "glb": "/files/assets/office_envelope_a01/preview/office_envelope_a01.glb"
  },
  "media": {
   "glb": "/files/assets/office_envelope_a01/preview/office_envelope_a01.glb",
   "collision_glb": "/files/assets/office_envelope_a01/preview/office_envelope_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.05507,
     -0.0,
     -0.09507
    ],
    "max": [
     0.05507,
     0.007,
     0.09507
    ]
   },
   "parts": [
    {
     "node": "closed_envelope",
     "parent": null,
     "meshes": [
      "geom_6",
      "geom_7",
      "geom_8",
      "geom_9",
      "geom_10",
      "geom_11",
      "geom_12",
      "geom_19",
      "geom_20",
      "geom_27",
      "geom_32",
      "geom_34",
      "geom_39",
      "geom_40",
      "geom_41",
      "geom_42"
     ],
     "center": [
      -0.0,
      0.0035,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.0035,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "office_eraser_b01",
  "name": "Off-white rubber eraser",
  "description": "A plain off-white rectangular eraser made of rubber. It is a single solid piece with no print.",
  "category": "office",
  "subcategory": "eraser",
  "variant": "b01",
  "semantic_label": "eraser",
  "wikidata_qcode": "Q171888",
  "mechanism": "rigid",
  "dimensions_m": [
   0.055,
   0.022,
   0.012
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0159,
  "mass_source": "derived: rubber 1100 kg/m3 x 1.44648e-05 m3 (actual softened eraser block volume) = 0.01591 kg; density source: Density: Engineering ToolBox, rubber compounds 1100 to 1200 (natural gum 920). Friction: Serway and Jewett Table 5.1, rubber on concrete 1.0",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "1 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_office_eraser_b01_01.usd",
    "bytes": 101479,
    "sha256": "1b901b1397cd027049f7eae18931936cf6bb87aa1436235b39729a06b792c50e"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_eraser_b01_01.usd.png",
    "bytes": 59393,
    "sha256": "944ec82a2748ef9c205e10ed26477e7e84edcd148676096cabbc78647cfd85fe"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_eraser_b01_01.usd_light.png",
    "bytes": 58238,
    "sha256": "17cd831407b7f0c82ff47c246d05520e2c6e862801c183327c419fe9fae0fcdb"
   },
   {
    "path": "simready_usd/textures/albedo.png",
    "bytes": 772971,
    "sha256": "db31ff1d27abeee41fd5ff3eef98ff77e2be79e3a00578043c150da780f09bc2"
   },
   {
    "path": "office_eraser_b01.zip",
    "bytes": 897838,
    "sha256": "146915da48c43bb856adba1df2c4fbf0380a8d38711d97137bfce4301ef153fe"
   }
  ],
  "urls": {
   "usd": "/files/assets/office_eraser_b01/simready_usd/sm_office_eraser_b01_01.usd",
   "zip": "/files/assets/office_eraser_b01/office_eraser_b01.zip",
   "thumb": "/files/assets/office_eraser_b01/simready_usd/.thumbs/256x256/sm_office_eraser_b01_01.usd.png",
   "thumb_light": "/files/assets/office_eraser_b01/simready_usd/.thumbs/256x256/sm_office_eraser_b01_01.usd_light.png",
   "metadata": "/files/assets/office_eraser_b01/metadata.json",
   "license": "/files/assets/office_eraser_b01/LICENSE.txt",
   "glb": "/files/assets/office_eraser_b01/preview/office_eraser_b01.glb"
  },
  "media": {
   "glb": "/files/assets/office_eraser_b01/preview/office_eraser_b01.glb",
   "collision_glb": "/files/assets/office_eraser_b01/preview/office_eraser_b01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0275,
     -0.0,
     -0.011
    ],
    "max": [
     0.0275,
     0.012,
     0.011
    ]
   },
   "parts": [
    {
     "node": "eraser",
     "parent": null,
     "meshes": [
      "geom_1"
     ],
     "center": [
      0.0,
      0.006,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.006,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "office_paper_clip_a01",
  "name": "Steel wire paper clip",
  "description": "A small paper clip bent from a single piece of thin metal wire into a double-loop shape. It has no hinges or separate parts.",
  "category": "office",
  "subcategory": "paper_clip",
  "variant": "a01",
  "semantic_label": "paper clip",
  "wikidata_qcode": "Q8353",
  "mechanism": "rigid",
  "dimensions_m": [
   0.0323,
   0.0108,
   0.0011
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0004,
  "mass_source": "derived: centerline length 0.1009574 m x pi x (0.0004 m)^2 x carbon steel 7850 kg/m3; 0.8 mm drawn steel wire",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "244 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [8])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_office_paper_clip_a01_01.usd",
    "bytes": 1186633,
    "sha256": "25bb30d7cefeb9b04c842c61e86a6cf3f980ceb35be6784a5b02537706ebcf1b"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_paper_clip_a01_01.usd.png",
    "bytes": 59870,
    "sha256": "01069784abda670e920b29addcb6514b9957f7482b9687132ffdbcf09eae6608"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_paper_clip_a01_01.usd_light.png",
    "bytes": 59274,
    "sha256": "4804bd186656202e626d02137e3c8ddbbd55f3a7dfdba1c41083fac834722893"
   },
   {
    "path": "office_paper_clip_a01.zip",
    "bytes": 268795,
    "sha256": "744eff210fd8e23cbd4327d5ed8995e469c6ae3282587f839f07abfca4aaa70a"
   }
  ],
  "urls": {
   "usd": "/files/assets/office_paper_clip_a01/simready_usd/sm_office_paper_clip_a01_01.usd",
   "zip": "/files/assets/office_paper_clip_a01/office_paper_clip_a01.zip",
   "thumb": "/files/assets/office_paper_clip_a01/simready_usd/.thumbs/256x256/sm_office_paper_clip_a01_01.usd.png",
   "thumb_light": "/files/assets/office_paper_clip_a01/simready_usd/.thumbs/256x256/sm_office_paper_clip_a01_01.usd_light.png",
   "metadata": "/files/assets/office_paper_clip_a01/metadata.json",
   "license": "/files/assets/office_paper_clip_a01/LICENSE.txt",
   "glb": "/files/assets/office_paper_clip_a01/preview/office_paper_clip_a01.glb"
  },
  "media": {
   "glb": "/files/assets/office_paper_clip_a01/preview/office_paper_clip_a01.glb",
   "collision_glb": "/files/assets/office_paper_clip_a01/preview/office_paper_clip_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.016,
     0.0,
     -0.0045
    ],
    "max": [
     0.016,
     0.0008,
     0.0045
    ]
   },
   "parts": [
    {
     "node": "clip",
     "parent": null,
     "meshes": [
      "geom_244"
     ],
     "center": [
      -0.0,
      0.0004,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.0004,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "office_paper_clip_b01",
  "name": "Silver steel paper clip",
  "description": "A small double-loop paper clip made of bent stainless steel wire. It is a single rigid piece used to hold sheets of paper together.",
  "category": "office",
  "subcategory": "paper_clip",
  "variant": "b01",
  "semantic_label": "paper clip",
  "wikidata_qcode": "Q8353",
  "mechanism": "rigid",
  "dimensions_m": [
   0.0149,
   0.0328,
   0.0014
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0007,
  "mass_source": "derived: steel_stainless 7900 kg/m3 x 8.45837e-08 m3 (round wire cross section times centreline length) = 0.0006682 kg; density source: Density: AK Steel 304/304L product data sheet, 7.9 g/cm3 (ASM Handbook vol. 1 gives 7.9 to 8.0). Friction: Engineering ToolBox friction tabl",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "196 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [8])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_office_paper_clip_b01_01.usd",
    "bytes": 955605,
    "sha256": "012e20b099faefa505fc5f0afe794ffc47e8dc00d90c475d00adee7520131ae3"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_paper_clip_b01_01.usd.png",
    "bytes": 59217,
    "sha256": "f9b4d60414d224d2253f346f2395889fc58ec4f566b691139e5030c3d72960bd"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_office_paper_clip_b01_01.usd_light.png",
    "bytes": 58528,
    "sha256": "f22e18fe306e4cc7daf4fa446f93a03630817c3eba14972c1d8464b4d5dec408"
   },
   {
    "path": "simready_usd/textures/albedo.png",
    "bytes": 493537,
    "sha256": "1b522a0cd4f47a1baaf970a42653a0fff355740ed1e07c2b458be55ce9463e1d"
   },
   {
    "path": "office_paper_clip_b01.zip",
    "bytes": 714605,
    "sha256": "e689a2b0e0dca654c767ff5bce530d6559d31657d7a791a4ff3d29f208a40b03"
   }
  ],
  "urls": {
   "usd": "/files/assets/office_paper_clip_b01/simready_usd/sm_office_paper_clip_b01_01.usd",
   "zip": "/files/assets/office_paper_clip_b01/office_paper_clip_b01.zip",
   "thumb": "/files/assets/office_paper_clip_b01/simready_usd/.thumbs/256x256/sm_office_paper_clip_b01_01.usd.png",
   "thumb_light": "/files/assets/office_paper_clip_b01/simready_usd/.thumbs/256x256/sm_office_paper_clip_b01_01.usd_light.png",
   "metadata": "/files/assets/office_paper_clip_b01/metadata.json",
   "license": "/files/assets/office_paper_clip_b01/LICENSE.txt",
   "glb": "/files/assets/office_paper_clip_b01/preview/office_paper_clip_b01.glb"
  },
  "media": {
   "glb": "/files/assets/office_paper_clip_b01/preview/office_paper_clip_b01.glb",
   "collision_glb": "/files/assets/office_paper_clip_b01/preview/office_paper_clip_b01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.006,
     -0.0,
     -0.016
    ],
    "max": [
     0.006,
     0.001,
     0.016
    ]
   },
   "parts": [
    {
     "node": "continuous_wire",
     "parent": null,
     "meshes": [
      "geom_196"
     ],
     "center": [
      0.0,
      0.0005,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.0005,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "packaging_shipping_carton_b01",
  "name": "Large kraft corrugated shipping carton",
  "description": "A sealed double-wall corrugated cardboard shipping carton closed with brown packing tape along the seam and across the ends. It carries a generic paper barcode label.",
  "category": "packaging",
  "subcategory": "shipping_carton",
  "variant": "b01",
  "semantic_label": "cardboard box",
  "wikidata_qcode": "Q1395006",
  "mechanism": "rigid",
  "dimensions_m": [
   0.6564,
   0.5355,
   0.4988
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 1.46,
  "mass_source": "spec: robots team wh_deck_carton2.xml mass 1.46 kg, the rack package rule: corrugated board 0.52 kg/m2 x 1.845 m2 carton area (0.96 kg, measured: 2 x (0.65 x 0.53 + 0.65 x 0.49 + 0.53 x 0.49) m2) plus 0.50 kg light packing (v_warehouse_pallet_rack mass_evidence.json stock_basis)",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.4,
   "dynamic": 0.4,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "1 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_packaging_shipping_carton_b01_01.usd",
    "bytes": 1956048,
    "sha256": "1acd85083485bf5470b07c07e3523bc1ded69092e553c501cd14a1d01e4aba8c"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_packaging_shipping_carton_b01_01.usd.png",
    "bytes": 76841,
    "sha256": "a4ce75649ef9cbddc0dd843a2c7fcdbbcf6da8f2ee46abb9b70e08c44f87e45f"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_packaging_shipping_carton_b01_01.usd_light.png",
    "bytes": 72245,
    "sha256": "967130843b9379ea6813ec3d5ed38ba94bf7c1267ada9bcb3b8fd13d57afcb73"
   },
   {
    "path": "simready_usd/textures/kraft_albedo.png",
    "bytes": 2239747,
    "sha256": "15f173d2e58c6eebe6407ac7bb2b6ca18a207ff18d34b16db9ff9904a1dc0f4b"
   },
   {
    "path": "simready_usd/textures/tape_albedo.png",
    "bytes": 650257,
    "sha256": "6ecab98fdd374de658b7965440e285f8cc6327bd6bbdf245b7935ad49e1c20d1"
   },
   {
    "path": "packaging_shipping_carton_b01.zip",
    "bytes": 3597312,
    "sha256": "55ba38513c19734cc4ecbecad7a48485f885bad10174b2257744d93da637290a"
   }
  ],
  "urls": {
   "usd": "/files/assets/packaging_shipping_carton_b01/simready_usd/sm_packaging_shipping_carton_b01_01.usd",
   "zip": "/files/assets/packaging_shipping_carton_b01/packaging_shipping_carton_b01.zip",
   "thumb": "/files/assets/packaging_shipping_carton_b01/simready_usd/.thumbs/256x256/sm_packaging_shipping_carton_b01_01.usd.png",
   "thumb_light": "/files/assets/packaging_shipping_carton_b01/simready_usd/.thumbs/256x256/sm_packaging_shipping_carton_b01_01.usd_light.png",
   "metadata": "/files/assets/packaging_shipping_carton_b01/metadata.json",
   "license": "/files/assets/packaging_shipping_carton_b01/LICENSE.txt",
   "glb": "/files/assets/packaging_shipping_carton_b01/preview/packaging_shipping_carton_b01.glb"
  },
  "media": {
   "glb": "/files/assets/packaging_shipping_carton_b01/preview/packaging_shipping_carton_b01.glb",
   "collision_glb": "/files/assets/packaging_shipping_carton_b01/preview/packaging_shipping_carton_b01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.32811,
     -0.0,
     -0.26761
    ],
    "max": [
     0.32811,
     0.49703,
     0.26761
    ]
   },
   "parts": [
    {
     "node": "carton",
     "parent": null,
     "meshes": [
      "geom_1",
      "geom_2",
      "geom_3",
      "geom_4",
      "geom_5",
      "geom_6",
      "geom_7",
      "geom_8",
      "geom_9",
      "geom_10",
      "geom_11",
      "geom_12",
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17",
      "geom_18",
      "geom_19",
      "geom_20",
      "geom_21",
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25",
      "geom_26",
      "geom_27",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34",
      "geom_35",
      "geom_36",
      "geom_37",
      "geom_38",
      "geom_39",
      "geom_40",
      "geom_41",
      "geom_42",
      "geom_43"
     ],
     "center": [
      0.0,
      0.24852,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.24852,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "packaging_shipping_carton_c01",
  "name": "Small kraft corrugated shipping carton",
  "description": "A sealed single-wall corrugated cardboard shipping carton closed with brown packing tape along the seam and across the ends. It carries a generic paper barcode label.",
  "category": "packaging",
  "subcategory": "shipping_carton",
  "variant": "c01",
  "semantic_label": "cardboard box",
  "wikidata_qcode": "Q1395006",
  "mechanism": "rigid",
  "dimensions_m": [
   0.487,
   0.3052,
   0.3321
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 1.006,
  "mass_source": "derived: regular slotted carton blank (2 x 0.48 + 2 x 0.3 + 0.035) x (0.31 + 0.3) = 0.9729 m2 x 0.52 kg/m2 single-wall corrugated board = 0.506 kg (0.52 kg/m2: the rack package board basis, inside the 0.43 to 0.61 kg/m2 range of 32 ECT C-flute board, 2 x 127 to 205 g/m2 liners plus a 112 to 127 g/m2 medium at 1.43 take-up plus starch) plus 0.50 kg light packing, the rack's per-carton stock allowan",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.5,
   "dynamic": 0.5,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "1 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_packaging_shipping_carton_c01_01.usd",
    "bytes": 1960158,
    "sha256": "433d38f9be819b39ca725ab7145054387a4435a226edda24b82092570adcacbc"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_packaging_shipping_carton_c01_01.usd.png",
    "bytes": 79342,
    "sha256": "3ec05bd134825b62947f7b3764ff9f844448522c38683f3edc4acfc7545116fd"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_packaging_shipping_carton_c01_01.usd_light.png",
    "bytes": 75051,
    "sha256": "294a64f45c2ed560c6a477ae404310a12741b1565a00ad99a1605dff6470243b"
   },
   {
    "path": "simready_usd/textures/kraft_albedo.png",
    "bytes": 2239747,
    "sha256": "15f173d2e58c6eebe6407ac7bb2b6ca18a207ff18d34b16db9ff9904a1dc0f4b"
   },
   {
    "path": "simready_usd/textures/tape_albedo.png",
    "bytes": 650257,
    "sha256": "6ecab98fdd374de658b7965440e285f8cc6327bd6bbdf245b7935ad49e1c20d1"
   },
   {
    "path": "packaging_shipping_carton_c01.zip",
    "bytes": 3623311,
    "sha256": "bf143a53df2498d2bfe407390f0134fde7885c95496cb28a312aa531c9d1687d"
   }
  ],
  "urls": {
   "usd": "/files/assets/packaging_shipping_carton_c01/simready_usd/sm_packaging_shipping_carton_c01_01.usd",
   "zip": "/files/assets/packaging_shipping_carton_c01/packaging_shipping_carton_c01.zip",
   "thumb": "/files/assets/packaging_shipping_carton_c01/simready_usd/.thumbs/256x256/sm_packaging_shipping_carton_c01_01.usd.png",
   "thumb_light": "/files/assets/packaging_shipping_carton_c01/simready_usd/.thumbs/256x256/sm_packaging_shipping_carton_c01_01.usd_light.png",
   "metadata": "/files/assets/packaging_shipping_carton_c01/metadata.json",
   "license": "/files/assets/packaging_shipping_carton_c01/LICENSE.txt",
   "glb": "/files/assets/packaging_shipping_carton_c01/preview/packaging_shipping_carton_c01.glb"
  },
  "media": {
   "glb": "/files/assets/packaging_shipping_carton_c01/preview/packaging_shipping_carton_c01.glb",
   "collision_glb": "/files/assets/packaging_shipping_carton_c01/preview/packaging_shipping_carton_c01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.24326,
     0.0,
     -0.1525
    ],
    "max": [
     0.24326,
     0.31655,
     0.1525
    ]
   },
   "parts": [
    {
     "node": "carton",
     "parent": null,
     "meshes": [
      "geom_1",
      "geom_2",
      "geom_3",
      "geom_4",
      "geom_5",
      "geom_6",
      "geom_7",
      "geom_8",
      "geom_9",
      "geom_10",
      "geom_11",
      "geom_12",
      "geom_13",
      "geom_14",
      "geom_15",
      "geom_16",
      "geom_17",
      "geom_18",
      "geom_19",
      "geom_20",
      "geom_21",
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25",
      "geom_26",
      "geom_27",
      "geom_28",
      "geom_29",
      "geom_30",
      "geom_31",
      "geom_32",
      "geom_33",
      "geom_34",
      "geom_35",
      "geom_36",
      "geom_37",
      "geom_38",
      "geom_39",
      "geom_40",
      "geom_41",
      "geom_42",
      "geom_43"
     ],
     "center": [
      0.0,
      0.15828,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.15828,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "sports_tent_stake_a01",
  "name": "Red anodized aluminum tent stake",
  "description": "A 180 mm Y-section tent stake of red anodized aluminum with a pointed tip and three hook notches at the head. It has no guyline.",
  "category": "sports",
  "subcategory": "tent_stake",
  "variant": "a01",
  "semantic_label": "tent stake",
  "wikidata_qcode": "Q1609983",
  "mechanism": "rigid",
  "dimensions_m": [
   0.016,
   0.18,
   0.0141
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0106,
  "mass_source": "derived: aluminum 2700 kg/m3 x 3.93751e-06 m3 (closed beveled Y extrusion mesh after the three head notch cuts) = 0.01063 kg; density source: Density: ASM Handbook, aluminum 6061 2.70 g/cm3. Friction: Engineering ToolBox, aluminum on steel 0.61 dry, aluminum on wood not tabulated, ",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "37 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_sports_tent_stake_a01_01.usd",
    "bytes": 454494,
    "sha256": "19777892149f288d440f220214473ee505fcc9602453037d3f463138aed4f9d1"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_sports_tent_stake_a01_01.usd.png",
    "bytes": 57920,
    "sha256": "851f5cf61df18c3f1e95cdb3085144da40afe903aa3e00b5c80a510a6cc2ac21"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_sports_tent_stake_a01_01.usd_light.png",
    "bytes": 58110,
    "sha256": "f5a95a46a2d9532992f23b5a12359de9cd0329e1082613fb99d8ae4f3f403543"
   },
   {
    "path": "simready_usd/textures/anodized_albedo.png",
    "bytes": 686127,
    "sha256": "5c1d22b2153368414712e8a068ff34ff45371398d6db477f764dc29844339290"
   },
   {
    "path": "sports_tent_stake_a01.zip",
    "bytes": 883346,
    "sha256": "27d803a862216726636486a80a3819f758dc5afbd85c8dfce9695399b2f76d3a"
   }
  ],
  "urls": {
   "usd": "/files/assets/sports_tent_stake_a01/simready_usd/sm_sports_tent_stake_a01_01.usd",
   "zip": "/files/assets/sports_tent_stake_a01/sports_tent_stake_a01.zip",
   "thumb": "/files/assets/sports_tent_stake_a01/simready_usd/.thumbs/256x256/sm_sports_tent_stake_a01_01.usd.png",
   "thumb_light": "/files/assets/sports_tent_stake_a01/simready_usd/.thumbs/256x256/sm_sports_tent_stake_a01_01.usd_light.png",
   "metadata": "/files/assets/sports_tent_stake_a01/metadata.json",
   "license": "/files/assets/sports_tent_stake_a01/LICENSE.txt",
   "glb": "/files/assets/sports_tent_stake_a01/preview/sports_tent_stake_a01.glb"
  },
  "media": {
   "glb": "/files/assets/sports_tent_stake_a01/preview/sports_tent_stake_a01.glb",
   "collision_glb": "/files/assets/sports_tent_stake_a01/preview/sports_tent_stake_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.008,
     0.0,
     -0.08998
    ],
    "max": [
     0.008,
     0.014,
     0.08999
    ]
   },
   "parts": [
    {
     "node": "stake",
     "parent": null,
     "meshes": [
      "geom_37"
     ],
     "center": [
      0.0,
      0.007,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.007,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "tool_diagonal_cutters_a01",
  "name": "Diagonal cutters, red grips",
  "description": "Hand-operated side cutters with forged chrome vanadium steel jaws and red PVC-dipped handles. The two halves rotate about a central steel pivot to cut wire.",
  "category": "tool",
  "subcategory": "diagonal_cutters",
  "variant": "a01",
  "semantic_label": "diagonal cutters",
  "wikidata_qcode": "Q13049940",
  "mechanism": "articulated",
  "dimensions_m": [
   0.0688,
   0.1807,
   0.016
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.1095,
  "mass_source": "derived: integrated forged-steel mesh volume 0.000004362 m3 x 7850 kg/m3 (chrome-vanadium steel engineering density), plus dipped PVC volume 0.000016138 m3 x 1350 kg/m3; steel geometry is a boolean-unioned forging without overlapping volume (+1 more bodies)",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "jaw_right_handle_left",
    "type": "revolute",
    "range": [
     0.0,
     0.488692
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "93 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 6]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": true,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_tool_diagonal_cutters_a01_01.usd",
    "bytes": 4005291,
    "sha256": "9b0a787f6ed4dc78f8fddfeea5b06bc713c2f7035bfbaf4a9a29c57207e7da54"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_diagonal_cutters_a01_01.usd.png",
    "bytes": 61300,
    "sha256": "fe4943014f75cd501250c35ba65ee5b396204188c93c2bd25f40e2970bf2ed85"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_diagonal_cutters_a01_01.usd_light.png",
    "bytes": 61877,
    "sha256": "520d5c2334abc04d73424da65c03eef0689f4d5c7a0599a9b910c6bec4e66c15"
   },
   {
    "path": "simready_usd/textures/edge_albedo.png",
    "bytes": 1752637,
    "sha256": "7bed50e1c6303fb1b136995a03f81bebe846037b80ae22eb79c089a52953fc2a"
   },
   {
    "path": "simready_usd/textures/steel_albedo.png",
    "bytes": 1744651,
    "sha256": "ae0c94c47d06cd5c2918f5399cd8a556f51542d2aa450da770bc66080d18cc0d"
   },
   {
    "path": "tool_diagonal_cutters_a01.zip",
    "bytes": 4599493,
    "sha256": "b93c1a0599643abcc15ab208c202237514aed6f29d180b12e33902c80ad17f8d"
   }
  ],
  "urls": {
   "usd": "/files/assets/tool_diagonal_cutters_a01/simready_usd/sm_tool_diagonal_cutters_a01_01.usd",
   "zip": "/files/assets/tool_diagonal_cutters_a01/tool_diagonal_cutters_a01.zip",
   "thumb": "/files/assets/tool_diagonal_cutters_a01/simready_usd/.thumbs/256x256/sm_tool_diagonal_cutters_a01_01.usd.png",
   "thumb_light": "/files/assets/tool_diagonal_cutters_a01/simready_usd/.thumbs/256x256/sm_tool_diagonal_cutters_a01_01.usd_light.png",
   "metadata": "/files/assets/tool_diagonal_cutters_a01/metadata.json",
   "license": "/files/assets/tool_diagonal_cutters_a01/LICENSE.txt",
   "glb": "/files/assets/tool_diagonal_cutters_a01/preview/tool_diagonal_cutters_a01.glb"
  },
  "media": {
   "glb": "/files/assets/tool_diagonal_cutters_a01/preview/tool_diagonal_cutters_a01.glb",
   "collision_glb": "/files/assets/tool_diagonal_cutters_a01/preview/tool_diagonal_cutters_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0325,
     -0.0,
     -0.09
    ],
    "max": [
     0.0325,
     0.016,
     0.09
    ]
   },
   "parts": [
    {
     "node": "jaw_left_handle_right",
     "parent": null,
     "meshes": [
      "geom_47",
      "geom_48",
      "geom_49",
      "geom_50",
      "geom_51"
     ],
     "center": [
      0.00999,
      0.008,
      -0.0
     ],
     "joint": null
    },
    {
     "node": "jaw_right_handle_left",
     "parent": "jaw_left_handle_right",
     "meshes": [
      "geom_98",
      "geom_99",
      "geom_100",
      "geom_101"
     ],
     "center": [
      -0.00999,
      0.008,
      0.0
     ],
     "joint": {
      "name": "jaw_right_handle_left",
      "type": "revolute",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       0.0,
       0.008,
       -0.05
      ],
      "range": [
       0.0,
       0.488692
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       0.0,
       0.007973,
       -0.05
      ]
     }
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.008,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "tool_flathead_screwdriver_a01",
  "name": "Short flathead screwdriver, red handle",
  "description": "A compact 180 mm flat-head screwdriver with a chrome vanadium steel shaft and a red ABS handle with a black elastomer grip. It has no moving parts.",
  "category": "tool",
  "subcategory": "flathead_screwdriver",
  "variant": "a01",
  "semantic_label": "flathead screwdriver",
  "wikidata_qcode": "Q161071",
  "mechanism": "rigid",
  "dimensions_m": [
   0.1812,
   0.0272,
   0.0299
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.057,
  "mass_source": "derived: reviewed library lv_back_screwdriver-c572df2ccf mass 0.11885891142131723 kg times uniform geometric scale cubed 0.782608695652174^3; unchanged material composition",
  "materials": [
   "plastic"
  ],
  "friction": {
   "static": 0.8,
   "dynamic": 0.8,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "207 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [7])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_tool_flathead_screwdriver_a01_01.usd",
    "bytes": 3586809,
    "sha256": "34d5bf619622931b97df2133f06e7993950a4d706bdd5ba97a1b57df155e6d6e"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_flathead_screwdriver_a01_01.usd.png",
    "bytes": 60228,
    "sha256": "4ec073974ba7777d739b6dad1e52ecef4b705c9bdcb4a3e724f4e18ac2b4d5be"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_flathead_screwdriver_a01_01.usd_light.png",
    "bytes": 59494,
    "sha256": "81b0b372dd9bb9d920620dd6e7e4b5b84e06363096a1f581904c7820d55fe87a"
   },
   {
    "path": "simready_usd/textures/grip_baked.png",
    "bytes": 3210784,
    "sha256": "a0a5fdb48e6dfb4fe33d04bcc2e5f311aded9a10cf9536db8c0fd33570cff495"
   },
   {
    "path": "simready_usd/textures/steel_color.png",
    "bytes": 3224484,
    "sha256": "e34d3903385889e4f8026a69d94beb098bbbeafabf52e2067c11e1c6f92fd1f5"
   },
   {
    "path": "tool_flathead_screwdriver_a01.zip",
    "bytes": 7607656,
    "sha256": "16a08b700c504f9b6536e646074ffaa06d5ab9f9dbf1bbdca1e98141bd071b33"
   }
  ],
  "urls": {
   "usd": "/files/assets/tool_flathead_screwdriver_a01/simready_usd/sm_tool_flathead_screwdriver_a01_01.usd",
   "zip": "/files/assets/tool_flathead_screwdriver_a01/tool_flathead_screwdriver_a01.zip",
   "thumb": "/files/assets/tool_flathead_screwdriver_a01/simready_usd/.thumbs/256x256/sm_tool_flathead_screwdriver_a01_01.usd.png",
   "thumb_light": "/files/assets/tool_flathead_screwdriver_a01/simready_usd/.thumbs/256x256/sm_tool_flathead_screwdriver_a01_01.usd_light.png",
   "metadata": "/files/assets/tool_flathead_screwdriver_a01/metadata.json",
   "license": "/files/assets/tool_flathead_screwdriver_a01/LICENSE.txt",
   "glb": "/files/assets/tool_flathead_screwdriver_a01/preview/tool_flathead_screwdriver_a01.glb"
  },
  "media": {
   "glb": "/files/assets/tool_flathead_screwdriver_a01/preview/tool_flathead_screwdriver_a01.glb",
   "collision_glb": "/files/assets/tool_flathead_screwdriver_a01/preview/tool_flathead_screwdriver_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.09,
     -0.0,
     -0.01358
    ],
    "max": [
     0.09,
     0.02716,
     0.01358
    ]
   },
   "parts": [
    {
     "node": "tool",
     "parent": null,
     "meshes": [
      "geom_207",
      "geom_208",
      "geom_209",
      "geom_210",
      "geom_211"
     ],
     "center": [
      0.0,
      0.01358,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.01358,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "tool_flathead_screwdriver_b01",
  "name": "Long flathead screwdriver, red handle",
  "description": "A 230 mm flat-head screwdriver with a chrome vanadium steel shaft and a red ABS handle with a black elastomer grip. It has no moving parts.",
  "category": "tool",
  "subcategory": "flathead_screwdriver",
  "variant": "b01",
  "semantic_label": "flathead screwdriver",
  "wikidata_qcode": "Q161071",
  "mechanism": "rigid",
  "dimensions_m": [
   0.2315,
   0.0347,
   0.0383
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.1189,
  "mass_source": "derived: reviewed library lv_back_screwdriver-c572df2ccf mass 0.11885891142131723 kg times uniform geometric scale cubed 1^3; unchanged material composition",
  "materials": [
   "plastic"
  ],
  "friction": {
   "static": 0.8,
   "dynamic": 0.8,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "207 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 7]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_tool_flathead_screwdriver_b01_01.usd",
    "bytes": 3586795,
    "sha256": "1369fc9f063f9ba22197aa85de5b8295dc30e61a5df2726643f2f8e5a89caaeb"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_flathead_screwdriver_b01_01.usd.png",
    "bytes": 60245,
    "sha256": "ef740ba1ef445ee8609e7b8e05aeaf9f3a156b2ae33abba412b5c90c4fcddc05"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_flathead_screwdriver_b01_01.usd_light.png",
    "bytes": 59557,
    "sha256": "bee252206c7a2c86a74b73d85503540c680ebc04ee95207c6e367acaca2f7a5d"
   },
   {
    "path": "simready_usd/textures/grip_baked.png",
    "bytes": 3210784,
    "sha256": "a0a5fdb48e6dfb4fe33d04bcc2e5f311aded9a10cf9536db8c0fd33570cff495"
   },
   {
    "path": "simready_usd/textures/steel_color.png",
    "bytes": 3224484,
    "sha256": "e34d3903385889e4f8026a69d94beb098bbbeafabf52e2067c11e1c6f92fd1f5"
   },
   {
    "path": "tool_flathead_screwdriver_b01.zip",
    "bytes": 7611417,
    "sha256": "b7edecee90e65368fb8dbf5860702bd8724da5f12aaf49a54bd86b25e0c0ed69"
   }
  ],
  "urls": {
   "usd": "/files/assets/tool_flathead_screwdriver_b01/simready_usd/sm_tool_flathead_screwdriver_b01_01.usd",
   "zip": "/files/assets/tool_flathead_screwdriver_b01/tool_flathead_screwdriver_b01.zip",
   "thumb": "/files/assets/tool_flathead_screwdriver_b01/simready_usd/.thumbs/256x256/sm_tool_flathead_screwdriver_b01_01.usd.png",
   "thumb_light": "/files/assets/tool_flathead_screwdriver_b01/simready_usd/.thumbs/256x256/sm_tool_flathead_screwdriver_b01_01.usd_light.png",
   "metadata": "/files/assets/tool_flathead_screwdriver_b01/metadata.json",
   "license": "/files/assets/tool_flathead_screwdriver_b01/LICENSE.txt",
   "glb": "/files/assets/tool_flathead_screwdriver_b01/preview/tool_flathead_screwdriver_b01.glb"
  },
  "media": {
   "glb": "/files/assets/tool_flathead_screwdriver_b01/preview/tool_flathead_screwdriver_b01.glb",
   "collision_glb": "/files/assets/tool_flathead_screwdriver_b01/preview/tool_flathead_screwdriver_b01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.115,
     0.0,
     -0.01735
    ],
    "max": [
     0.115,
     0.0347,
     0.01735
    ]
   },
   "parts": [
    {
     "node": "tool",
     "parent": null,
     "meshes": [
      "geom_207",
      "geom_208",
      "geom_209",
      "geom_210",
      "geom_211"
     ],
     "center": [
      0.0,
      0.01735,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.01735,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "tool_inlet_strainer_a01",
  "name": "Stainless mesh inlet strainer",
  "description": "A small round strainer with a polypropylene rim and a woven stainless steel mesh screen, fitted in a washing-machine water inlet to catch debris. It has no moving parts.",
  "category": "tool",
  "subcategory": "inlet_strainer",
  "variant": "a01",
  "semantic_label": "inlet strainer",
  "wikidata_qcode": "Q3363853",
  "mechanism": "rigid",
  "dimensions_m": [
   0.024,
   0.024,
   0.008
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0007,
  "mass_source": "derived: polypropylene annular rim volume*pi*(12mm^2-9mm^2)*3mm*905 kg/m3 plus measured procedural wire length*pi*(0.09mm)^2*8000 kg/m3 stainless steel.",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "65 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_tool_inlet_strainer_a01_01.usd",
    "bytes": 7019371,
    "sha256": "79de175f21ca94eeb905922dc2bb7d7a9f14d55955dc4f3a7fa212fdcb33a08f"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_inlet_strainer_a01_01.usd.png",
    "bytes": 64292,
    "sha256": "54a8e021230f33b346980af9c1e992d001d354c553f701dc8a58bac5cfbdd907"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_inlet_strainer_a01_01.usd_light.png",
    "bytes": 63581,
    "sha256": "98f5d71f5eae2f2d18439e0496dc7fc2a4ac590a73e21859ccb4863dce75b358"
   },
   {
    "path": "tool_inlet_strainer_a01.zip",
    "bytes": 880219,
    "sha256": "2beae6dad2fb5e0d95d6655ec17a9f1edc31b1101501cd2141137ec1d986545d"
   }
  ],
  "urls": {
   "usd": "/files/assets/tool_inlet_strainer_a01/simready_usd/sm_tool_inlet_strainer_a01_01.usd",
   "zip": "/files/assets/tool_inlet_strainer_a01/tool_inlet_strainer_a01.zip",
   "thumb": "/files/assets/tool_inlet_strainer_a01/simready_usd/.thumbs/256x256/sm_tool_inlet_strainer_a01_01.usd.png",
   "thumb_light": "/files/assets/tool_inlet_strainer_a01/simready_usd/.thumbs/256x256/sm_tool_inlet_strainer_a01_01.usd_light.png",
   "metadata": "/files/assets/tool_inlet_strainer_a01/metadata.json",
   "license": "/files/assets/tool_inlet_strainer_a01/LICENSE.txt",
   "glb": "/files/assets/tool_inlet_strainer_a01/preview/tool_inlet_strainer_a01.glb"
  },
  "media": {
   "glb": "/files/assets/tool_inlet_strainer_a01/preview/tool_inlet_strainer_a01.glb",
   "collision_glb": "/files/assets/tool_inlet_strainer_a01/preview/tool_inlet_strainer_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.012,
     0.0,
     -0.012
    ],
    "max": [
     0.012,
     0.008,
     0.012
    ]
   },
   "parts": [
    {
     "node": "filter",
     "parent": null,
     "meshes": [
      "geom_65",
      "geom_66"
     ],
     "center": [
      0.0,
      0.004,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.004,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "tool_long_nose_pliers_a01",
  "name": "Long-nose pliers, blue grips",
  "description": "Hand pliers with forged chrome vanadium steel jaws and a steel pivot joint. The handles have blue PVC dipped grips, and the two halves open and close on the pivot.",
  "category": "tool",
  "subcategory": "long_nose_pliers",
  "variant": "a01",
  "semantic_label": "long-nose pliers",
  "wikidata_qcode": "Q1585781",
  "mechanism": "articulated",
  "dimensions_m": [
   0.0637,
   0.2007,
   0.014
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.097,
  "mass_source": "derived: integrated forged-steel mesh volume 0.000004278 m3 x 7850 kg/m3 (chrome-vanadium steel engineering density), plus dipped PVC volume 0.000012067 m3 x 1350 kg/m3; steel geometry is a boolean-unioned forging without overlapping volume (+1 more bodies)",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "jaw_right_handle_left",
    "type": "revolute",
    "range": [
     0.0,
     0.488692
    ],
    "continuous": false,
    "units": "rad"
   }
  ],
  "collision": "95 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [6])",
   "assembly_audit": null,
   "joint_sweep": true,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_tool_long_nose_pliers_a01_01.usd",
    "bytes": 4318824,
    "sha256": "76411d5699f2854eabc475d29140f02c713b4d242a3a400f8a52e29114e6e348"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_long_nose_pliers_a01_01.usd.png",
    "bytes": 60256,
    "sha256": "fc4682f0cbf2980da1368b78ee6acad51377e49c0b8633050cf6700f25a5badc"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_long_nose_pliers_a01_01.usd_light.png",
    "bytes": 59944,
    "sha256": "3cfa47a172454bf594c00904fdc59026debf490d6d64b82be86126dd87165968"
   },
   {
    "path": "simready_usd/textures/edge_albedo.png",
    "bytes": 1752637,
    "sha256": "7bed50e1c6303fb1b136995a03f81bebe846037b80ae22eb79c089a52953fc2a"
   },
   {
    "path": "simready_usd/textures/steel_albedo.png",
    "bytes": 1744651,
    "sha256": "ae0c94c47d06cd5c2918f5399cd8a556f51542d2aa450da770bc66080d18cc0d"
   },
   {
    "path": "tool_long_nose_pliers_a01.zip",
    "bytes": 4655728,
    "sha256": "8941e8fd67abbbea931b69f52e333fcf56be5707d087cb30b301ca9f5fb40f53"
   }
  ],
  "urls": {
   "usd": "/files/assets/tool_long_nose_pliers_a01/simready_usd/sm_tool_long_nose_pliers_a01_01.usd",
   "zip": "/files/assets/tool_long_nose_pliers_a01/tool_long_nose_pliers_a01.zip",
   "thumb": "/files/assets/tool_long_nose_pliers_a01/simready_usd/.thumbs/256x256/sm_tool_long_nose_pliers_a01_01.usd.png",
   "thumb_light": "/files/assets/tool_long_nose_pliers_a01/simready_usd/.thumbs/256x256/sm_tool_long_nose_pliers_a01_01.usd_light.png",
   "metadata": "/files/assets/tool_long_nose_pliers_a01/metadata.json",
   "license": "/files/assets/tool_long_nose_pliers_a01/LICENSE.txt",
   "glb": "/files/assets/tool_long_nose_pliers_a01/preview/tool_long_nose_pliers_a01.glb"
  },
  "media": {
   "glb": "/files/assets/tool_long_nose_pliers_a01/preview/tool_long_nose_pliers_a01.glb",
   "collision_glb": "/files/assets/tool_long_nose_pliers_a01/preview/tool_long_nose_pliers_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.031,
     -0.0,
     -0.1
    ],
    "max": [
     0.031,
     0.014,
     0.1
    ]
   },
   "parts": [
    {
     "node": "jaw_left_handle_right",
     "parent": null,
     "meshes": [
      "geom_48",
      "geom_49",
      "geom_50",
      "geom_51"
     ],
     "center": [
      0.01062,
      0.007,
      -0.0
     ],
     "joint": null
    },
    {
     "node": "jaw_right_handle_left",
     "parent": "jaw_left_handle_right",
     "meshes": [
      "geom_99",
      "geom_100",
      "geom_101"
     ],
     "center": [
      -0.01062,
      0.007,
      -0.0
     ],
     "joint": {
      "name": "jaw_right_handle_left",
      "type": "revolute",
      "axis": [
       0.0,
       -1.0,
       0.0
      ],
      "origin": [
       0.0,
       0.007,
       -0.024
      ],
      "range": [
       0.0,
       0.488692
      ],
      "units": "rad",
      "axis_parent": [
       0.0,
       -1.0,
       0.0
      ],
      "origin_parent": [
       0.0,
       0.006976,
       -0.024
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.007,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "tool_phillips_screwdriver_a01",
  "name": "Small Phillips screwdriver, red handle",
  "description": "A 150 mm Phillips-head screwdriver with a chrome vanadium steel shaft. The handle is red ABS with a black elastomer grip, and there are no moving parts.",
  "category": "tool",
  "subcategory": "phillips_screwdriver",
  "variant": "a01",
  "semantic_label": "phillips screwdriver",
  "wikidata_qcode": "Q161071",
  "mechanism": "rigid",
  "dimensions_m": [
   0.15,
   0.0173,
   0.0264
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0261,
  "mass_source": "derived: reviewed library v_garage_screwdriver-869806a1a9 mass 0.125 kg times uniform geometric scale cubed 0.5928853754940712^3; unchanged material composition",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "270 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [7])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_tool_phillips_screwdriver_a01_01.usd",
    "bytes": 29942445,
    "sha256": "aba023b4b155ca969c28ee13866ed2d87b00e4460b699045f764119178ac006b"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_a01_01.usd.png",
    "bytes": 59244,
    "sha256": "5d93eb8d847fc900c4f913e3e0300bf94c8d10d2311707606bd0e797b4c4fb10"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_a01_01.usd_light.png",
    "bytes": 58785,
    "sha256": "7eea227b31341d8e63ca2b6d50693cd3feeb7856aeb1e909542056ee4f215894"
   },
   {
    "path": "simready_usd/textures/red_base.png",
    "bytes": 3838583,
    "sha256": "be35d562e0cc46393ab0121dad5675120ea9d7f06e90c7cbefe938ea7031da7a"
   },
   {
    "path": "simready_usd/textures/rubber_base.png",
    "bytes": 2914510,
    "sha256": "43dca6e1a6188d0b9fa420d91e7b31a250547500e7e018b3238afd8f450e86ec"
   },
   {
    "path": "simready_usd/textures/steel_base.png",
    "bytes": 4814611,
    "sha256": "de3f5c57069f3f0dcbe1bf948522a998f343b81e7e376b3ae1176bddbae401c7"
   },
   {
    "path": "tool_phillips_screwdriver_a01.zip",
    "bytes": 16512729,
    "sha256": "fee75d654e0ca40d26960fa652689a24aeb57a472efbdc4f5f7b54bc466762bc"
   }
  ],
  "urls": {
   "usd": "/files/assets/tool_phillips_screwdriver_a01/simready_usd/sm_tool_phillips_screwdriver_a01_01.usd",
   "zip": "/files/assets/tool_phillips_screwdriver_a01/tool_phillips_screwdriver_a01.zip",
   "thumb": "/files/assets/tool_phillips_screwdriver_a01/simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_a01_01.usd.png",
   "thumb_light": "/files/assets/tool_phillips_screwdriver_a01/simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_a01_01.usd_light.png",
   "metadata": "/files/assets/tool_phillips_screwdriver_a01/metadata.json",
   "license": "/files/assets/tool_phillips_screwdriver_a01/LICENSE.txt",
   "glb": "/files/assets/tool_phillips_screwdriver_a01/preview/tool_phillips_screwdriver_a01.glb"
  },
  "media": {
   "glb": "/files/assets/tool_phillips_screwdriver_a01/preview/tool_phillips_screwdriver_a01.glb",
   "collision_glb": "/files/assets/tool_phillips_screwdriver_a01/preview/tool_phillips_screwdriver_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.075,
     -0.0,
     -0.00857
    ],
    "max": [
     0.075,
     0.02553,
     0.00857
    ]
   },
   "parts": [
    {
     "node": "tool",
     "parent": null,
     "meshes": [
      "geom_270",
      "geom_271",
      "geom_272",
      "geom_273",
      "geom_274",
      "geom_275",
      "geom_276",
      "geom_277",
      "geom_278",
      "geom_279",
      "geom_280",
      "geom_281"
     ],
     "center": [
      0.0,
      0.01276,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.01276,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "tool_phillips_screwdriver_b01",
  "name": "Medium Phillips screwdriver, red handle",
  "description": "A 200 mm Phillips-head screwdriver with a chrome vanadium steel shaft. The handle is red ABS with a black elastomer grip, and there are no moving parts.",
  "category": "tool",
  "subcategory": "phillips_screwdriver",
  "variant": "b01",
  "semantic_label": "phillips screwdriver",
  "wikidata_qcode": "Q161071",
  "mechanism": "rigid",
  "dimensions_m": [
   0.2,
   0.023,
   0.0351
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0618,
  "mass_source": "derived: reviewed library v_garage_screwdriver-869806a1a9 mass 0.125 kg times uniform geometric scale cubed 0.7905138339920948^3; unchanged material composition",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "270 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [7])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_tool_phillips_screwdriver_b01_01.usd",
    "bytes": 29941231,
    "sha256": "1c1b59a65fe6e2f0e62f28562af109e5fd23eb5d9718e611bb2ddffdc33a5af4"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_b01_01.usd.png",
    "bytes": 59364,
    "sha256": "2492be16c98c334834f99f5d36b893e17ba4807b19d2ce3b0fc6f7d3c5efeff0"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_b01_01.usd_light.png",
    "bytes": 58759,
    "sha256": "117a05e0266d6bae922ad30002006a6657f87e1ce698f178c7a0163c240e5c54"
   },
   {
    "path": "simready_usd/textures/red_base.png",
    "bytes": 3838583,
    "sha256": "be35d562e0cc46393ab0121dad5675120ea9d7f06e90c7cbefe938ea7031da7a"
   },
   {
    "path": "simready_usd/textures/rubber_base.png",
    "bytes": 2914510,
    "sha256": "43dca6e1a6188d0b9fa420d91e7b31a250547500e7e018b3238afd8f450e86ec"
   },
   {
    "path": "simready_usd/textures/steel_base.png",
    "bytes": 4814611,
    "sha256": "de3f5c57069f3f0dcbe1bf948522a998f343b81e7e376b3ae1176bddbae401c7"
   },
   {
    "path": "tool_phillips_screwdriver_b01.zip",
    "bytes": 16653028,
    "sha256": "c4a50626cdc3830ce9110112e7646df947e61583ca7bf3dffdeded1939984276"
   }
  ],
  "urls": {
   "usd": "/files/assets/tool_phillips_screwdriver_b01/simready_usd/sm_tool_phillips_screwdriver_b01_01.usd",
   "zip": "/files/assets/tool_phillips_screwdriver_b01/tool_phillips_screwdriver_b01.zip",
   "thumb": "/files/assets/tool_phillips_screwdriver_b01/simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_b01_01.usd.png",
   "thumb_light": "/files/assets/tool_phillips_screwdriver_b01/simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_b01_01.usd_light.png",
   "metadata": "/files/assets/tool_phillips_screwdriver_b01/metadata.json",
   "license": "/files/assets/tool_phillips_screwdriver_b01/LICENSE.txt",
   "glb": "/files/assets/tool_phillips_screwdriver_b01/preview/tool_phillips_screwdriver_b01.glb"
  },
  "media": {
   "glb": "/files/assets/tool_phillips_screwdriver_b01/preview/tool_phillips_screwdriver_b01.glb",
   "collision_glb": "/files/assets/tool_phillips_screwdriver_b01/preview/tool_phillips_screwdriver_b01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.1,
     -0.0,
     -0.01142
    ],
    "max": [
     0.1,
     0.03404,
     0.01143
    ]
   },
   "parts": [
    {
     "node": "tool",
     "parent": null,
     "meshes": [
      "geom_270",
      "geom_271",
      "geom_272",
      "geom_273",
      "geom_274",
      "geom_275",
      "geom_276",
      "geom_277",
      "geom_278",
      "geom_279",
      "geom_280",
      "geom_281"
     ],
     "center": [
      -0.0,
      0.01702,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     -0.0,
     0.01702,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "tool_phillips_screwdriver_c01",
  "name": "Long Phillips screwdriver, red handle",
  "description": "A 270 mm Phillips-head screwdriver with a chrome vanadium steel shaft and no pegboard hook. The handle is red ABS with a black elastomer grip, and there are no moving parts.",
  "category": "tool",
  "subcategory": "phillips_screwdriver",
  "variant": "c01",
  "semantic_label": "phillips screwdriver",
  "wikidata_qcode": "Q161071",
  "mechanism": "rigid",
  "dimensions_m": [
   0.253,
   0.0291,
   0.0444
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.125,
  "mass_source": "derived: reviewed library v_garage_screwdriver-869806a1a9 mass 0.125 kg times uniform geometric scale cubed 1^3; unchanged material composition",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "270 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 7]; earlier package judge scores [7])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_tool_phillips_screwdriver_c01_01.usd",
    "bytes": 29941812,
    "sha256": "4d9b9f3b5fea59211c97eb078730a66dfd933144a4c6d1018af4dad86febe3c5"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_c01_01.usd.png",
    "bytes": 59111,
    "sha256": "26774386d97c80803dd041324838528dedf2f701859f955e6ded2c4176c37504"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_c01_01.usd_light.png",
    "bytes": 58561,
    "sha256": "2de58a725e0228b30b537369d0ef5eb5fcf69f08e82b7133bd9dbddbcee1e33a"
   },
   {
    "path": "simready_usd/textures/red_base.png",
    "bytes": 3838583,
    "sha256": "be35d562e0cc46393ab0121dad5675120ea9d7f06e90c7cbefe938ea7031da7a"
   },
   {
    "path": "simready_usd/textures/rubber_base.png",
    "bytes": 2914510,
    "sha256": "43dca6e1a6188d0b9fa420d91e7b31a250547500e7e018b3238afd8f450e86ec"
   },
   {
    "path": "simready_usd/textures/steel_base.png",
    "bytes": 4814611,
    "sha256": "de3f5c57069f3f0dcbe1bf948522a998f343b81e7e376b3ae1176bddbae401c7"
   },
   {
    "path": "tool_phillips_screwdriver_c01.zip",
    "bytes": 16675195,
    "sha256": "afe59280aa80134176d8e15c5e455a96a128a554decd3b202010204918c4367a"
   }
  ],
  "urls": {
   "usd": "/files/assets/tool_phillips_screwdriver_c01/simready_usd/sm_tool_phillips_screwdriver_c01_01.usd",
   "zip": "/files/assets/tool_phillips_screwdriver_c01/tool_phillips_screwdriver_c01.zip",
   "thumb": "/files/assets/tool_phillips_screwdriver_c01/simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_c01_01.usd.png",
   "thumb_light": "/files/assets/tool_phillips_screwdriver_c01/simready_usd/.thumbs/256x256/sm_tool_phillips_screwdriver_c01_01.usd_light.png",
   "metadata": "/files/assets/tool_phillips_screwdriver_c01/metadata.json",
   "license": "/files/assets/tool_phillips_screwdriver_c01/LICENSE.txt",
   "glb": "/files/assets/tool_phillips_screwdriver_c01/preview/tool_phillips_screwdriver_c01.glb"
  },
  "media": {
   "glb": "/files/assets/tool_phillips_screwdriver_c01/preview/tool_phillips_screwdriver_c01.glb",
   "collision_glb": "/files/assets/tool_phillips_screwdriver_c01/preview/tool_phillips_screwdriver_c01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.1265,
     -0.0,
     -0.01445
    ],
    "max": [
     0.1265,
     0.04305,
     0.01445
    ]
   },
   "parts": [
    {
     "node": "tool",
     "parent": null,
     "meshes": [
      "geom_270",
      "geom_271",
      "geom_272",
      "geom_273",
      "geom_274",
      "geom_275",
      "geom_276",
      "geom_277",
      "geom_278",
      "geom_279",
      "geom_280",
      "geom_281"
     ],
     "center": [
      0.0,
      0.02153,
      -0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.02153,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "tool_sealing_washer_a01",
  "name": "Flat black rubber hose washer",
  "description": "A small flat ring washer made of black EPDM rubber that seals the threaded connection of a washing-machine inlet hose. It is modelled as a single rigid piece.",
  "category": "tool",
  "subcategory": "sealing_washer",
  "variant": "a01",
  "semantic_label": "rubber washer",
  "wikidata_qcode": "Q7375844",
  "mechanism": "rigid",
  "dimensions_m": [
   0.025,
   0.025,
   0.003
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.001,
  "mass_source": "derived: annular cylinder pi*(12.5mm^2-8mm^2)*3mm times declared filled EPDM density 1150 kg/m3; small edge rounding <1%.",
  "materials": [
   "unspecified"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "32 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": true,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [7, 6]; earlier package judge scores [7])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": 0.0,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "none: flat PBR colours (UsdPreviewSurface)",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_tool_sealing_washer_a01_01.usd",
    "bytes": 137127,
    "sha256": "f37e5fbd9f3329b189609c19ab168af948064540e453728b53363b800a7a1c8b"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_sealing_washer_a01_01.usd.png",
    "bytes": 58534,
    "sha256": "873ed8736eb4dc99d2379f6b5f348c1708c1faa5f02cb65c14365f6258ac7215"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_tool_sealing_washer_a01_01.usd_light.png",
    "bytes": 58455,
    "sha256": "4dc9a85e99b38fa1b9b5203d620f4f9e00ab7c97510be1d705d77bb98e232f51"
   },
   {
    "path": "tool_sealing_washer_a01.zip",
    "bytes": 138303,
    "sha256": "2698abfe5aee052791a107638619e75fa0b619275b60840ef2cb371e113a31db"
   }
  ],
  "urls": {
   "usd": "/files/assets/tool_sealing_washer_a01/simready_usd/sm_tool_sealing_washer_a01_01.usd",
   "zip": "/files/assets/tool_sealing_washer_a01/tool_sealing_washer_a01.zip",
   "thumb": "/files/assets/tool_sealing_washer_a01/simready_usd/.thumbs/256x256/sm_tool_sealing_washer_a01_01.usd.png",
   "thumb_light": "/files/assets/tool_sealing_washer_a01/simready_usd/.thumbs/256x256/sm_tool_sealing_washer_a01_01.usd_light.png",
   "metadata": "/files/assets/tool_sealing_washer_a01/metadata.json",
   "license": "/files/assets/tool_sealing_washer_a01/LICENSE.txt",
   "glb": "/files/assets/tool_sealing_washer_a01/preview/tool_sealing_washer_a01.glb"
  },
  "media": {
   "glb": "/files/assets/tool_sealing_washer_a01/preview/tool_sealing_washer_a01.glb",
   "collision_glb": "/files/assets/tool_sealing_washer_a01/preview/tool_sealing_washer_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0125,
     -0.0,
     -0.0125
    ],
    "max": [
     0.0125,
     0.003,
     0.0125
    ]
   },
   "parts": [
    {
     "node": "seal",
     "parent": null,
     "meshes": [
      "geom_32"
     ],
     "center": [
      0.0,
      0.0015,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.0015,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "toy_building_block_a01",
  "name": "Natural beech building cube",
  "description": "A single 50.8 mm cube of unpainted beech with rounded edges and a matte clear finish. It is a toddler building block sized for a robot gripper.",
  "category": "toy",
  "subcategory": "building_block",
  "variant": "a01",
  "semantic_label": "building block",
  "wikidata_qcode": "Q4444145",
  "mechanism": "rigid",
  "dimensions_m": [
   0.0508,
   0.0508,
   0.0508
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.0949,
  "mass_source": "derived: European beech 730 kg/m3 at 12 percent moisture (Gabarro wood encyclopedia, Beech, gabarro.com/en/encyclopedia/beech; Engineering ToolBox beech 700 to 900) x 0.000129949 m3 closed bevelled cube mesh volume = 0.09486 kg",
  "materials": [
   "wood"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": false,
  "joints": [],
  "collision": "15 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6])",
   "assembly_audit": null,
   "joint_sweep": null,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_toy_building_block_a01_01.usd",
    "bytes": 236148,
    "sha256": "fbc1e94c7e87b185c8f1445803712dd076211d012f50387f4584a649ca217578"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_toy_building_block_a01_01.usd.png",
    "bytes": 84118,
    "sha256": "faf299f8cabdfed4123fe58c57f59665154519229af61f6c580c54b3dd720b67"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_toy_building_block_a01_01.usd_light.png",
    "bytes": 78091,
    "sha256": "6a41aa006b6e8712d1886ca17d75d0302016d766724d5692f48ac290c05974cc"
   },
   {
    "path": "simready_usd/textures/beech_crisp_albedo.png",
    "bytes": 2758812,
    "sha256": "30ff0f420511767f545cab348ce1aba1f9494d054a6311a65f3f79d2f9a0c5d1"
   },
   {
    "path": "toy_building_block_a01.zip",
    "bytes": 2962772,
    "sha256": "fe94687240c15ccc70a725be764cd864e56904c0ea64b35e5b096aeb065d2c50"
   }
  ],
  "urls": {
   "usd": "/files/assets/toy_building_block_a01/simready_usd/sm_toy_building_block_a01_01.usd",
   "zip": "/files/assets/toy_building_block_a01/toy_building_block_a01.zip",
   "thumb": "/files/assets/toy_building_block_a01/simready_usd/.thumbs/256x256/sm_toy_building_block_a01_01.usd.png",
   "thumb_light": "/files/assets/toy_building_block_a01/simready_usd/.thumbs/256x256/sm_toy_building_block_a01_01.usd_light.png",
   "metadata": "/files/assets/toy_building_block_a01/metadata.json",
   "license": "/files/assets/toy_building_block_a01/LICENSE.txt",
   "glb": "/files/assets/toy_building_block_a01/preview/toy_building_block_a01.glb"
  },
  "media": {
   "glb": "/files/assets/toy_building_block_a01/preview/toy_building_block_a01.glb",
   "collision_glb": "/files/assets/toy_building_block_a01/preview/toy_building_block_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.0254,
     0.0,
     -0.0254
    ],
    "max": [
     0.0254,
     0.0508,
     0.0254
    ]
   },
   "parts": [
    {
     "node": "cube",
     "parent": null,
     "meshes": [
      "geom_15"
     ],
     "center": [
      0.0,
      0.0254,
      0.0
     ],
     "joint": null
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.0254,
     0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 },
 {
  "id": "toy_toy_locomotive_a01",
  "name": "Painted wooden toy steam engine",
  "description": "A chunky painted wooden toy steam locomotive for toddlers, with no tender. It has four wheels that turn and carries no brand marks.",
  "category": "toy",
  "subcategory": "toy_locomotive",
  "variant": "a01",
  "semantic_label": "toy steam locomotive",
  "wikidata_qcode": "Q1639512",
  "mechanism": "articulated",
  "dimensions_m": [
   0.19,
   0.04,
   0.1084
  ],
  "up_axis": "Z",
  "meters_per_unit": 1.0,
  "mass_kg": 0.4023,
  "mass_source": "derived: watertight mesh volumes, beech 730 kg/m3 (ASSUMED species; Gabarro wood encyclopedia, 12 percent moisture) x 515.5 cm3 + steel 7900 kg/m3 x 1.02 cm3 = 0.3844 kg (+4 more bodies)",
  "materials": [
   "wood"
  ],
  "friction": {
   "static": 0.6,
   "dynamic": 0.6,
   "source": "declared in the package MJCF collision geoms (MuJoCo sliding coefficient, written to the USD physics material; most common value)"
  },
  "articulated": true,
  "joints": [
   {
    "name": "wheel_front_left",
    "type": "revolute",
    "range": null,
    "continuous": true,
    "units": "rad"
   },
   {
    "name": "wheel_front_right",
    "type": "revolute",
    "range": null,
    "continuous": true,
    "units": "rad"
   },
   {
    "name": "wheel_rear_left",
    "type": "revolute",
    "range": null,
    "continuous": true,
    "units": "rad"
   },
   {
    "name": "wheel_rear_right",
    "type": "revolute",
    "range": null,
    "continuous": true,
    "units": "rad"
   }
  ],
  "collision": "21 collision shapes (convex hulls and primitives from the package colliders)",
  "simready": {
   "profile": "Robotics-Prop",
   "profile_version": "4.0.0",
   "validator": "simready-validate 2026.8.0",
   "passed": true,
   "validated_at": "2026-11-08T02:58:21+00:00"
  },
  "outworld_checks": {
   "physics_drop_settle": null,
   "mass_sanity": true,
   "judge": "two blind judges >= 6, no severe defect (scores [6, 6])",
   "assembly_audit": null,
   "joint_sweep": true,
   "rest_interpenetration_mm": null,
   "no_text_or_logo": true
  },
  "license": "CC-BY-4.0",
  "attribution": "Outworld Labs (outworldlabs.com)",
  "provenance": {
   "geometry": "procedural / agent-authored (Blender Python, owasset primitives)",
   "textures": "image textures made in the build job by Outworld tools (procedural Blender/owasset bakes and Outworld-owned gpt-image output); no third-party texture library found in the build",
   "third_party_generative_mesh": false,
   "evidence": "No Hunyuan or other image-to-3D mesh found: job input has no generated mesh, no ow-generate/ow-mesh call succeeded, no generate_start event, no baked-from-generated textures."
  },
  "contributor": "Outworld Labs",
  "created": "2026-11-08",
  "version": "1.0.0",
  "files": [
   {
    "path": "simready_usd/sm_toy_toy_locomotive_a01_01.usd",
    "bytes": 1053420,
    "sha256": "c855e8ed140f966bf45c40c985e96c6d6514114e1a59f540f8b8e8d2d465ef48"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_toy_toy_locomotive_a01_01.usd.png",
    "bytes": 68230,
    "sha256": "b6ed1c04f372350804bf3a39411cfb6d9e03652198fec322a8d6f4129c733ca7"
   },
   {
    "path": "simready_usd/.thumbs/256x256/sm_toy_toy_locomotive_a01_01.usd_light.png",
    "bytes": 70015,
    "sha256": "260408eb65c9165845a28a241dc1d2dc62fa196df162ba83672725d3fd32ebb7"
   },
   {
    "path": "simready_usd/textures/beech.png",
    "bytes": 124428,
    "sha256": "4299702933702bc1afe5c5e03c51b11be0b19d696e7fbe4291976787cf038408"
   },
   {
    "path": "simready_usd/textures/paint_black.png",
    "bytes": 27084,
    "sha256": "c00dc95ab2f2d4b882c97efe52142b5fda29503010638abe107d3f533f420dea"
   },
   {
    "path": "simready_usd/textures/paint_blue.png",
    "bytes": 40282,
    "sha256": "7ec4b09685839b2e5b13e176b0632e5d8bffa5e007ff465434acc99979a20628"
   },
   {
    "path": "simready_usd/textures/paint_red.png",
    "bytes": 45519,
    "sha256": "2d4bccd3085d83907a0a2c414ce7482a75a2073001b00fd0638d5cf2801b3de7"
   },
   {
    "path": "toy_toy_locomotive_a01.zip",
    "bytes": 654730,
    "sha256": "2d390b38629d613902fad3c0e3a1b3b6a21caec2a9d71c07b2ce30787975b55a"
   }
  ],
  "urls": {
   "usd": "/files/assets/toy_toy_locomotive_a01/simready_usd/sm_toy_toy_locomotive_a01_01.usd",
   "zip": "/files/assets/toy_toy_locomotive_a01/toy_toy_locomotive_a01.zip",
   "thumb": "/files/assets/toy_toy_locomotive_a01/simready_usd/.thumbs/256x256/sm_toy_toy_locomotive_a01_01.usd.png",
   "thumb_light": "/files/assets/toy_toy_locomotive_a01/simready_usd/.thumbs/256x256/sm_toy_toy_locomotive_a01_01.usd_light.png",
   "metadata": "/files/assets/toy_toy_locomotive_a01/metadata.json",
   "license": "/files/assets/toy_toy_locomotive_a01/LICENSE.txt",
   "glb": "/files/assets/toy_toy_locomotive_a01/preview/toy_toy_locomotive_a01.glb"
  },
  "media": {
   "glb": "/files/assets/toy_toy_locomotive_a01/preview/toy_toy_locomotive_a01.glb",
   "collision_glb": "/files/assets/toy_toy_locomotive_a01/preview/toy_toy_locomotive_a01_collision.glb",
   "poster": null,
   "physics_video": null,
   "turntable": null,
   "explode_video": null,
   "frame": {
    "up": "Y",
    "units": "m",
    "note": "glTF Y up; USD is Z up: (x, y, z)_usd = (x, -z, y)_glb. Joint origin/axis are given in the GLB world frame at rest (origin, axis) and in the parent node frame (origin_parent, axis_parent)."
   },
   "bbox_m": {
    "min": [
     -0.095,
     -0.0,
     -0.02
    ],
    "max": [
     0.095,
     0.105,
     0.02
    ]
   },
   "parts": [
    {
     "node": "engine",
     "parent": null,
     "meshes": [
      "geom_17",
      "geom_18",
      "geom_19",
      "geom_20",
      "geom_21",
      "geom_22",
      "geom_23",
      "geom_24",
      "geom_25",
      "geom_26",
      "geom_27",
      "geom_28",
      "geom_29"
     ],
     "center": [
      0.0,
      0.0555,
      -0.0
     ],
     "joint": null
    },
    {
     "node": "wheel_front_left",
     "parent": "engine",
     "meshes": [
      "geom_31"
     ],
     "center": [
      -0.055,
      0.017,
      0.0155
     ],
     "joint": {
      "name": "wheel_front_left",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       -0.055,
       0.017,
       0.0155
      ],
      "range": null,
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       -0.055,
       0.017,
       0.0155
      ]
     }
    },
    {
     "node": "wheel_front_right",
     "parent": "engine",
     "meshes": [
      "geom_33"
     ],
     "center": [
      -0.055,
      0.017,
      -0.0155
     ],
     "joint": {
      "name": "wheel_front_right",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       -0.055,
       0.017,
       -0.0155
      ],
      "range": null,
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       -0.055,
       0.017,
       -0.0155
      ]
     }
    },
    {
     "node": "wheel_rear_left",
     "parent": "engine",
     "meshes": [
      "geom_35"
     ],
     "center": [
      0.055,
      0.017,
      0.0155
     ],
     "joint": {
      "name": "wheel_rear_left",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       0.055,
       0.017,
       0.0155
      ],
      "range": null,
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       0.055,
       0.017,
       0.0155
      ]
     }
    },
    {
     "node": "wheel_rear_right",
     "parent": "engine",
     "meshes": [
      "geom_37"
     ],
     "center": [
      0.055,
      0.017,
      -0.0155
     ],
     "joint": {
      "name": "wheel_rear_right",
      "type": "revolute",
      "axis": [
       0.0,
       0.0,
       -1.0
      ],
      "origin": [
       0.055,
       0.017,
       -0.0155
      ],
      "range": null,
      "units": "rad",
      "axis_parent": [
       0.0,
       0.0,
       -1.0
      ],
      "origin_parent": [
       0.055,
       0.017,
       -0.0155
      ]
     }
    }
   ],
   "explode": {
    "center": [
     0.0,
     0.0525,
     -0.0
    ]
   },
   "physics": null,
   "generator": "outworld-open-assets make_media 1.0"
  }
 }
]